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

Release: New release tooling #22959

Merged
merged 21 commits into from
Jun 8, 2023
Merged

Release: New release tooling #22959

merged 21 commits into from
Jun 8, 2023

Conversation

JReinhold
Copy link
Contributor

@JReinhold JReinhold commented Jun 7, 2023

Works on #22532. This PR is too big to summarize, but it basically implements the whole plan laid out in the RFC for release tooling: #22182

What I did

  1. Add scripts/release that are Node CLI scripts to support the new release workflow
  2. Add GitHub Actions that orchestrate those scripts to automate the release process
  3. Minor small changes here and there to make the scripts work

How to test

My initial plan of attack here:

  1. get the last parts in from Kasper when they are done
  2. Merge this PR
  3. See if it works - it should open a pull request
  4. Make any necessary changes to make it actually work (maybe we need to add a git tag, or something similar like that)
  5. Merge the release PR (to trigger a new alpha release), which should fail because there is no NPM_TOKEN in GitHub secrets yet.
  6. Inspect the publish workflow run and make sure that it would actually have done the correct thing if it could
  7. If everything is good, add the NPM_TOKEN secret and rerun the publish workflow.
  8. 🤞 see it publish a new alpha version successfully.

Maintainers

  • If this PR should be tested against many or all sandboxes,
    make sure to add the ci:merged or ci:daily GH label to it.
  • Make sure this PR contains one of the labels below.

["cleanup", "BREAKING CHANGE", "feature request", "bug", "documentation", "maintenance", "dependencies", "other"]

@JReinhold JReinhold added the build Internal-facing build tooling & test updates label Jun 7, 2023
@yannbf
Copy link
Member

yannbf commented Jun 7, 2023

Quick reminder that the branch structure changes done in this PR need to be accounted for in the status-page

@JReinhold
Copy link
Contributor Author

Quick reminder that the branch structure changes done in this PR need to be accounted for in the status-page

Thanks @yannbf, I've had that in the back of my head for a while. I might just go with the current branch structure honestly, because release/next isn't that much of an improvement over next-release, and I suspect there are other hidden things that will break as well because of this branch renaming, which I really don't want to deal with.

@JReinhold JReinhold temporarily deployed to canary-release June 8, 2023 07:22 — with GitHub Actions Inactive
@socket-security
Copy link

🚨 Potential security issues detected. Learn more about Socket for GitHub ↗︎

To accept the risk, merge this PR and you will not be notified again.

Issue Package Version Note Source
Shell access simple-git 3.19.0 scripts/package.json

Next steps

What is shell access?

This module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.

Packages should avoid accessing the shell which can reduce portability, and make it easier for malicious shell access to be introduced.

Take a deeper look at the dependency

Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support [AT] socket [DOT] dev.

Remove the package

If you happen to install a dependency that Socket reports as Known Malware you should immediately remove it and select a different dependency. For other alert types, you may may wish to investigate alternative packages or consider if there are other ways to mitigate the specific risk posed by the dependency.

Mark a package as acceptable risk

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of package-name@version specifiers. e.g. @SocketSecurity ignore foo@1.0.0 bar@* or ignore all packages with @SocketSecurity ignore-all

  • @SocketSecurity ignore simple-git@3.19.0

@socket-security
Copy link

socket-security bot commented Jun 8, 2023

New and updated dependency changes detected. Learn more about Socket for GitHub ↗︎

Packages Version New capabilities Transitives1 Size Publisher
p-retry 🆕 5.1.2 None +1 20.6 kB sindresorhus
@actions/core 🆕 1.10.0 network, filesystem, environment +2 209 kB thboop
dataloader 🆕 2.2.2 None +0 62.2 kB saihaj
jest-mock-extended 🆕 3.0.4 None +1 144 kB marchaos
simple-git 🆕 3.19.0 filesystem, shell +2 898 kB steveukx

Footnotes

  1. https://docs.socket.dev

@JReinhold JReinhold temporarily deployed to canary-release June 8, 2023 09:14 — with GitHub Actions Inactive
@JReinhold JReinhold marked this pull request as ready for review June 8, 2023 09:18
@JReinhold JReinhold requested a review from a team as a code owner June 8, 2023 09:18
@JReinhold JReinhold temporarily deployed to canary-release June 8, 2023 13:42 — with GitHub Actions Inactive
Copy link
Contributor

@kasperpeulen kasperpeulen left a comment

Choose a reason for hiding this comment

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

LGTM!

@kasperpeulen kasperpeulen merged commit c213e68 into next Jun 8, 2023
@kasperpeulen kasperpeulen deleted the new-release-tooling branch June 8, 2023 14:26
kasperpeulen added a commit that referenced this pull request Jun 8, 2023
kasperpeulen added a commit that referenced this pull request Jun 8, 2023
kasperpeulen added a commit that referenced this pull request Jun 8, 2023
kasperpeulen added a commit that referenced this pull request Jun 9, 2023
kasperpeulen added a commit that referenced this pull request Jun 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Internal-facing build tooling & test updates
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants