systemd.yml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. - name: Create /srv/bin folder
  2. become: true
  3. ansible.builtin.file:
  4. path: /srv/bin
  5. state: directory
  6. owner: "{{ ansible_user }}"
  7. mode: "0755"
  8. - name: Create scripts folder
  9. ansible.builtin.file:
  10. path: "{{ app_deploy_target }}/scripts"
  11. state: directory
  12. mode: "0755"
  13. - name: Upload run.sh
  14. ansible.builtin.copy:
  15. src: run.sh
  16. dest: "{{ app_deploy_target }}/scripts/"
  17. mode: "0555"
  18. - name: Upload clean.py
  19. ansible.builtin.copy:
  20. src: clean.py
  21. dest: "{{ app_deploy_target | dirname }}/"
  22. mode: "0444"
  23. - name: Upload clean.service
  24. become: true
  25. ansible.builtin.template:
  26. src: clean.service.j2
  27. dest: "/etc/systemd/system/{{ app_domain }}-clean.service"
  28. mode: "0444"
  29. - name: Upload clean.timer
  30. become: true
  31. ansible.builtin.template:
  32. src: clean.timer.j2
  33. dest: "/etc/systemd/system/{{ app_domain }}-clean.timer"
  34. mode: "0444"
  35. - name: Upload php-fpm.sh
  36. ansible.builtin.copy:
  37. src: php-fpm.sh
  38. dest: "/srv/bin/"
  39. mode: "0555"
  40. - name: Upload php-fpm-v8.1.service
  41. become: true
  42. ansible.builtin.template:
  43. src: php-fpm-8.1.service.j2
  44. dest: "/etc/systemd/system/php-fpm-8.1.service"
  45. mode: "0444"
  46. - name: Upload php-fpm-8.4.service
  47. become: true
  48. ansible.builtin.template:
  49. src: php-fpm-8.4.service.j2
  50. dest: "/etc/systemd/system/php-fpm-8.4.service"
  51. mode: "0444"
  52. - name: Upload open-ai-server.sh
  53. ansible.builtin.template:
  54. src: open-ai-server.sh.j2
  55. dest: "{{ app_deploy_target }}/scripts/open-ai-server.sh"
  56. mode: "0555"
  57. - name: Upload open-ai-server.service
  58. become: true
  59. ansible.builtin.template:
  60. src: open-ai-server.service.j2
  61. dest: "/etc/systemd/system/{{ app_domain }}-open-ai-server.service"
  62. mode: "0444"
  63. - name: Upload ai-translate.sh
  64. ansible.builtin.template:
  65. src: ai-translate.sh.j2
  66. dest: "{{ app_deploy_target }}/scripts/ai-translate.sh"
  67. mode: "0555"
  68. - name: Upload ai-translate.service
  69. become: true
  70. ansible.builtin.template:
  71. src: ai-translate.service.j2
  72. dest: "/etc/systemd/system/{{ app_domain }}-ai-translate.service"
  73. mode: "0444"
  74. - name: Upload laravel-job.sh
  75. ansible.builtin.template:
  76. src: laravel-job.sh.j2
  77. dest: "{{ app_deploy_target }}/scripts/laravel-job.sh"
  78. mode: "0555"
  79. - name: Upload laravel-worker.service
  80. become: true
  81. ansible.builtin.template:
  82. src: laravel-job.service.j2
  83. dest: "/etc/systemd/system/{{ app_domain }}-laravel-job-{{ item.name }}.service"
  84. mode: "0444"
  85. with_items:
  86. - { name: "mq-discussion", image: "{{ app_php81_image }}" }
  87. - { name: "mq-pr", image: "{{ app_php81_image }}" }
  88. - { name: "mq-progress", image: "{{ app_php81_image }}" }
  89. - { name: "mq-wbw.analyses", image: "{{ app_php81_image }}" }
  90. - name: Upload laravel sceduler
  91. ansible.builtin.include_tasks: laravel-scheduler.yml
  92. with_items:
  93. - { image: "{{ app_php81_image }}", version: "v8" }
  94. - { image: "{{ app_php84_image }}", version: "v12" }
  95. - name: Reload systemd profiles
  96. become: true
  97. ansible.builtin.command: systemctl daemon-reload
  98. - name: Enable clean timer
  99. become: true
  100. ansible.builtin.systemd_service:
  101. name: "{{ app_domain }}-clean.timer"
  102. state: started
  103. enabled: true