Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: Automate more of the release process (no-changelog) #10416

Merged
merged 1 commit into from
Aug 22, 2024

Conversation

netroy
Copy link
Member

@netroy netroy commented Aug 14, 2024

Summary

This PR updates the release process to automate more parts.

  1. Release PRs are now additionally labelled with release:minor or release:patch.
  2. Approving the release PR automatically triggers all the relevant CI checks.
  3. When the PR is merged, the release is published to NPM, then to DockerHub, then the GitHub release is created, and if the release was labeled with release:minor, the newly created tab is automatically merged back into master.

Related Linear tickets, Github issues, and Community forum posts

https://linear.app/n8n/issue/ENG-112
https://linear.app/n8n/issue/ENG-113
https://linear.app/n8n/issue/ENG-115
https://linear.app/n8n/issue/ENG-120

Review / Merge checklist

  • PR title and summary are descriptive

@n8n-assistant n8n-assistant bot added the n8n team Authored by the n8n team label Aug 14, 2024
@netroy netroy force-pushed the update-release-process branch from 4a86c66 to fd32a89 Compare August 21, 2024 18:08
@netroy netroy marked this pull request as ready for review August 21, 2024 18:22
merge-back-into-master:
name: Merge back into master
needs: [publish-to-npm, create-github-release]
if: ${{ github.event.pull_request.merged == true && !contains(github.event.pull_request.labels.*.name, 'release:patch') }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't there also label release:major? Should those be merged back as well? The PR description says:

and if the release was labeled with release:minor, the newly created tab is automatically merged back into master.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, this will work for release:major as well. I just didn't want to document that bit yet, until we have first finalized the updated release process for major releases.

@@ -22,11 +22,6 @@ on:
required: false
default: 'browsers:node18.12.0-chrome107'
type: string
cache-key:
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was not being used, and also can not be used because cypress containers use a completely different working directory, so the cache never restores, because actions/cache uses absolute paths for both save as well as `restore.

I'd like to update this setup to allow using a cache, so that we can stop building the app on every CI job, but that would be quite a lot more work that does not belong on this PR.

merge-back-into-master:
name: Merge back into master
needs: [publish-to-npm, create-github-release]
if: ${{ github.event.pull_request.merged == true && !contains(github.event.pull_request.labels.*.name, 'release:patch') }}
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, this will work for release:major as well. I just didn't want to document that bit yet, until we have first finalized the updated release process for major releases.

Copy link

cypress bot commented Aug 22, 2024



Test summary

414 0 0 0Flakiness 0


Run details

Project n8n
Status Passed
Commit fd32a89
Started Aug 22, 2024 9:01 AM
Ended Aug 22, 2024 9:06 AM
Duration 04:53 💡
OS Linux Debian -
Browser Electron 118

View run in Cypress Cloud ➡️


This comment has been generated by cypress-bot as a result of this project's GitHub integration settings. You can manage this integration in this project's settings in the Cypress Cloud

Copy link
Contributor

⚠️ Some Cypress E2E specs are failing, please fix them before merging

Copy link
Contributor

✅ All Cypress E2E specs passed

@netroy netroy merged commit c8ab9b1 into master Aug 22, 2024
54 checks passed
@netroy netroy deleted the update-release-process branch August 22, 2024 09:41
@janober
Copy link
Member

janober commented Aug 28, 2024

Got released with n8n@1.57.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
n8n team Authored by the n8n team Released
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants