File tree 1 file changed +25
-4
lines changed
1 file changed +25
-4
lines changed Original file line number Diff line number Diff line change @@ -48,11 +48,11 @@ jobs:
48
48
- name : Build the app
49
49
run : npm run build
50
50
51
- # Audit Job (Security checks, audits only on main/release branches )
52
- audit :
53
- name : Audit Dependencies
51
+ # Audit and Docker Push Job (Runs only when a merge happens to the main branch )
52
+ audit_and_push :
53
+ name : Audit and Push Docker Image
54
54
runs-on : ubuntu-latest
55
- if : github.event.pull_request.merged == true && ( github.ref == 'refs/heads/main' || startsWith (github.ref , 'refs/heads/release') )
55
+ if : github.event_name == 'push' && github.ref == 'refs/heads/main' && contains (github.event.head_commit.message , 'Merge pull request' )
56
56
steps :
57
57
- name : Checkout code
58
58
uses : actions/checkout@v3
67
67
68
68
- name : Run npm audit
69
69
run : npm audit --audit-level=high
70
+
71
+ # Build Docker Image
72
+ - name : Build Docker image
73
+ run : |
74
+ docker build -t devops-nextjs:${{ github.sha }} .
75
+
76
+ # Log in to Docker Hub
77
+ - name : Log in to Docker Hub
78
+ run : echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
79
+
80
+ # Tag Docker image
81
+ - name : Tag Docker image
82
+ run : |
83
+ docker tag devops-nextjs:${{ github.sha }} ${{ secrets.DOCKER_USERNAME }}/devops-nextjs:${{ github.sha }}
84
+ docker tag devops-nextjs:${{ github.sha }} ${{ secrets.DOCKER_USERNAME }}/devops-nextjs:latest
85
+
86
+ # Push Docker image to Docker Hub
87
+ - name : Push Docker image
88
+ run : |
89
+ docker push ${{ secrets.DOCKER_USERNAME }}/devops-nextjs:${{ github.sha }}
90
+ docker push ${{ secrets.DOCKER_USERNAME }}/devops-nextjs:latest
You can’t perform that action at this time.
0 commit comments