diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9f161d82b..88437b49a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -28,7 +28,7 @@ jobs: java: [ { 'version': '17', 'opts': '' }, { 'version': '21', 'opts': '' }, - { 'version': '22', 'opts': '' } + { 'version': '23', 'opts': '' } ] name: build with jdk ${{matrix.java.version}} diff --git a/.github/workflows/pre-release.yml b/.github/workflows/pre-release.yml index 343d47e84..4cf371893 100644 --- a/.github/workflows/pre-release.yml +++ b/.github/workflows/pre-release.yml @@ -1,31 +1,18 @@ -name: SmallRye Pre Release +name: SmallRye Prepare Release on: pull_request: + types: [ closed ] paths: - '.github/project.yml' -jobs: - release: - runs-on: ubuntu-latest - name: pre release - - steps: - - uses: radcortez/project-metadata-action@main - name: retrieve project metadata - id: metadata - with: - github-token: ${{secrets.GITHUB_TOKEN}} - metadata-file-path: '.github/project.yml' +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true - - name: Validate version - if: contains(steps.metadata.outputs.current-version, 'SNAPSHOT') - run: | - echo '::error::Cannot release a SNAPSHOT version.' - exit 1 - - - uses: radcortez/milestone-review-action@main - name: milestone review - with: - github-token: ${{secrets.GITHUB_TOKEN}} - milestone-title: ${{steps.metadata.outputs.current-version}} +jobs: + prepare-release: + name: Prepare Release + if: ${{ github.event.pull_request.merged == true}} + uses: smallrye/.github/.github/workflows/prepare-release.yml@main + secrets: inherit \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3efb3252a..7f6c6af15 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,61 +1,29 @@ name: SmallRye Release - +run-name: Perform ${{github.event.inputs.tag || github.ref_name}} Release on: - pull_request: - types: [closed] - paths: - - '.github/project.yml' - -jobs: - release: - runs-on: ubuntu-latest - name: release - if: ${{github.event.pull_request.merged == true}} - env: - GITHUB_TOKEN: ${{secrets.RELEASE_TOKEN}} + push: + tags: + - '*' + workflow_dispatch: + inputs: + tag: + description: 'Tag to release' + required: true - steps: - - uses: radcortez/project-metadata-action@main - name: retrieve project metadata - id: metadata - with: - github-token: ${{secrets.GITHUB_TOKEN}} - metadata-file-path: '.github/project.yml' +permissions: + attestations: write + id-token: write + # Needed for the publish-* workflows + contents: write - - uses: actions/checkout@v4 - with: - token: ${{secrets.RELEASE_TOKEN}} +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true - - uses: actions/setup-java@v4 - with: - java-version: 11 - distribution: temurin - cache: maven - server-id: 'oss.sonatype' - server-username: 'MAVEN_DEPLOY_USERNAME' - server-password: 'MAVEN_DEPLOY_TOKEN' - gpg-private-key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }} - gpg-passphrase: 'MAVEN_GPG_PASSPHRASE' - - - name: maven release ${{steps.metadata.outputs.current-version}} - env: - MAVEN_DEPLOY_USERNAME: ${{ secrets.MAVEN_DEPLOY_USERNAME }} - MAVEN_DEPLOY_TOKEN: ${{ secrets.MAVEN_DEPLOY_TOKEN }} - MAVEN_GPG_PASSPHRASE: ${{ secrets.MAVEN_GPG_PASSPHRASE }} - run: | - java -version - git config --global user.name "SmallRye CI" - git config --global user.email "smallrye@googlegroups.com" - git checkout -b release - mvn -B release:prepare -Prelease -DreleaseVersion=${{steps.metadata.outputs.current-version}} -DdevelopmentVersion=${{steps.metadata.outputs.next-version}} -DautoVersionSubmodules - git checkout ${{github.base_ref}} - git rebase release - mvn -B release:perform -Prelease - git push - git push --tags - - - uses: radcortez/milestone-release-action@main - name: milestone release - with: - github-token: ${{secrets.GITHUB_TOKEN}} - milestone-title: ${{steps.metadata.outputs.current-version}} +jobs: + perform-release: + name: Perform Release + uses: smallrye/.github/.github/workflows/perform-release.yml@main + secrets: inherit + with: + version: ${{github.event.inputs.tag || github.ref_name}}