--- name: Bump version and sync Changelog to Docker Repo on: push: paths: - 'CHANGELOG.md' permissions: contents: write jobs: bump_and_sync: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Extract version from commit message id: ver run: | MSG="${{ github.event.head_commit.message }}" if [[ "$MSG" =~ release\((v[0-9]+\.[0-9]+\.[0-9]+)\) ]]; then echo "version=${BASH_REMATCH[1]}" >> $GITHUB_OUTPUT echo "Found version: ${BASH_REMATCH[1]}" else echo "version=" >> $GITHUB_OUTPUT echo "No release(vX.Y.Z) tag in commit message; skipping bump." fi - name: Update public/js/version.js if: steps.ver.outputs.version != '' run: | cat > public/js/version.js <<'EOF' // generated by CI window.APP_VERSION = '${{ steps.ver.outputs.version }}'; EOF - name: Commit version.js (if changed) if: steps.ver.outputs.version != '' run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" git add public/js/version.js if git diff --cached --quiet; then echo "No changes to commit" else git commit -m "chore: set APP_VERSION to ${{ steps.ver.outputs.version }}" git push fi - name: Checkout filerise-docker if: steps.ver.outputs.version != '' uses: actions/checkout@v4 with: repository: error311/filerise-docker token: ${{ secrets.PAT_TOKEN }} path: docker-repo - name: Copy CHANGELOG.md and write VERSION if: steps.ver.outputs.version != '' run: | cp CHANGELOG.md docker-repo/CHANGELOG.md echo "${{ steps.ver.outputs.version }}" > docker-repo/VERSION - name: Commit & push to docker repo if: steps.ver.outputs.version != '' working-directory: docker-repo run: | git config user.name "github-actions[bot]" git config user.email "github-actions[bot]@users.noreply.github.com" git add CHANGELOG.md VERSION if git diff --cached --quiet; then echo "No changes to commit" else git commit -m "chore: sync CHANGELOG.md and VERSION (${{ steps.ver.outputs.version }}) from FileRise" git push origin main fi