Change to a single finalize-release.yml GHA
This commit is contained in:
51
.github/workflows/changelog-for-milestone.yml
vendored
51
.github/workflows/changelog-for-milestone.yml
vendored
@@ -1,51 +0,0 @@
|
||||
name: Generate Changelog for Provided Milestone
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
milestone:
|
||||
description: 'Milestone title, e.g 3.0.0-M1, 3.1.0-RC1, 3.2.0 etc.'
|
||||
required: true
|
||||
type: string
|
||||
repositoryTeam:
|
||||
description: 'Comma-separate GitHub user names for repository team members to exclude from contributors'
|
||||
required: false
|
||||
type: string
|
||||
workflow_call:
|
||||
inputs:
|
||||
milestone:
|
||||
description: 'Milestone title, e.g 3.0.0-M1, 3.1.0-RC1, 3.2.0 etc.'
|
||||
required: true
|
||||
type: string
|
||||
repositoryTeam:
|
||||
description: 'Comma-separate GitHub user names for repository team members to exclude from contributors'
|
||||
required: false
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
generate-changelog:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout Common Repo
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: spring-projects/spring-integration-aws
|
||||
show-progress: false
|
||||
|
||||
- name: Set up JDK
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: adopt
|
||||
java-version: 17
|
||||
|
||||
- name: Generate Changelog
|
||||
run: |
|
||||
wget -q https://github.com/spring-io/github-changelog-generator/releases/download/v0.0.8/github-changelog-generator.jar
|
||||
java -jar github-changelog-generator.jar --spring.config.location=.github/changelog-application.yml ${{ inputs.milestone }} changelog.md
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }}
|
||||
REPO_TEAM: "[ ${{ inputs.repositoryTeam }} ]"
|
||||
|
||||
- name: Print Changelog
|
||||
run: echo "::notice ::$(cat changelog.md)"
|
||||
12
.github/workflows/ci-close-milestone.yml
vendored
12
.github/workflows/ci-close-milestone.yml
vendored
@@ -1,12 +0,0 @@
|
||||
name: Close Milestone
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
jobs:
|
||||
close-milestone:
|
||||
uses: spring-projects/spring-integration-aws/.github/workflows/close-milestone-on-release.yml@main
|
||||
with:
|
||||
releaseTag: ${{ github.ref_name }}
|
||||
secrets: inherit
|
||||
48
.github/workflows/close-milestone-on-release.yml
vendored
48
.github/workflows/close-milestone-on-release.yml
vendored
@@ -1,48 +0,0 @@
|
||||
name: Close Milestone and Notify Slack
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
releaseTag:
|
||||
description: 'The tag of the release for Milestone to close. Usually starts with `v`'
|
||||
required: true
|
||||
type: string
|
||||
workflow_call:
|
||||
inputs:
|
||||
releaseTag:
|
||||
description: 'The tag of the release for Milestone to close. Usually starts with `v`'
|
||||
required: true
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
close-milestone:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
|
||||
- name: Close Milestone
|
||||
id: milestone-id
|
||||
run: |
|
||||
TAG=${{ inputs.releaseTag }}
|
||||
export MILESTONE_NAME=${TAG#v}
|
||||
MILESTONE_ID=$(gh api repos/$OWNER/$REPO/milestones --jq '.[] | select(.title == env.MILESTONE_NAME) | .number')
|
||||
if [ $MILESTONE_ID ]; then
|
||||
gh api -X PATCH repos/$OWNER/$REPO/milestones/$MILESTONE_ID -f state='closed' --silent
|
||||
fi
|
||||
echo version=$MILESTONE_NAME >> $GITHUB_OUTPUT
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }}
|
||||
OWNER: ${{ github.repository_owner }}
|
||||
REPO: ${{ github.event.repository.name }}
|
||||
|
||||
# - name: Announce Release on Slack
|
||||
# uses: slackapi/slack-github-action@v1.24.0
|
||||
# env:
|
||||
# SLACK_WEBHOOK_URL: ${{ secrets.SPRING_RELEASE_SLACK_WEBHOOK_URL }}
|
||||
# SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
|
||||
# with:
|
||||
# payload: |
|
||||
# {
|
||||
# "text": "${{ github.event.repository.name }}-announcing `${{ steps.milestone-id.outputs.version }}`"
|
||||
# }
|
||||
63
.github/workflows/finalize-release.yml
vendored
Normal file
63
.github/workflows/finalize-release.yml
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
name: Create GH release and Notify Slack
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
milestone:
|
||||
description: 'Milestone title, e.g 3.0.0-M1, 3.1.0-RC1, 3.2.0 etc.'
|
||||
required: true
|
||||
type: string
|
||||
repositoryTeam:
|
||||
description: 'Comma-separate GitHub user names for repository team members to exclude from contributors'
|
||||
required: false
|
||||
type: string
|
||||
workflow_call:
|
||||
inputs:
|
||||
milestone:
|
||||
description: 'Milestone title, e.g 3.0.0-M1, 3.1.0-RC1, 3.2.0 etc.'
|
||||
required: true
|
||||
type: string
|
||||
repositoryTeam:
|
||||
description: 'Comma-separate GitHub user names for repository team members to exclude from contributors'
|
||||
required: false
|
||||
type: string
|
||||
|
||||
env:
|
||||
MILESTONE: ${{ inputs.milestone }}
|
||||
GITHUB_TOKEN: ${{ secrets.GH_ACTIONS_REPO_TOKEN }}
|
||||
|
||||
jobs:
|
||||
finalize-releae:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Generate Changelog
|
||||
run: |
|
||||
wget -q https://github.com/spring-io/github-changelog-generator/releases/download/v0.0.8/github-changelog-generator.jar
|
||||
|
||||
java -jar github-changelog-generator.jar $MILESTONE changelog.md \
|
||||
--changelog.repository=$GITHUB_REPOSITORY \
|
||||
--github.username=spring-builds \
|
||||
--github.password=${{ secrets.GH_ACTIONS_REPO_TOKEN }} \
|
||||
--changelog.contributors.exclude.names=${{ inputs.repositoryTeam }}
|
||||
|
||||
- name: GitHub Release
|
||||
run: gh release create v$MILESTONE -F changelog.md
|
||||
|
||||
- name: Close Milestone
|
||||
run: |
|
||||
MILESTONE_ID=$(gh api repos/$GITHUB_REPOSITORY/milestones --jq '.[] | select(.title == env.$MILESTONE) | .number')
|
||||
if [ $MILESTONE_ID ]; then
|
||||
gh api -X PATCH repos/$GITHUB_REPOSITORY/milestones/$MILESTONE_ID -f state='closed' --silent
|
||||
fi
|
||||
|
||||
# - name: Announce Release on Slack
|
||||
# uses: slackapi/slack-github-action@v1.24.0
|
||||
# env:
|
||||
# SLACK_WEBHOOK_URL: ${{ secrets.SPRING_RELEASE_SLACK_WEBHOOK_URL }}
|
||||
# SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
|
||||
# with:
|
||||
# payload: |
|
||||
# {
|
||||
# "text": "${{ github.event.repository.name }}-announcing `${{ env.MILESTONE }}`"
|
||||
# }
|
||||
Reference in New Issue
Block a user