diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 948406a0deda9..d68155e9dc452 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -60,7 +60,8 @@ jobs: # Optional: working directory, useful for monorepos working-directory: cli - # Optional: golangci-lint command line arguments. + # `golangci-lint-action` does not have an "install only" option. + # We ignore the output of this run, instead using it just to install the binary. args: --issues-exit-code=0 - uses: pnpm/action-setup@v2.2.2 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 11a7eb125772a..8f28243ba815b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -46,12 +46,11 @@ If you're using a different package manager replace npm accordingly. ## Publishing `turbo` to the npm registry -Canary builds are automatically published when code is merged to the `main` branch. -See the [`release` Github workflow](./.github/workflows/release.yml). +All builds are handled by manually triggering the appropriate [`release` GitHub workflow](./.github/workflows/release.yml). -To manually release: +To manually run a release: 1. `brew install goreleaser` -2. Add `GORELEASER_KEY` env var with the Go Releaser Pro key (ask @turbo-oss to get access to the key) +2. Add `GORELEASER_KEY` env var with the GoReleaser Pro key (ask @turbo-oss to get access to the key) 3. Update `version.txt` (do not commit this change to git manually) 4. `cd cli && make publish` diff --git a/cli/Makefile b/cli/Makefile index 4e9cb2cd4b52f..e421cf83f8621 100644 --- a/cli/Makefile +++ b/cli/Makefile @@ -117,6 +117,8 @@ publish: clean prepublish build cd $(CLI_DIR)/../packages/create-turbo && npm publish --tag $(TURBO_TAG) cd $(CLI_DIR)/../packages/turbo-codemod && npm publish --tag $(TURBO_TAG) + # Force push to ensure that the version used for the release is published. + # This _intentionally_ clobbers. If it does so, redo the clobbered thing. git push -f origin main "v$(TURBO_VERSION)" demo/lage: install