Release #6
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# PLEASE NOTE: Managed workflow - do not change manually | |
# | |
name: Release | |
on: | |
workflow_dispatch: {} | |
concurrency: | |
# only run one publishing at a time to avoid conflicts | |
group: publish-${{ github.ref }} | |
env: | |
# renovate: datasource=npm depName=@semantic-release/changelog | |
SEMANTIC_RELEASE_CHANGELOG_VERSION: 6.0.3 | |
# renovate: datasource=npm depName=@semantic-release/git | |
SEMANTIC_RELEASE_GIT_VERSION: 10.0.1 | |
# renovate: datasource=npm depName=conventional-changelog-conventionalcommits | |
CONVENTIONAL_CHANGELOG_CONVENTIONALCOMMITS_VERSION: 7.0.2 | |
jobs: | |
release: | |
name: Release | |
runs-on: ubuntu-latest | |
outputs: | |
release-published: ${{ steps.release.outputs.new_release_published }} | |
release-version: ${{ steps.release.outputs.new_release_version }} | |
steps: | |
- name: Determine app token for release | |
uses: actions/create-github-app-token@31c86eb3b33c9b601a1f60f98dcbfd1d70f379b4 # v1.10.3 | |
id: app-token | |
with: | |
app-id: ${{ secrets.WE_RELEASE_GITHUB_APP_ID }} | |
private-key: ${{ secrets.WE_RELEASE_GITHUB_PRIVATE_KEY }} | |
- name: Checkout | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
with: | |
token: ${{ steps.app-token.outputs.token }} | |
# Note: special permissions for push to protected branch required | |
# Credentials required for semantic-release-github-actions-tags | |
# persist-credentials: false | |
- name: Create release configuration file | |
if: ${{ hashFiles('.releaserc.yml') == '' }} | |
shell: bash | |
# TODO rather use a template? | |
run: | | |
cat <<EOF > .releaserc.yml | |
--- | |
branches: ${{ github.head_ref || github.ref_name }} | |
plugins: | |
- - "@semantic-release/commit-analyzer" | |
# see https://github.com/semantic-release/commit-analyzer?tab=readme-ov-file#options | |
- preset: conventionalcommits | |
- - "@semantic-release/release-notes-generator" | |
# see https://github.com/semantic-release/release-notes-generator?tab=readme-ov-file#options | |
- preset: conventionalcommits | |
presetConfig: | |
issuePrefixes: ['ING-', 'WGS-', 'SVC-'] | |
issueUrlFormat: 'https://wetransform.atlassian.net/browse/{{prefix}}{{id}}' | |
parserOpts: | |
# https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-commits-parser#referenceactions | |
# set to null to reference an issue without action (but will still show it "closes" the issue in the changelog) | |
# referenceActions: null | |
- "@semantic-release/changelog" | |
- - "@semantic-release/git" | |
- assets: | |
- CHANGELOG.md | |
- "@semantic-release/github" | |
- 'semantic-release-github-actions-tags' | |
EOF | |
- name: Install NodeJs | |
uses: actions/setup-node@1e60f620b9541d16bece96c5465dc8ee9832be0b # v4.0.3 | |
with: | |
node-version: 20 | |
- name: Release | |
id: release | |
uses: cycjimmy/semantic-release-action@cb425203a562475bca039ba4dbf90c7f9ac790f4 # v4.1.0 | |
env: | |
# Permissions needed | |
# contents: write | |
# issues: write | |
# pull-requests: write | |
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }} | |
GIT_AUTHOR_NAME: wetransform Bot | |
GIT_AUTHOR_EMAIL: [email protected] | |
GIT_COMMITTER_NAME: wetransform Bot | |
GIT_COMMITTER_EMAIL: [email protected] | |
RUNNER_DEBUG: 1 | |
with: | |
# dry_run: true | |
semantic_version: 23.1.1 | |
extra_plugins: | |
"@semantic-release/changelog@\ | |
${{ env.SEMANTIC_RELEASE_CHANGELOG_VERSION }} \ | |
@semantic-release/git@\ | |
${{ env.SEMANTIC_RELEASE_GIT_VERSION }} \ | |
conventional-changelog-conventionalcommits@\ | |
${{ env.CONVENTIONAL_CHANGELOG_CONVENTIONALCOMMITS_VERSION }} \ | |
semantic-release-github-actions-tags@\ | |
" |