Update README.md with detailed GitOps deployment documentation
#25
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: Helm CI - Build and Push | |
| # on: | |
| # push: | |
| # branches: | |
| # - main | |
| # jobs: | |
| # build-and-push: | |
| # name: Build and Push Docker Image | |
| # runs-on: ubuntu-latest | |
| # outputs: | |
| # image-tag: ${{ steps.set-tag.outputs.tag }} | |
| # env: | |
| # IMAGE_NAME: ${{ secrets.DOCKERHUB_USERNAME }}/springboot-postgres | |
| # steps: | |
| # - name: Checkout code | |
| # uses: actions/checkout@v4 | |
| # - name: Set up JDK 17 | |
| # uses: actions/setup-java@v4 | |
| # with: | |
| # distribution: 'temurin' | |
| # java-version: '17' | |
| # - name: Build Spring Boot App | |
| # working-directory: ./app | |
| # run: ./mvnw clean package -DskipTests | |
| # - name: Set up Docker Buildx | |
| # uses: docker/setup-buildx-action@v3 | |
| # - name: Log in to DockerHub | |
| # uses: docker/login-action@v3 | |
| # with: | |
| # username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| # password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| # - name: Set Image Tag | |
| # id: set-tag | |
| # run: | | |
| # COMMIT_SHA=$(echo "${{ github.sha }}" | cut -c1-7) | |
| # TAG="main-${COMMIT_SHA}" | |
| # echo "tag=$TAG" >> $GITHUB_OUTPUT | |
| # - name: Build and Push Docker Image | |
| # run: | | |
| # docker build -t $IMAGE_NAME:${{ steps.set-tag.outputs.tag }} ./app | |
| # docker push $IMAGE_NAME:${{ steps.set-tag.outputs.tag }} | |
| # update-values: | |
| # name: Update Helm values.yaml | |
| # needs: build-and-push | |
| # runs-on: ubuntu-latest | |
| # env: | |
| # IMAGE_NAME: ${{ secrets.DOCKERHUB_USERNAME }}/springboot-postgres | |
| # IMAGE_TAG: ${{ needs.build-and-push.outputs.image-tag }} | |
| # FILE: helm/springboot-postgres-prod/values.yaml | |
| # steps: | |
| # - name: Checkout code | |
| # uses: actions/checkout@v4 | |
| # - name: Configure Git | |
| # run: | | |
| # git config --global user.name "${{ secrets.GIT_USER_NAME }}" | |
| # git config --global user.email "${{ secrets.GIT_USER_EMAIL }}" | |
| # - name: Update values.yaml | |
| # run: | | |
| # echo "Updating $FILE with image: $IMAGE_NAME:$IMAGE_TAG" | |
| # sed -i.bak -E "s|image:.*|image: ${IMAGE_NAME}:${IMAGE_TAG}|" "$FILE" | |
| # git add "$FILE" | |
| # git commit -m "Update image tag to $IMAGE_TAG in Helm values.yaml" | |
| # git pull origin auto/helm-update --rebase || true | |
| # git push origin HEAD:auto/helm-update-prod --force-with-lease |