You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
1.6KB

  1. ---
  2. - import_tasks: local_facts.yaml
  3. - name: debian package requirements for buildbot
  4. apt:
  5. pkg:
  6. - python3-pip
  7. - fish
  8. - git
  9. - python-psycopg2 # for ansible
  10. - postgresql
  11. - python3-psycopg2
  12. - name: install buildbot
  13. pip:
  14. name: buildbot[bundle]
  15. executable: pip3
  16. - name: install gitea integration for buildbot
  17. pip:
  18. name: buildbot_gitea
  19. executable: pip3
  20. - name: buildbot system group
  21. group:
  22. name: buildbot
  23. system: yes
  24. - name: buildbot system user
  25. user:
  26. name: buildbot
  27. group: buildbot
  28. system: yes
  29. home: /var/lib/buildbot
  30. shell: /usr/bin/fish
  31. - name: buildbot var directory
  32. file:
  33. path: /var/lib/buildbot
  34. state: directory
  35. owner: buildbot
  36. group: buildbot
  37. mode: 0700
  38. # source of unit file from https://github.com/buildbot/buildbot-contrib/blob/master/master/contrib/systemd/buildbot%40.service
  39. - name: buildbot systemd service unit
  40. copy:
  41. src: systemd/buildbot@.service
  42. dest: /etc/systemd/system/buildbot@.service
  43. notify: systemd daemon reload
  44. - import_tasks: database.yaml
  45. - name: initiate buildbot master configurations
  46. command: buildbot create-master --db {{buildbot_database_url}} --relocatable master
  47. become: true
  48. become_user: buildbot
  49. args:
  50. chdir: /var/lib/buildbot
  51. creates: /var/lib/buildbot/master
  52. - name: buildbot master config file
  53. template:
  54. src: buildbot/master.cfg.j2
  55. dest: /var/lib/buildbot/master/master.cfg
  56. notify: reload buildbot service
  57. - meta: flush_handlers
  58. - name: ensure buildbot service is running
  59. systemd:
  60. state: started
  61. name: buildbot@master.service