Skip to content

Add github actions ci cd pipeline #32

Add github actions ci cd pipeline

Add github actions ci cd pipeline #32

Workflow file for this run

name: Smart-Exchange-Deployment
on:
push:
branches: [main, master]
permissions:
id-token: write
contents: read
jobs:
Deploy:
name: Deploy Changes to EC2
runs-on: ubuntu-latest
strategy:
matrix:
node-version: ["20.x"]
steps:
- uses: actions/checkout@v4
name: Checkout code
# - name: Use Node.js
# uses: actions/setup-node@v4
# with:
# node-version: "20.x"
# - name: Install Dependencies
# run: |
- name: SSH and Deploy
env:
PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
HOSTNAME: ${{ secrets.EC2_REMOTE_HOST }}
USER_NAME: ubuntu
run: |
echo "$PRIVATE_KEY" > private_key
chmod 600 private_key
ssh -o StrictHostKeyChecking=no -i private_key ${USER_NAME}@${HOSTNAME} << 'EOF'
# Now we have got the access of EC2 and we will start the deploy.
cd /home/ubuntu/app/smartchange-backend-v1
sudo systemctl stop smart
npm install
sudo systemctl restart smart
EOF
rm private_key