mirror of
https://github.com/n8n-io/n8n.git
synced 2026-06-19 07:36:52 +00:00
ci: Match -exp for experimental/rc releases and mark semver as latest (#30494)
This commit is contained in:
@@ -58,7 +58,7 @@ async function createGitHubRelease() {
|
||||
body: BODY,
|
||||
draft: false,
|
||||
prerelease: IS_PRE_RELEASE === 'true',
|
||||
make_latest: MAKE_LATEST === 'true' ? 'true' : 'false',
|
||||
make_latest: MAKE_LATEST === 'true' && !isReleaseTrackTag ? 'true' : 'false',
|
||||
target_commitish: COMMIT,
|
||||
owner,
|
||||
repo,
|
||||
|
||||
@@ -121,6 +121,9 @@ function determineReleaseType(currentVersion) {
|
||||
if (currentVersion.includes('-rc.')) {
|
||||
return 'rc';
|
||||
}
|
||||
if (currentVersion.includes('-exp')) {
|
||||
return 'rc';
|
||||
}
|
||||
return 'stable';
|
||||
}
|
||||
|
||||
|
||||
@@ -104,4 +104,16 @@ describe('determine-tracks', () => {
|
||||
assert.equal(output.release_type, 'rc');
|
||||
assert.equal(output.rc_branch, 'release-candidate/2.10.x');
|
||||
});
|
||||
|
||||
it('Set release_type accordingly on exp releases', () => {
|
||||
const output = determineTrack('2.9.2-exp.0');
|
||||
|
||||
assert.equal(output.track, 'stable');
|
||||
assert.equal(output.version, '2.9.2-exp.0');
|
||||
assert.equal(output.previous_version, '2.9.2');
|
||||
assert.equal(output.bump, 'patch');
|
||||
assert.equal(output.new_stable_version, null);
|
||||
assert.equal(output.release_type, 'rc');
|
||||
assert.equal(output.rc_branch, 'release-candidate/2.9.x');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -16,6 +16,9 @@ on:
|
||||
commit:
|
||||
required: true
|
||||
type: string
|
||||
is_experimental:
|
||||
required: true
|
||||
type: boolean
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
track:
|
||||
@@ -35,6 +38,9 @@ on:
|
||||
description: 'Commitish the release points to (e.g. branch name or SHA).'
|
||||
required: true
|
||||
type: string
|
||||
is_experimental:
|
||||
required: true
|
||||
type: boolean
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
@@ -71,8 +77,8 @@ jobs:
|
||||
GITHUB_TOKEN: ${{ steps.generate_token.outputs.token }}
|
||||
RELEASE_TAG: ${{ inputs.version-tag }}
|
||||
BODY: ${{ inputs.body }}
|
||||
IS_PRE_RELEASE: ${{ inputs.track == 'beta' }}
|
||||
MAKE_LATEST: ${{ inputs.track == 'stable' }}
|
||||
IS_PRE_RELEASE: ${{ inputs.track == 'beta' || inputs.is_experimental }}
|
||||
MAKE_LATEST: ${{ inputs.track == 'stable' && !inputs.is_experimental }}
|
||||
COMMIT: ${{ inputs.commit }}
|
||||
ADDITIONAL_TAGS: ${{ inputs.track }}
|
||||
ADDITIONAL_TAGS: ${{ !inputs.is_experimental && inputs.track || '' }}
|
||||
run: node ./.github/scripts/create-github-release.mjs
|
||||
|
||||
@@ -70,7 +70,7 @@ jobs:
|
||||
name: Ensure correct latest version on npm
|
||||
if: |
|
||||
inputs.bump == 'minor' ||
|
||||
inputs.track == 'stable'
|
||||
(inputs.track == 'stable' && inputs.release_type != 'rc')
|
||||
uses: ./.github/workflows/release-set-stable-npm-packages-to-latest.yml
|
||||
secrets: inherit
|
||||
|
||||
@@ -85,6 +85,8 @@ jobs:
|
||||
|
||||
send-version-release-notification:
|
||||
name: 'Send version release notifications'
|
||||
if: |
|
||||
inputs.release_type != 'rc'
|
||||
uses: ./.github/workflows/release-version-release-notification.yml
|
||||
with:
|
||||
previous-version: ${{ inputs.previous_version }}
|
||||
|
||||
@@ -128,12 +128,15 @@ jobs:
|
||||
version-tag: 'n8n@${{ needs.determine-version-info.outputs.version }}'
|
||||
body: ${{ github.event.pull_request.body }}
|
||||
commit: ${{ github.event.pull_request.base.ref }}
|
||||
is_experimental: ${{ needs.determine-version-info.outputs.release_type == 'rc' }}
|
||||
secrets: inherit
|
||||
|
||||
move-track-tag:
|
||||
name: Move track tag
|
||||
needs: [determine-version-info, create-github-release]
|
||||
if: github.event.pull_request.merged == true
|
||||
if: |
|
||||
github.event.pull_request.merged == true &&
|
||||
needs.determine-version-info.outputs.release_type != 'rc'
|
||||
uses: ./.github/workflows/release-update-pointer-tag.yml
|
||||
with:
|
||||
track: ${{ needs.determine-version-info.outputs.track }}
|
||||
|
||||
Reference in New Issue
Block a user