name: Build and release on: workflow_dispatch: inputs: releaseVersion: description: "Default version to use when preparing a release." required: true default: "X.Y.Z" developmentVersion: description: "Default version to use for new local working copy." required: true default: "X.Y.Z-SNAPSHOT" jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Configure Git User run: | git config user.email "actions@github.com" git config user.name "GitHub Actions" - name: Set up JDK 11 uses: actions/setup-java@v1 with: java-version: 11 - name: Cache maven repository uses: actions/cache@v2 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven- - name: Release to GitHub Packages run: mvn -B clean release:prepare release:perform -s maven-github-settings.xml --file pom.xml -DreleaseVersion=${{ github.event.inputs.releaseVersion }} -DdevelopmentVersion=${{ github.event.inputs.developmentVersion }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Release to GitHub Releases uses: softprops/action-gh-release@v1 if: startsWith(github.ref, 'refs/tags/') with: files: target/keycloak-restrict-client-auth.jar body_path: RELEASELOG fail_on_unmatched_files: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}