feat: publish beta and development tags on npm (#4769)
* feat: add logic to publish beta/dev npm This adds new log to publish the npm package both while working on PRs and when PRs are merged into main, allowing us to easily test changes in a production-like setting. Co-authored-by: Asher <ash@coder.com>
This commit is contained in:
9
.github/workflows/ci.yaml
vendored
9
.github/workflows/ci.yaml
vendored
@ -177,6 +177,15 @@ jobs:
|
||||
name: npm-package
|
||||
path: ./package.tar.gz
|
||||
|
||||
- name: Publish npm package with PR number and commit SHA
|
||||
run: yarn publish:npm
|
||||
env:
|
||||
ENVIRONMENT: "development"
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
NPM_TAG: ${{ github.event.number }}
|
||||
PR_NUMBER_AND_COMMIT_SHA: ${{ github.event.number }}-${{ github.event.pull_request.head.sha }}
|
||||
|
||||
# TODO: cache building yarn --production
|
||||
# possibly 2m30s of savings(?)
|
||||
# this requires refactoring our release scripts
|
||||
|
6
.github/workflows/npm-brew.yaml
vendored
6
.github/workflows/npm-brew.yaml
vendored
@ -16,11 +16,13 @@ jobs:
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Run ./ci/steps/publish-npm.sh
|
||||
run: ./ci/steps/publish-npm.sh
|
||||
- name: Publish npm package with PR number and commit SHA
|
||||
run: yarn publish:npm
|
||||
env:
|
||||
ENVIRONMENT: "production"
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
NPM_TAG: "latest"
|
||||
|
||||
homebrew:
|
||||
# The newest version of code-server needs to be available on npm when this runs
|
||||
|
27
.github/workflows/npm-dev.yaml
vendored
Normal file
27
.github/workflows/npm-dev.yaml
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
name: Publish on npm and tag with "beta"
|
||||
|
||||
on:
|
||||
# Shows the manual trigger in GitHub UI
|
||||
# helpful as a back-up in case the GitHub Actions Workflow fails
|
||||
workflow_dispatch:
|
||||
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
# NOTE: this job requires curl, jq and yarn
|
||||
# All of them are included in ubuntu-latest.
|
||||
npm:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Run ./ci/steps/publish-npm.sh
|
||||
run: yarn publish:npm
|
||||
env:
|
||||
ENVIRONMENT: "staging"
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||
NPM_TAG: "beta"
|
||||
PR_NUMBER_AND_COMMIT_SHA: ${{ github.event.number }}-${{ github.event.pull_request.head.sha }}
|
Reference in New Issue
Block a user