Closed minkimcello closed 2 years ago
Synchronize NPM Tags -> Note that with opt-in preview packages per PR, we will only need to do this for branches we are actively publishing
This issue was created to summarize our collection of actions but the actions described here are outdated as they reference the ones written in bash (in branch v1
). Please refer to the following PRs to see the overview of the new actions of v2
:
Name | PR |
---|---|
publish-pr-preview |
#65, #69, #70, #71 |
synchronize-npm-tags |
#66 |
synchronize-with-npm |
#67 |
The purpose of this issue is to take inventory of all of our github actions so we can incorporate them into
covector
. Under each section I've written a brief summary and for some of the more complex actions I jot down all of its steps.Yarn
This action was created to replace running
yarn install
directly inside a Github Actions workflow so that it can exit if there are any warnings:Synchronize NPM Tags
This action was created to clean up some of the tags on the NPM registry. It's supposed to trigger whenever a git branch is deleted. It would cross reference all of the branch names on Github with all of the tags on NPM and delete the ones that do not match. It had an optional "preserve" argument to keep some of the tags that may or may not have corresponding branches such as
dev
,beta
, andalpha
.I don't know why I didn't have it just delete the corresponding tag of the deleted branch. But anyway, it looks like this action is being used in
effection
andmicrostates
. We probably should've been using this forbigtest
as well seeing as how we have a huge number of stale tags on NPM for bigtest packages.Synchronize With NPM
This action is what we run in our release workflows. Basically it runs the npm publish command if the version of each package in the repository does not exist on the registry yet. Because we've been using changesets with this action, all the PR merges to the main branch do not get published since we rely on changesets to bump the versions and create its Version Packages PR.
* I remember there was a lot of struggle around where to put npmrc and how multiple npmrc files conflict with one another. The context and conclusion to this issue is explained in #47.
Publish PR Preview
* On a call with Charles, he mentioned that perhaps we could explore options around how a user in a forked repository could generate a preview package. He also mentioned that we do not need to generate preview packages for every pull request and that using labels to trigger the build might be a good idea.