From 7a454527180c0a711688ac45c9e51575cea97b61 Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Thu, 7 Aug 2025 09:37:14 +0700 Subject: [PATCH 1/9] feat: [deploy pantau ansible] --- .github/workflows/deploy.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 .github/workflows/deploy.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..43044e12 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,26 @@ +name: Deploy Pantau with Ansible + +on: + pull_request: + branches: + - rilis-dev + +jobs: + deploy: + name: Deploy Pantau to Production Server + 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.0.0 + with: + host: ${{ secrets.CICD_SERVER_IP }} + username: ${{ secrets.CICD_SERVER_USER }} + key: ${{ secrets.CICD_SERVER_PRIVATE_KEY }} + port: ${{ secrets.CICD_SERVER_IP_PORT }} + script: | + cd /opt/ansible + ansible-playbook -v -i inventories/production/inventory.yml playbooks/deploy-pantau.yml From 7b46edaaf441a505ab9d239ae7ba2f5b504fe5a2 Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Thu, 7 Aug 2025 09:40:08 +0700 Subject: [PATCH 2/9] ubah variable port --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 43044e12..84e9fccf 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -20,7 +20,7 @@ jobs: host: ${{ secrets.CICD_SERVER_IP }} username: ${{ secrets.CICD_SERVER_USER }} key: ${{ secrets.CICD_SERVER_PRIVATE_KEY }} - port: ${{ secrets.CICD_SERVER_IP_PORT }} + port: ${{ secrets.CICD_SERVER_PORT }} script: | cd /opt/ansible ansible-playbook -v -i inventories/production/inventory.yml playbooks/deploy-pantau.yml From 31ef4a2076749eff170c3726aefe879b17449277 Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Thu, 7 Aug 2025 11:30:53 +0700 Subject: [PATCH 3/9] fix: [deploy pantau] event publish rilis --- .github/workflows/deploy.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 84e9fccf..30a841db 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,9 +1,8 @@ name: Deploy Pantau with Ansible on: - pull_request: - branches: - - rilis-dev + release: + types: [published] jobs: deploy: From 41a00115bac34bfc4c2af250af1d9390bf65d948 Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Fri, 8 Aug 2025 16:21:27 +0700 Subject: [PATCH 4/9] modify: [deploy pantau] --- .github/workflows/{deploy.yml => deploy_dev.yml} | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) rename .github/workflows/{deploy.yml => deploy_dev.yml} (61%) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy_dev.yml similarity index 61% rename from .github/workflows/deploy.yml rename to .github/workflows/deploy_dev.yml index 30a841db..8604dc57 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy_dev.yml @@ -1,12 +1,13 @@ -name: Deploy Pantau with Ansible +name: Deploy Pantau Rilis Dev with Ansible on: - release: - types: [published] + pull_request: + branches: + - dev jobs: deploy: - name: Deploy Pantau to Production Server + name: Deploy Pantau Rilis Dev to Production Server runs-on: ubuntu-latest steps: @@ -21,5 +22,5 @@ jobs: key: ${{ secrets.CICD_SERVER_PRIVATE_KEY }} port: ${{ secrets.CICD_SERVER_PORT }} script: | - cd /opt/ansible - ansible-playbook -v -i inventories/production/inventory.yml playbooks/deploy-pantau.yml + cd ${{ secrets.CICD_SERVER_PATH }} + ansible-playbook -i inventories/production/inventory.yml playbooks/deploy-pantau-dev.yml From 457c90e079c2d8d741378b928db374bb23dcda8e Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Fri, 8 Aug 2025 16:22:17 +0700 Subject: [PATCH 5/9] perubahan --- .github/workflows/deploy_dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy_dev.yml b/.github/workflows/deploy_dev.yml index 8604dc57..f6b3ce40 100644 --- a/.github/workflows/deploy_dev.yml +++ b/.github/workflows/deploy_dev.yml @@ -3,7 +3,7 @@ name: Deploy Pantau Rilis Dev with Ansible on: pull_request: branches: - - dev + - rilis-dev jobs: deploy: From 862e8b371e4f2666aa1a908ae043e89c70106515 Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Fri, 8 Aug 2025 16:26:05 +0700 Subject: [PATCH 6/9] fix: [deploy pantau dev] ubah ke push rilis-dev --- .github/workflows/deploy_dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy_dev.yml b/.github/workflows/deploy_dev.yml index f6b3ce40..c9b66aa9 100644 --- a/.github/workflows/deploy_dev.yml +++ b/.github/workflows/deploy_dev.yml @@ -1,7 +1,7 @@ name: Deploy Pantau Rilis Dev with Ansible on: - pull_request: + push: branches: - rilis-dev From f359af9e2e9fcab3726a8ba9399aae7d1f9d75ca Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Fri, 8 Aug 2025 16:28:14 +0700 Subject: [PATCH 7/9] add: [deploy pantau rilis] --- .github/workflows/deploy_rilis.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 .github/workflows/deploy_rilis.yml diff --git a/.github/workflows/deploy_rilis.yml b/.github/workflows/deploy_rilis.yml new file mode 100644 index 00000000..f31af3f6 --- /dev/null +++ b/.github/workflows/deploy_rilis.yml @@ -0,0 +1,26 @@ +name: Deploy Pantau Rilis with Ansible + +on: + pull_request: + branches: + - rilis-dev + +jobs: + deploy: + name: Deploy Pantau Rilis to Production Server + 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.0.0 + with: + host: ${{ secrets.CICD_SERVER_IP }} + username: ${{ secrets.CICD_SERVER_USER }} + key: ${{ secrets.CICD_SERVER_PRIVATE_KEY }} + port: ${{ secrets.CICD_SERVER_PORT }} + script: | + cd ${{ secrets.CICD_SERVER_PATH }} + ansible-playbook -i inventories/production/inventory.yml playbooks/deploy-pantau-rilis.yml From ba6d23903b837c6f8fa66f3955ab07ac8fd9728e Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Fri, 8 Aug 2025 16:31:33 +0700 Subject: [PATCH 8/9] fix: [deploy pantau rilis] ubah ke event publish rilis --- .github/workflows/deploy_rilis.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy_rilis.yml b/.github/workflows/deploy_rilis.yml index f31af3f6..e41ee0f1 100644 --- a/.github/workflows/deploy_rilis.yml +++ b/.github/workflows/deploy_rilis.yml @@ -1,9 +1,8 @@ name: Deploy Pantau Rilis with Ansible on: - pull_request: - branches: - - rilis-dev + release: + types: [published] jobs: deploy: From 15317f3406a36141c5da862982f82970bb3be8f3 Mon Sep 17 00:00:00 2001 From: Ujang Sopiyan Date: Mon, 11 Aug 2025 14:12:14 +0700 Subject: [PATCH 9/9] fix: [deploy pantau] - Memperbaiki urutan task ansible di deploy-pantau - Menambahkan var release_tag di deploy pantau - Menghapus task git fetch/reset yang duplikat --- .github/workflows/deploy_dev.yml | 19 ++++++++++++++----- .github/workflows/deploy_rilis.yml | 16 +++++++++++++--- 2 files changed, 27 insertions(+), 8 deletions(-) diff --git a/.github/workflows/deploy_dev.yml b/.github/workflows/deploy_dev.yml index c9b66aa9..0e957626 100644 --- a/.github/workflows/deploy_dev.yml +++ b/.github/workflows/deploy_dev.yml @@ -1,26 +1,35 @@ name: Deploy Pantau Rilis Dev with Ansible on: - push: - branches: - - rilis-dev + pull_request: + branches: [rilis-dev] + types: [closed] + +permissions: + contents: read + +concurrency: + group: deploy-pantau-dev + cancel-in-progress: true jobs: deploy: + if: github.event.pull_request.merged == true name: Deploy Pantau Rilis Dev to Production Server runs-on: ubuntu-latest steps: - name: Checkout Ansible Code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Deploy via SSH using appleboy/ssh-action - uses: appleboy/ssh-action@v1.0.0 + 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 }} ansible-playbook -i inventories/production/inventory.yml playbooks/deploy-pantau-dev.yml diff --git a/.github/workflows/deploy_rilis.yml b/.github/workflows/deploy_rilis.yml index e41ee0f1..22dcaeb1 100644 --- a/.github/workflows/deploy_rilis.yml +++ b/.github/workflows/deploy_rilis.yml @@ -4,22 +4,32 @@ on: release: types: [published] +permissions: + contents: read + +concurrency: + group: deploy-pantau-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 Pantau Rilis to Production Server runs-on: ubuntu-latest steps: - name: Checkout Ansible Code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Deploy via SSH using appleboy/ssh-action - uses: appleboy/ssh-action@v1.0.0 + 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 }} - ansible-playbook -i inventories/production/inventory.yml playbooks/deploy-pantau-rilis.yml + ansible-playbook -i inventories/production/inventory.yml playbooks/deploy-pantau-rilis.yml --extra-vars "release_tag=${{ github.event.release.tag_name }}"