This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Push Docker Images to Docker Hub | |
| on: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| push_to_docker_hub: | |
| name: Build & Push All Services | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v3 | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKER_HUB_USER_NAME }} | |
| password: ${{ secrets.DOCKER_HUB_PASSWORD }} | |
| - name: Set variables | |
| run: | | |
| echo "IMAGE_TAG=${GITHUB_SHA}" >> $GITHUB_ENV | |
| echo "DOCKER_USER=${{ secrets.DOCKER_HUB_USER_NAME }}" >> $GITHUB_ENV | |
| # Build & Push API Gateway | |
| - name: Build & Push API Gateway | |
| run: | | |
| docker build ./backend/api-gateway \ | |
| -t $DOCKER_USER/devops-certificate-generator-apigateway:$IMAGE_TAG | |
| docker push $DOCKER_USER/devops-certificate-generator-apigateway:$IMAGE_TAG | |
| # Build & Push PDF Generator | |
| - name: Build & Push PDF Generator | |
| run: | | |
| docker build ./backend/pdf-generator \ | |
| -t $DOCKER_USER/devops-certificate-generator-pdf-generator:$IMAGE_TAG | |
| docker push $DOCKER_USER/devops-certificate-generator-pdf-generator:$IMAGE_TAG | |
| # Build & Push Frontend | |
| - name: Build & Push Frontend | |
| run: | | |
| docker build ./frontend \ | |
| -t $DOCKER_USER/devops-certificate-generator-frontend:$IMAGE_TAG | |
| docker push $DOCKER_USER/devops-certificate-generator-frontend:$IMAGE_TAG | |
| - name: Logout from Docker Hub | |
| run: docker logout | |
| - name: End | |
| run: echo "All Docker images pushed to Docker Hub successfully" |