tree 91434bc1c0033d36f07ec13c3b09ea16560d18a6
parent 90fc6eafb615b23d863977bf5d6d7aabd22a111e
author Hana (Hyang-Ah) Kim <hyangah@gmail.com> 1592640038 -0400
committer Hyang-Ah Hana Kim <hyangah@gmail.com> 1592843582 +0000

.github/workflows: add a new release workflow

This creates a new "release" workflow to execute the release of golang.go extension.
(release.yml). The nightly release workflow was moved to release-nightly.yml in
the previous commit.

The new release workflow is triggered when a new tag on the release branch is pushed.

Note: our canonical repository is in go.googlesource.com/vscode-go and tagging
will be done in the canonical repository, and mirrored to the github repository.
A typical workflow will be like

1. A human operator creates a CL to merge the main dev branch to the 'release' branch.
   CI (GCB builder) will test the CL.
2. The CL is reviewed and merged. This triggers the "Long test workflow" (test-long.yml).
3. The human operator verifies the "Long test workflow" is green.
   Otherwise, fix (fix, cherry-pick, review, commit) on the 'release' branch.
4. When the 'release' branch reaches to the state ready for the release,
   the human operator will tag the commig from the canonical repository.
   (https://go-review.googlesource.com/admin/repos/vscode-go,tags)
   Stable versions should be in the format of 'vX.X.X' (e.g. v0.15.0)
   Release candidates should be in the format of 'vX.X.X-rc.X' (e.g. v0.15.0-rc.1)
5. The gopherbot will mirror the tag to the GitHub repo, and that push will trigger
   the 'Release (golang.go)' workflow specified in this file.
     - For stable version release (vX.X.X), check if the package.json has the matching version.
     - Packaging using 'vsce package'
     - Create a release in Github
     - Upload the vsix file as an asset of the release
     - For stable version release (vX.X.X), upload to the vscode market place
       (not implemented in this CL)

And also, prevent workflows from running in forks.

Change-Id: Idb62c63dac064cd1cca8f87eacdfe87c029a49bf
Reviewed-on: https://go-review.googlesource.com/c/vscode-go/+/239177
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
