| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- # https://laravel.com/docs/10.x/deployment
- - name: clone source code
- ansible.builtin.git:
- repo: "https://github.com/iapt-platform/mint.git"
- dest: "{{ app_deploy_root }}/htdocs"
- version: "laravel"
- - name: install nodejs packages for v2
- ansible.builtin.shell:
- cmd: yarnpkg install
- chdir: "{{ app_deploy_root }}/htdocs"
- - name: install nodejs packages for v1
- ansible.builtin.shell:
- cmd: yarnpkg install
- chdir: "{{ app_deploy_root }}/htdocs/public"
- - name: upload .env(v2)
- become: true
- template:
- src: v2/env.j2
- dest: "{{ app_deploy_root }}/htdocs/.env"
- owner: www-data
- group: www-data
- mode: "0444"
- - name: upload config.php(v1)
- become: true
- template:
- src: v1/config.php.j2
- dest: "{{ app_deploy_root }}/htdocs/public/app/config.php"
- owner: www-data
- group: www-data
- mode: "0444"
- - name: upload config.js(v1)
- become: true
- template:
- src: v1/config.js.j2
- dest: "{{ app_deploy_root }}/htdocs/public/app/config.js"
- owner: www-data
- group: www-data
- mode: "0444"
- - name: setup bootstrap folder
- become: true
- ansible.builtin.file:
- path: "{{ app_deploy_root }}/htdocs/bootstrap/cache"
- state: directory
- owner: www-data
- group: www-data
- recurse: yes
- - name: setup storage folder for v2
- become: true
- ansible.builtin.file:
- path: "{{ app_deploy_root }}/htdocs/storage"
- state: directory
- owner: www-data
- group: www-data
- recurse: yes
- - name: auto-loader optimization for v2
- ansible.builtin.shell:
- cmd: composer install --optimize-autoloader --no-dev
- chdir: "{{ app_deploy_root }}/htdocs"
- - name: auto-loader optimization for v1
- ansible.builtin.shell:
- cmd: composer install --optimize-autoloader --no-dev
- chdir: "{{ app_deploy_root }}/htdocs/public"
- - name: caching configuration
- become: true
- ansible.builtin.shell:
- cmd: su www-data -pc "php artisan config:cache"
- chdir: "{{ app_deploy_root }}/htdocs"
- - name: caching events
- become: true
- ansible.builtin.shell:
- cmd: su www-data -pc "php artisan event:cache"
- chdir: "{{ app_deploy_root }}/htdocs"
- - name: caching routes
- become: true
- ansible.builtin.shell:
- cmd: su www-data -pc "php artisan route:cache"
- chdir: "{{ app_deploy_root }}/htdocs"
- - name: caching views
- become: true
- ansible.builtin.shell:
- cmd: su www-data -pc "php artisan view:cache"
- chdir: "{{ app_deploy_root }}/htdocs"
- # https://laravel.com/docs/10.x/scheduling#running-the-scheduler
- - name: upload scheduler service
- become: true
- template:
- src: v2/scheduler.service.j2
- dest: /usr/lib/systemd/system/mint-{{ app_deploy_env }}-scheduler.service
- owner: root
- group: root
- mode: "0644"
- - name: upload scheduler timer
- become: true
- template:
- src: v2/scheduler.timer.j2
- dest: /usr/lib/systemd/system/mint-{{ app_deploy_env }}-scheduler.timer
- owner: root
- group: root
- mode: "0644"
- # FIXME may be have async bugs
- - name: run db:migrate
- become: true
- ansible.builtin.shell:
- cmd: su www-data -pc "php artisan migrate"
- chdir: "{{ app_deploy_root }}/htdocs"
- - name: setup sqlite3 db for v1
- become: true
- ansible.builtin.file:
- src: /var/www/shared/appdata
- dest: "{{ app_deploy_root }}/htdocs/storage/app/data"
- state: link
|