Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

108 lignes
2.3KB

  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. - ssl-cert
  13. - name: set correct permissions for /etc/ssl/private
  14. file:
  15. path: /etc/ssl/private
  16. mode: 0750
  17. owner: root
  18. group: ssl-cert
  19. - name: install buildbot
  20. pip:
  21. name: buildbot[bundle]
  22. executable: pip3
  23. - name: install gitea integration for buildbot
  24. pip:
  25. name: buildbot_gitea
  26. executable: pip3
  27. - name: install service_identity
  28. pip:
  29. name: service_identity
  30. executable: pip3
  31. - name: buildbot system group
  32. group:
  33. name: buildbot
  34. system: yes
  35. - name: buildbot system user
  36. user:
  37. name: buildbot
  38. group: buildbot
  39. system: yes
  40. home: /var/lib/buildbot
  41. shell: /usr/bin/fish
  42. generate_ssh_key: true
  43. ssh_key_type: ed25519
  44. - name: buildbot var directory
  45. file:
  46. path: /var/lib/buildbot
  47. state: directory
  48. owner: buildbot
  49. group: buildbot
  50. mode: 0700
  51. # source of unit file from https://github.com/buildbot/buildbot-contrib/blob/master/master/contrib/systemd/buildbot%40.service
  52. - name: buildbot systemd service unit
  53. copy:
  54. src: systemd/buildbot@.service
  55. dest: /etc/systemd/system/buildbot@.service
  56. notify: systemd daemon reload
  57. - import_tasks: database.yaml
  58. - name: initiate buildbot master configurations
  59. command: buildbot create-master --db {{buildbot_database_url}} --relocatable master
  60. become: true
  61. become_user: buildbot
  62. args:
  63. chdir: /var/lib/buildbot
  64. creates: /var/lib/buildbot/master
  65. - name: buildbot master config file
  66. template:
  67. src: buildbot/master.cfg.j2
  68. dest: /var/lib/buildbot/master/master.cfg
  69. notify: restart buildbot service
  70. - meta: flush_handlers
  71. - name: ensure buildbot service is running
  72. systemd:
  73. state: started
  74. name: buildbot@master.service
  75. - include_role:
  76. name: certificate
  77. vars:
  78. certificate_name: buildbot
  79. certificate_directory: /etc/ssl
  80. certificate_key_usage:
  81. - digitalSignature
  82. - keyEncipherment
  83. certificate_extended_key_usage:
  84. - serverAuth
  85. certificate_common_name: "{{ buildbot_server_name }}"
  86. - include_role:
  87. name: nginx
  88. vars:
  89. nginx_vhosts: "{{ buildbot_nginx_vhosts }}"