chore: lockfile #33
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 Versions or Publish NPM | |
on: | |
push: | |
branches: | |
- main | |
# This is for .npmrc. Nx automatically creates an .npmrc before changesets runs | |
# and creates one itself, so we need to explicitly have one. | |
env: | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
concurrency: commits-to-main | |
jobs: | |
release-main: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout all commits | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: Setup | |
uses: ./.github/actions/setup | |
with: | |
node_version: 19.5.0 | |
- uses: docker/setup-buildx-action@v2 | |
- uses: docker/login-action@v2 | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Workspace lint | |
shell: bash | |
run: npx nx workspace-lint | |
- name: Lint | |
shell: bash | |
run: npx nx run-many --target=lint --all --parallel=5 | |
- name: Test | |
shell: bash | |
run: npx nx run-many --target=test --all --parallel=5 | |
- name: Build for publishing | |
shell: bash | |
run: npx nx run-many --target=build --configuration=production --all --parallel=5 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NOTION_TOKEN: ${{ secrets.NOTION_TOKEN }} | |
- name: Containers | |
shell: bash | |
run: npx nx run-many --target=container --configuration=production -all --parallel=5 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NOTION_TOKEN: ${{ secrets.NOTION_TOKEN }} | |
- name: Containers zen | |
shell: bash | |
run: npx nx run-many --target=container --configuration=production-testnet-zen -all --parallel=5 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NOTION_TOKEN: ${{ secrets.NOTION_TOKEN }} | |
# If there are changesets, then update the release pull request | |
- name: Update release pull request or release versions | |
id: changesets | |
uses: changesets/action@v1 | |
with: | |
commit: 'chore: release packages' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Replace src code with dists for publishing | |
run: ./scripts/replace-src-with-dists-for-publishing.sh | |
# If there are no changesets, then try to publish to NPM, | |
# if the latest versions are already published, may fail | |
- name: Publish to NPM | |
if: steps.changesets.outputs.hasChangesets == 'false' | |
run: npm run release |