tldraw/.github/workflows/publish-vscode-extension.yml

41 lines
799 B
YAML
Raw Normal View History

Set up automatic VS Code publishing (#3905) When pushing to production branch we now also package and publish a new version of the VS Code extension. We get the last version from VS Code marketplace and update the package.json with that version. We don't commit that to the repo though (see the discussion below). I added `VSCE_PAT` secret (my own personal access token from the dev.azure.com), which will expire in 1 year. This is used when running the publish command. Some more info here: - [Publishing from CI](https://code.visualstudio.com/api/working-with-extensions/continuous-integration#github-actions) - Publishing uses `VSCE_PAT` env variable ![image](https://github.com/tldraw/tldraw/assets/2523721/df971c57-5197-4525-bc58-d50dd4bd8f3c) ### Change Type <!-- ❗ Please select a 'Scope' label ❗️ --> - [ ] `sdk` — Changes the tldraw SDK - [ ] `dotcom` — Changes the tldraw.com web app - [ ] `docs` — Changes to the documentation, examples, or templates. - [x] `vs code` — Changes to the vscode plugin - [ ] `internal` — Does not affect user-facing stuff <!-- ❗ Please select a 'Type' label ❗️ --> - [ ] `bugfix` — Bug fix - [ ] `feature` — New feature - [ ] `improvement` — Improving existing features - [ ] `chore` — Updating dependencies, other boring stuff - [ ] `galaxy brain` — Architectural changes - [ ] `tests` — Changes to any test code - [x] `tools` — Changes to infrastructure, CI, internal scripts, debugging tools, etc. - [ ] `dunno` — I don't know ### Release Notes - Automate publishing of the VS Code extension.
2024-06-17 14:14:42 +00:00
name: Publish VS Code Extension
on:
push:
branches:
- production
env:
CI: 1
PRINT_GITHUB_ANNOTATIONS: 1
defaults:
run:
shell: bash
jobs:
publish:
Set up automatic VS Code publishing (#3905) When pushing to production branch we now also package and publish a new version of the VS Code extension. We get the last version from VS Code marketplace and update the package.json with that version. We don't commit that to the repo though (see the discussion below). I added `VSCE_PAT` secret (my own personal access token from the dev.azure.com), which will expire in 1 year. This is used when running the publish command. Some more info here: - [Publishing from CI](https://code.visualstudio.com/api/working-with-extensions/continuous-integration#github-actions) - Publishing uses `VSCE_PAT` env variable ![image](https://github.com/tldraw/tldraw/assets/2523721/df971c57-5197-4525-bc58-d50dd4bd8f3c) ### Change Type <!-- ❗ Please select a 'Scope' label ❗️ --> - [ ] `sdk` — Changes the tldraw SDK - [ ] `dotcom` — Changes the tldraw.com web app - [ ] `docs` — Changes to the documentation, examples, or templates. - [x] `vs code` — Changes to the vscode plugin - [ ] `internal` — Does not affect user-facing stuff <!-- ❗ Please select a 'Type' label ❗️ --> - [ ] `bugfix` — Bug fix - [ ] `feature` — New feature - [ ] `improvement` — Improving existing features - [ ] `chore` — Updating dependencies, other boring stuff - [ ] `galaxy brain` — Architectural changes - [ ] `tests` — Changes to any test code - [x] `tools` — Changes to infrastructure, CI, internal scripts, debugging tools, etc. - [ ] `dunno` — I don't know ### Release Notes - Automate publishing of the VS Code extension.
2024-06-17 14:14:42 +00:00
name: Publish VS Code Extension
environment: vsce publish
Set up automatic VS Code publishing (#3905) When pushing to production branch we now also package and publish a new version of the VS Code extension. We get the last version from VS Code marketplace and update the package.json with that version. We don't commit that to the repo though (see the discussion below). I added `VSCE_PAT` secret (my own personal access token from the dev.azure.com), which will expire in 1 year. This is used when running the publish command. Some more info here: - [Publishing from CI](https://code.visualstudio.com/api/working-with-extensions/continuous-integration#github-actions) - Publishing uses `VSCE_PAT` env variable ![image](https://github.com/tldraw/tldraw/assets/2523721/df971c57-5197-4525-bc58-d50dd4bd8f3c) ### Change Type <!-- ❗ Please select a 'Scope' label ❗️ --> - [ ] `sdk` — Changes the tldraw SDK - [ ] `dotcom` — Changes the tldraw.com web app - [ ] `docs` — Changes to the documentation, examples, or templates. - [x] `vs code` — Changes to the vscode plugin - [ ] `internal` — Does not affect user-facing stuff <!-- ❗ Please select a 'Type' label ❗️ --> - [ ] `bugfix` — Bug fix - [ ] `feature` — New feature - [ ] `improvement` — Improving existing features - [ ] `chore` — Updating dependencies, other boring stuff - [ ] `galaxy brain` — Architectural changes - [ ] `tests` — Changes to any test code - [x] `tools` — Changes to infrastructure, CI, internal scripts, debugging tools, etc. - [ ] `dunno` — I don't know ### Release Notes - Automate publishing of the VS Code extension.
2024-06-17 14:14:42 +00:00
timeout-minutes: 15
runs-on: ubuntu-latest-16-cores-open
steps:
- name: Check out code
uses: actions/checkout@v3
with:
submodules: true
- uses: ./.github/actions/setup
- name: Build types
run: yarn build-types
- name: Get extension info from the marketplace
working-directory: 'apps/vscode/extension'
run: yarn get-info
- name: Publish extension
run: yarn tsx ./scripts/publish-vscode-extension.ts
env:
VSCE_PAT: ${{ secrets.VSCE_PAT }}