laravel.yml 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. # https://laravel.com/docs/10.x/deployment
  2. - name: clone source code
  3. ansible.builtin.git:
  4. repo: "https://github.com/iapt-platform/mint.git"
  5. dest: "{{ app_deploy_root }}/htdocs"
  6. version: "laravel"
  7. - name: install nodejs packages for v2
  8. ansible.builtin.shell:
  9. cmd: yarnpkg install
  10. chdir: "{{ app_deploy_root }}/htdocs"
  11. - name: install nodejs packages for v1
  12. ansible.builtin.shell:
  13. cmd: yarnpkg install
  14. chdir: "{{ app_deploy_root }}/htdocs/public"
  15. - name: upload .env(v2)
  16. become: true
  17. template:
  18. src: v2/env.j2
  19. dest: "{{ app_deploy_root }}/htdocs/.env"
  20. owner: www-data
  21. group: www-data
  22. mode: "0400"
  23. - name: upload config.php(v1)
  24. become: true
  25. template:
  26. src: v1/config.php.j2
  27. dest: "{{ app_deploy_root }}/htdocs/public/app/config.php"
  28. owner: www-data
  29. group: www-data
  30. mode: "0400"
  31. - name: upload config.js(v1)
  32. become: true
  33. template:
  34. src: v1/config.js.j2
  35. dest: "{{ app_deploy_root }}/htdocs/public/app/config.js"
  36. owner: www-data
  37. group: www-data
  38. mode: "0444"
  39. - name: setup bootstrap folder
  40. become: true
  41. ansible.builtin.file:
  42. path: "{{ app_deploy_root }}/htdocs/bootstrap/cache"
  43. state: directory
  44. owner: www-data
  45. group: www-data
  46. recurse: yes
  47. - name: setup storage folder
  48. become: true
  49. ansible.builtin.file:
  50. path: "{{ app_deploy_root }}/htdocs/storage"
  51. state: directory
  52. owner: www-data
  53. group: www-data
  54. recurse: yes
  55. - name: auto-loader optimization for v2
  56. ansible.builtin.shell:
  57. cmd: composer install --optimize-autoloader --no-dev
  58. chdir: "{{ app_deploy_root }}/htdocs"
  59. - name: auto-loader optimization for v1
  60. ansible.builtin.shell:
  61. cmd: composer install --optimize-autoloader --no-dev
  62. chdir: "{{ app_deploy_root }}/htdocs/public"
  63. - name: caching configuration
  64. become: true
  65. ansible.builtin.shell:
  66. cmd: su www-data -pc "php artisan config:cache"
  67. chdir: "{{ app_deploy_root }}/htdocs"
  68. - name: caching events
  69. become: true
  70. ansible.builtin.shell:
  71. cmd: su www-data -pc "php artisan event:cache"
  72. chdir: "{{ app_deploy_root }}/htdocs"
  73. - name: caching routes
  74. become: true
  75. ansible.builtin.shell:
  76. cmd: su www-data -pc "php artisan route:cache"
  77. chdir: "{{ app_deploy_root }}/htdocs"
  78. - name: caching views
  79. become: true
  80. ansible.builtin.shell:
  81. cmd: su www-data -pc "php artisan view:cache"
  82. chdir: "{{ app_deploy_root }}/htdocs"
  83. - name: create tmp folder for v1
  84. become: true
  85. ansible.builtin.file:
  86. path: "{{ app_deploy_root }}/htdocs/public/tmp"
  87. state: directory
  88. owner: "www-data"
  89. group: "www-data"
  90. - name: setup sqlite3 db for v1
  91. become: true
  92. ansible.builtin.file:
  93. src: /var/www/shared/appdata
  94. dest: "{{ app_deploy_root }}/htdocs/public/tmp/appdata"
  95. state: link