diff --git a/.github/workflows/deploy_siappakai.yml b/.github/workflows/deploy_siappakai.yml new file mode 100644 index 0000000..dd9127e --- /dev/null +++ b/.github/workflows/deploy_siappakai.yml @@ -0,0 +1,36 @@ +name: Deploy SiapPakai Update OpenSID API with Ansible + +on: + release: + types: [published] + +permissions: + contents: read + +concurrency: + group: deploy-opensid-api-rilis + cancel-in-progress: true + +jobs: + deploy: + # rilis dari branch 'master' & bukan prerelease + if: github.event.release.target_commitish == 'master' && github.event.release.prerelease == false + name: Deploy SiapPakai Update OpenSID API ke Server SiapPakai + runs-on: ubuntu-latest + + steps: + - name: Checkout Ansible Code + uses: actions/checkout@v3 + + - name: Deploy via SSH using appleboy/ssh-action + uses: appleboy/ssh-action@v1.2.0 + with: + host: ${{ secrets.CICD_SERVER_IP }} + username: ${{ secrets.CICD_SERVER_USER }} + key: ${{ secrets.CICD_SERVER_PRIVATE_KEY }} + port: ${{ secrets.CICD_SERVER_PORT }} + script: | + set -euo pipefail + cd ${{ secrets.CICD_SERVER_PATH }} + nohup ansible-playbook -i inventories/production/inventory.yml playbooks/siappakai-update-opensid-api.yml --vault-password-file ~/.vault_pass.txt > /tmp/ansible-opensid.log 2>&1 & + echo "Ansible playbook started in background. Check /tmp/ansible-opensid.log for output."