Skip to content

Commit

Permalink
Merge pull request #10547 from hmislk/Issue#10539-rmh_ci_cd_pipeline
Browse files Browse the repository at this point in the history
Issue#10539 rmh ci cd pipeline
  • Loading branch information
DARKDRAGON-LK authored Feb 14, 2025
2 parents 358dbdb + 30d5f25 commit 1f8e3c2
Showing 1 changed file with 11 additions and 17 deletions.
28 changes: 11 additions & 17 deletions .github/workflows/rmh_prod_ci_cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,6 @@ jobs:
steps:
- name: Checkout Code
uses: actions/checkout@v3
with:
ref: 'rmh-prod'

- name: Download Build Artifact
uses: actions/download-artifact@v4
Expand All @@ -67,10 +65,10 @@ jobs:

- name: Deploy to Payara
env:
SERVER_IP: ${{ secrets.RMH_PROD_SERVER_IP }}
SERVER_USER: ${{ secrets.RMH_PROD_SERVER_USER }}
SSH_PRIVATE_KEY: ${{ secrets.RMH_PROD_SSH_PRIVATE_KEY }}
PAYARA_ADMIN_PASS: ${{ secrets.RMH_PROD_PAYARA_ADMIN_PASS }}
SERVER_IP: ${{ secrets.COOP_PROD_SERVER_IP }}
SERVER_USER: ${{ secrets.COOP_PROD_SERVER_USER }}
SSH_PRIVATE_KEY: ${{ secrets.COOP_PROD_SSH_PRIVATE_KEY }}
PAYARA_ADMIN_PASS: ${{ secrets.COOP_PROD_PAYARA_ADMIN_PASS }}
run: |
# Add SSH private key to the SSH agent
echo "$SSH_PRIVATE_KEY" > private_key.pem
Expand All @@ -84,9 +82,8 @@ jobs:
# Ensure deployment directory exists
ssh -i private_key.pem -o StrictHostKeyChecking=no $SERVER_USER@$SERVER_IP "
sudo mkdir -p $WAR_DIR
sudo chown -R appuser:appuser /home/appuser/app/latest
sudo su - appuser
mkdir -p $WAR_DIR
chown -R appuser:appuser $WAR_DIR
cd $WAR_DIR
# Remove old backup if it exists
Expand All @@ -101,27 +98,24 @@ jobs:
"
# Copy new WAR file to the server
rsync -aL --progress -e "ssh -i private_key.pem" ./*.war $SERVER_USER@$SERVER_IP:/tmp/$WAR_NAME
rsync -aL --progress -e "ssh -i private_key.pem" ./*.war $SERVER_USER@$SERVER_IP:$WAR_DIR/$WAR_NAME
# Move the file to /home/appuser/app/latest/ and set permissions
# Set the WAR file permission
ssh -i private_key.pem -o StrictHostKeyChecking=no $SERVER_USER@$SERVER_IP "
sudo mv /tmp/$WAR_NAME $WAR_DIR/
sudo chown appuser:appuser $WAR_DIR/$WAR_NAME
chown appuser:appuser $WAR_DIR/$WAR_NAME
"
# Deploy the WAR using asadmin
ssh -i private_key.pem -o StrictHostKeyChecking=no $SERVER_USER@$SERVER_IP "
sudo su - appuser
echo 'AS_ADMIN_PASSWORD=${{ secrets.RMH_PROD_PAYARA_ADMIN_PASS }}' > /tmp/payara-admin-pass.txt
echo 'AS_ADMIN_PASSWORD=$PAYARA_ADMIN_PASS' > /tmp/payara-admin-pass.txt
/opt/payara5/bin/asadmin --user admin --passwordfile /tmp/payara-admin-pass.txt undeploy $APP_NAME || true
/opt/payara5/bin/asadmin --user admin --passwordfile /tmp/payara-admin-pass.txt deploy --force=true --contextroot $APP_NAME $WAR_DIR/$WAR_NAME
rm /tmp/payara-admin-pass.txt
"
# Validate if the application is running
ssh -i private_key.pem -o StrictHostKeyChecking=no $SERVER_USER@$SERVER_IP "
sudo su - appuser
echo 'AS_ADMIN_PASSWORD=${{ secrets.RMH_PROD_PAYARA_ADMIN_PASS }}' > /tmp/payara-admin-pass.txt
echo 'AS_ADMIN_PASSWORD=$PAYARA_ADMIN_PASS' > /tmp/payara-admin-pass.txt
if /opt/payara5/bin/asadmin --user admin --passwordfile /tmp/payara-admin-pass.txt list-applications | grep -q '$APP_NAME'; then
echo 'Application is running.'
else
Expand Down

0 comments on commit 1f8e3c2

Please sign in to comment.