fix: resolve CredentialMasker regex group reference bugs #155
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: CD-CI | |
| on: | |
| push: | |
| branches: [ main ] | |
| jobs: | |
| build: | |
| if: github.event_name == 'push' && github.ref == 'refs/heads/main' && github.event.pusher.email != 'version-bump@flossware.org' | |
| runs-on: ubuntu-latest | |
| env: | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true | |
| steps: | |
| - name: Updating runner | |
| run: sudo apt-get update | |
| - name: Setup JDK 21 | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '21' | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Preparing settings.xml | |
| uses: s4u/maven-settings-action@v3.1.0 | |
| with: | |
| githubServer: false | |
| servers: | | |
| [ | |
| { | |
| "id": "packagecloud-flossware", | |
| "configuration": { | |
| "httpHeaders": { | |
| "property": { | |
| "name": "Authorization", | |
| "value": "Bearer ${{ secrets.PACKAGECLOUD_TOKEN }}" | |
| } | |
| } | |
| } | |
| } | |
| ] | |
| - name: Setup .gitconfig for version bumps | |
| uses: oleksiyrudenko/gha-git-credentials@latest | |
| with: | |
| global: true | |
| name: 'Version Bump' | |
| email: 'version-bump@flossware.org' | |
| actor: 'VersionBump' | |
| token: '${{ secrets.GITHUB_TOKEN }}' | |
| - name: Incrementing pom.xml version | |
| run: "mvn -U build-helper:parse-version versions:set -DnewVersion=\\${parsedVersion.majorVersion}.\\${parsedVersion.nextMinorVersion} versions:commit" | |
| - name: Ensure latest dependencies in pom.xml | |
| run: "mvn -Dincludes='org.junit.jupiter:*' -DgenerateBackupPoms=false versions:update-properties" | |
| - name: Building and Testing | |
| run: "mvn -U clean install" | |
| - name: Verify build success | |
| run: | | |
| if [ ! -d jplatform-api/target ] || [ ! -d jplatform-core/target ]; then | |
| echo "Build failed - artifacts not found" | |
| exit 1 | |
| fi | |
| echo "Build succeeded - deploying to packagecloud.io" | |
| - name: Deploy to packagecloud.io | |
| run: "mvn -DskipTests deploy" | |
| - name: Generate Changelog | |
| id: changelog | |
| uses: TriPSs/conventional-changelog-action@v5.0.2 | |
| with: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| input-file: 'CHANGELOG.md' | |
| output-file: 'CHANGELOG.md' | |
| release-count: 0 | |
| skip-commit: true | |
| skip-on-empty: true | |
| git-branch: main | |
| tag-prefix: 'v' | |
| create-summary: true | |
| - name: Validate Changelog Format | |
| run: | | |
| if [ ! -f CHANGELOG.md ]; then | |
| echo "Error: CHANGELOG.md file not found" | |
| exit 1 | |
| fi | |
| echo "✓ Changelog file exists" | |
| head -20 CHANGELOG.md | |
| - name: Commit Changelog Updates | |
| run: | | |
| git add CHANGELOG.md | |
| if ! git diff --cached --quiet; then | |
| echo "Changelog changes detected, committing..." | |
| git commit -m "docs: auto-generate changelog from conventional commits [skip ci]" | |
| git push origin main || { | |
| echo "Warning: Failed to push changelog. May retry on next run." | |
| exit 0 | |
| } | |
| else | |
| echo "No changelog changes detected" | |
| fi | |
| - name: Checkin and tag to github | |
| run: "mvn scm:checkin scm:tag" |