Fix typo in Docker Hub token secret #3
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: Spring Cloud Build | |
| on: | |
| # Equivalent to GitHub Push Trigger | |
| push: | |
| branches: | |
| - main | |
| # Equivalent to Timer Trigger (H H * * * = once daily) | |
| schedule: | |
| - cron: '0 0 * * *' # Runs at midnight UTC daily | |
| # Manual trigger to replicate the BRANCH parameter | |
| workflow_dispatch: | |
| inputs: | |
| branch: | |
| description: 'Which branch should be built' | |
| required: true | |
| default: 'main' | |
| type: string | |
| env: | |
| BRANCH: ${{ github.event.inputs.branch || github.ref_name }} | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 # Adjust based on your needs | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v5 | |
| with: | |
| ref: ${{ env.BRANCH }} | |
| clean: true # Equivalent to WipeWorkspace extension | |
| - name: Set up JDK 17 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '17' | |
| distribution: 'temurin' # OpenJDK distribution | |
| cache: 'maven' | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| - name: Stop running Docker containers | |
| continue-on-error: true | |
| run: | | |
| #!/bin/bash | |
| if command -v timeout &> /dev/null; then | |
| timeout 10s docker ps -a -q | xargs -n 1 -P 8 -I {} docker stop {} || echo "Failed to stop docker... Hopefully you know what you're doing" | |
| fi | |
| - name: Create Maven settings.xml | |
| run: | | |
| mkdir -p $HOME/.m2 | |
| cat > $HOME/.m2/settings.xml << 'EOF' | |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <settings> | |
| <servers> | |
| <server> | |
| <id>artifactory</id> | |
| <username>${env.ARTIFACTORY_USERNAME}</username> | |
| <password>${env.ARTIFACTORY_PASSWORD}</password> | |
| </server> | |
| </servers> | |
| </settings> | |
| EOF | |
| env: | |
| ARTIFACTORY_USERNAME: ${{ secrets.ARTIFACTORY_USERNAME }} | |
| ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }} | |
| - name: Verify Maven installation | |
| run: ./mvnw --version | |
| - name: Build and deploy | |
| env: | |
| ARTIFACTORY_USERNAME: ${{ secrets.ARTIFACTORY_USERNAME }} | |
| ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }} | |
| run: ./mvnw clean deploy -Pdocs,deploy,spring -B -U | |