parent
4c1bda0cfe
commit
12e7a8bf53
48
.github/workflows/ci.yml
vendored
48
.github/workflows/ci.yml
vendored
|
@ -173,3 +173,51 @@ jobs:
|
|||
- run: composer install --prefer-dist --no-interaction --no-suggest
|
||||
|
||||
- run: bin/phpstan analyze
|
||||
|
||||
deploy:
|
||||
name: Deploy via Ansible
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- install
|
||||
- phpcs
|
||||
- phpstan
|
||||
- phpunit
|
||||
- theme
|
||||
if: github.event_name == 'push'
|
||||
env:
|
||||
ANSIBLE_FORCE_COLOR: 1
|
||||
ANSIBLE_HOST_KEY_CHECKING: no
|
||||
steps:
|
||||
- name: Checkout the code
|
||||
uses: actions/checkout@a81bbbf8298c0fa03ea29cdc473d45769f953675
|
||||
|
||||
- name: Add the deployment SSH key
|
||||
uses: shimataro/ssh-key-action@6f350ca8484d8d55c2e361e74d17e638dabe713a # 2.1.0
|
||||
with:
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
name: id_rsa
|
||||
known_hosts: ${{ secrets.SSH_KNOWN_HOSTS }}
|
||||
|
||||
- name: Cache dependencies
|
||||
uses: actions/cache@d9747005de0f7240e5d35a68dca96b3f41b8b340
|
||||
with:
|
||||
path: tools/deployment/.roles
|
||||
key: dependencies-composer-${{ hashFiles('tools/deployment/requirements.yml') }}
|
||||
|
||||
- name: Download Ansible roles
|
||||
run: ansible-galaxy install -r tools/deployment/requirements.yml
|
||||
|
||||
- name: Export the Ansible Vault password
|
||||
run: echo $ANSIBLE_VAULT_PASS > tools/deployment/.vault-pass.txt
|
||||
env:
|
||||
ANSIBLE_VAULT_PASS: ${{ secrets.ANSIBLE_VAULT_PASS }}
|
||||
|
||||
- name: Deploy the code
|
||||
run: >
|
||||
ansible-playbook tools/deployment/deploy.yml
|
||||
-i tools/deployment/hosts.yml
|
||||
-e "ansistrano_deploy_branch=$GITHUB_SHA"
|
||||
--vault-password-file=tools/deployment/.vault-pass.txt
|
||||
|
||||
- name: Remove the Ansible Vault password file
|
||||
run: rm tools/deployment/.vault-pass.txt
|
||||
|
|
Loading…
Reference in a new issue