Skip to content

Commit 60ec6f2

Browse files
authored
Create ci-cd.yml for dummy
1 parent a66ba29 commit 60ec6f2

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

ci-cd.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
name: CI/CD Pipeline
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
7+
jobs:
8+
build-and-deploy:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
- name: Checkout code
13+
uses: actions/checkout@v3
14+
15+
- name: Log in to Docker Hub
16+
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
17+
18+
- name: Build Docker image
19+
run: docker build -t ${{ secrets.DOCKER_USERNAME }}/devops-webapp .
20+
21+
- name: Push Docker image
22+
run: docker push ${{ secrets.DOCKER_USERNAME }}/devops-webapp
23+
24+
- name: SSH into Azure VM and deploy
25+
uses: appleboy/ssh-action@master
26+
with:
27+
host: ${{ secrets.VM_HOST }}
28+
username: ${{ secrets.VM_USER }}
29+
key: ${{ secrets.VM_KEY }}
30+
script: |
31+
docker pull ${{ secrets.DOCKER_USERNAME }}/devops-webapp
32+
docker stop webapp || true && docker rm webapp || true
33+
docker run -d -p 80:5000 --name webapp ${{ secrets.DOCKER_USERNAME }}/devops-webapp

0 commit comments

Comments
 (0)