fix: cross-fetch version (#1113) #413
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
name: "Release" | |
on: | |
push: | |
branches: | |
- master | |
concurrency: ${{ github.workflow }}-${{ github.ref }} | |
jobs: | |
release: | |
name: "Release" | |
runs-on: ubuntu-latest | |
permissions: write-all | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
ref: ${{ github.event.pull_request.head.ref }} | |
- name: CI Setup | |
uses: ./.github/actions/ci-setup | |
# if there are changesets present, package.json will be bumped | |
- name: Bump and Collect Versions | |
run: | | |
pnpm changeset version | |
echo "BUILD_VERSION=$(sed -nE 's/^\s*"version": "(.*?)",$/\1/p' packages/fuels/package.json)" >> $GITHUB_ENV | |
echo "FUEL_CORE_VERSION=$(cat ./packages/fuel-core/VERSION)" >> $GITHUB_ENV | |
echo "FORC_VERSION=$(cat ./packages/forc/VERSION)" >> $GITHUB_ENV | |
git reset --hard | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Ensure NPM access | |
run: npm whoami | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Build | |
run: pnpm build | |
- name: Create Release Pull Request or Publish to npm | |
id: changesets | |
uses: FuelLabs/changesets-action@main | |
with: | |
publish: pnpm changeset:publish | |
version: pnpm changeset:version-with-docs | |
commit: "ci(changesets): versioning packages" | |
title: "ci(changesets): versioning packages" | |
createGithubReleases: aggregate | |
githubReleaseName: v${{ env.BUILD_VERSION }} | |
githubTagName: v${{ env.BUILD_VERSION }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Release to @next tag on npm | |
if: steps.changesets.outputs.published != 'true' | |
run: | | |
git checkout master | |
pnpm changeset:next | |
git add .changeset/fuel-labs-ci.md | |
pnpm changeset version --snapshot next | |
pnpm changeset publish --tag next | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# ensure docs are always deployed after merge of changeset PR | |
- name: Get the last commit message and set env vars | |
run: echo LAST_COMMIT_MSG=$(git --no-pager log -1 --pretty=%B) >> $GITHUB_ENV | |
- name: Decides if Docs should be deployed | |
if: startsWith(env.LAST_COMMIT_MSG, 'ci(changesets):') | |
run: echo SHOULD_DEPLOY_DOCS=true >> $GITHUB_ENV | |
- name: Configure GitHub Pages | |
if: env.SHOULD_DEPLOY_DOCS == 'true' | |
uses: actions/configure-pages@v2 | |
- name: Upload Docs Artifact | |
if: env.SHOULD_DEPLOY_DOCS == 'true' | |
uses: actions/upload-pages-artifact@v1 | |
with: | |
path: apps/docs/dist | |
- name: Deploy Docs | |
if: env.SHOULD_DEPLOY_DOCS == 'true' | |
id: deployment | |
uses: actions/deploy-pages@v1 |