Merge pull request #475 from oasisprotocol/changelog #14
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# NOTE: This name appears in GitHub's Checks API and in workflow's status badge. | |
name: release | |
# Trigger the workflow when: | |
on: | |
# A push occurs to one of the matched tags. | |
push: | |
tags: | |
# Pattern that roughly matches Oasis Rosetta Gateway's version tags. | |
# For more details on GitHub Actions' pattern match syntax, see: | |
# https://help.github.com/en/actions/automating-your-workflow-with-github-actions/workflow-syntax-for-github-actions#patterns-to-match-branches-and-tags. | |
- 'v[0-9]+.[0-9]+*' | |
# Global environment variables. | |
env: | |
GORELEASER_URL_PREFIX: https://github.com/goreleaser/goreleaser/releases/download/ | |
GORELEASER_VERSION: 0.149.0 | |
CURL_CMD: curl --proto =https --tlsv1.2 --location --silent --show-error --fail | |
jobs: | |
prepare-release: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
# Fetch all history as the recommended way to fetch all tags and | |
# branches of the project. | |
# This allows the release helpers in common.mk to determine the | |
# project's version from git correctly. | |
# For more info, see: | |
# https://github.com/actions/checkout#fetch-all-history-for-all-tags-and-branches | |
fetch-depth: 0 | |
- name: Set up Go 1.21 | |
uses: actions/setup-go@v4 | |
with: | |
go-version: "1.21.x" | |
- name: Install GoReleaser | |
run: | | |
cd $(mktemp --directory /tmp/goreleaser.XXXXX) | |
${CURL_CMD} ${GORELEASER_URL_PREFIX}/v${GORELEASER_VERSION}/${GORELEASER_TARBALL} \ | |
--output ${GORELEASER_TARBALL} | |
${CURL_CMD} ${GORELEASER_URL_PREFIX}/v${GORELEASER_VERSION}/goreleaser_checksums.txt \ | |
--output CHECKSUMS | |
sha256sum --check --ignore-missing CHECKSUMS | |
tar -xf ${GORELEASER_TARBALL} | |
sudo mv goreleaser /usr/local/bin | |
env: | |
GORELEASER_TARBALL: goreleaser_Linux_x86_64.tar.gz | |
- name: Set RELEASE_BRANCH name for stable/bugfix releases | |
run: | | |
GIT_VERSION=${GITHUB_REF#refs/tags/v} | |
if [[ $GIT_VERSION != *.0 ]]; then | |
echo "RELEASE_BRANCH=stable/${GIT_VERSION%.*}.x" >> $GITHUB_ENV | |
fi | |
- name: Build and publish the next release | |
run: | | |
make release-build | |
env: | |
# Instruct Make to create a real release. | |
OASIS_ROSETTA_GATEWAY_REAL_RELEASE: "true" | |
# Pass automatically created GitHub App installation token to the action. | |
# For more info, see: | |
# https://help.github.com/en/actions/automating-your-workflow-with-github-actions/authenticating-with-the-github_token. | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |