Files
spring-boot/.github/workflows/publicize-release.yml
T
Stéphane Nicoll 511bbc03d9 Apply release train infrastructure
This commit moves our previous release process using dedicated workflows
to the use of the release orchestrator. The necessary workflows have
been added in this commit as well as the two goals required to build
and test the release.

Post-release actions have been moved to a publicize-release workflow.

Closes gh-51883
2026-10-05 10:48:15 +02:00

98 lines
3.4 KiB
YAML

name: Publicize Release
on:
push:
tags:
- v4.0.[0-9]+
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
jobs:
read-version:
name: Read Version
runs-on: 'ubuntu-latest'
steps:
- name: Check Out Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Read Version From gradle.properties
id: read-version
shell: bash
run: |
version=$(sed -n 's/version=\(.*\)/\1/p' gradle.properties)
echo "Version is $version"
echo "version=$version" >> $GITHUB_OUTPUT
outputs:
version: ${{ steps.read-version.outputs.version }}
publish-gradle-plugin:
name: Publish Gradle Plugin
if: ${{ !vars.COMMERCIAL }}
needs:
- read-version
runs-on: 'ubuntu-latest'
steps:
- name: Check Out Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Publish
uses: ./.github/actions/publish-gradle-plugin
with:
build-number: '2026.4'
gradle-plugin-publish-key: ${{ secrets.GRADLE_PLUGIN_PUBLISH_KEY }}
gradle-plugin-publish-secret: ${{ secrets.GRADLE_PLUGIN_PUBLISH_SECRET }}
jfrog-cli-config-token: ${{ secrets.JF_ARTIFACTORY_SPRING }}
plugin-version: ${{ needs.read-version.outputs.version }}
publish-to-sdkman:
name: Publish to SDKMAN!
needs:
- read-version
runs-on: 'ubuntu-latest'
steps:
- name: Check Out Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Publish to SDKMAN!
uses: ./.github/actions/publish-to-sdkman
with:
make-default: false
sdkman-consumer-key: ${{ secrets.SDKMAN_CONSUMER_KEY }}
sdkman-consumer-token: ${{ secrets.SDKMAN_CONSUMER_TOKEN }}
spring-boot-version: ${{ needs.read-version.outputs.version }}
update-homebrew-tap:
name: Update Homebrew Tap
needs:
- read-version
runs-on: 'ubuntu-latest'
steps:
- name: Check Out Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Update Homebrew Tap
uses: ./.github/actions/update-homebrew-tap
with:
spring-boot-version: ${{ needs.read-version.outputs.version }}
token: ${{ secrets.GH_ACTIONS_REPO_TOKEN }}
trigger-docs-build:
name: Trigger Docs Build
needs:
- read-version
permissions:
actions: write
runs-on: 'ubuntu-latest'
steps:
- name: Run Deploy Docs Workflow
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh workflow run deploy-docs.yml --repo ${{ github.repository }} -r docs-build -f build-refname=${{ github.ref_name }} -f build-version=${{ needs.read-version.outputs.version }}
create-github-release:
name: Create GitHub Release
needs:
- read-version
- publish-gradle-plugin
- publish-to-sdkman
- trigger-docs-build
- update-homebrew-tap
runs-on: 'ubuntu-latest'
steps:
- name: Check Out Code
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Create GitHub Release
uses: ./.github/actions/create-github-release
with:
commercial: ${{ vars.COMMERCIAL }}
milestone: ${{ needs.read-version.outputs.version }}
token: ${{ secrets.GH_ACTIONS_REPO_TOKEN }}