https://github.com/orta/monorepo-deploy-nightly
Deploys npm projects, vscode extensions on a nightly basis if it has changed
https://github.com/orta/monorepo-deploy-nightly
deploys npm releases vscode vsode-extension
Last synced: 6 months ago
JSON representation
Deploys npm projects, vscode extensions on a nightly basis if it has changed
- Host: GitHub
- URL: https://github.com/orta/monorepo-deploy-nightly
- Owner: orta
- License: mit
- Created: 2020-05-25T14:49:44.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-12-14T13:34:38.000Z (almost 4 years ago)
- Last Synced: 2025-02-10T09:32:14.163Z (8 months ago)
- Topics: deploys, npm, releases, vscode, vsode-extension
- Language: TypeScript
- Homepage:
- Size: 357 KB
- Stars: 1
- Watchers: 4
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
### Monorepo Deploy Nightly
Deploy projects which have changed on a nightly basis. You might not need this [pleb](https://github.com/wixplosives/pleb) might provide everything you need.
This will look in `packages/*` for packages which have _any_ changes based on the [`since` option in git](https://www.git-scm.com/docs/git-log#_commit_limiting):
- Packages marked 'private' are ignored
- Packages with vscode in engines are:
- deployed via [`vsce`](https://code.visualstudio.com/api/working-with-extensions/publishing-extension) when there is a `VSCE_TOKEN` in the env
- deployed via [`ovsx`](https://www.npmjs.com/package/ovsx) when there is a `OVSX_TOKEN` in the envIt will grab the latest semver number from either npm or the vscode marketplace, and then bump it by a patch. For npm, if the project's `package.json` version is higher than that on npm, it will use that version instead.
```yml
name: Deploy Daily Builds# For testing
# on: push# For production
on:
schedule:
- cron: "0 4 * * *"jobs:
deploy:
runs-on: ubuntu-lateststeps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
registry-url: "https://registry.npmjs.org"# Ensure everything is compiling
- run: "yarn install"
- run: "yarn build"# Shipit
- uses: orta/monorepo-deploy-nightly@master
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
VSCE_TOKEN: ${{ secrets.AZURE_PAN_TOKEN }}
```For a weekly deploy, with npm installs, a custom sort order and only specific packages:
```yml
- uses: orta/monorepo-deploy-nightly@master
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
VSCE_TOKEN: ${{ secrets.AZURE_PAN_TOKEN }}
with:
since: '1 week ago'
sort: '["one", "three", "two"]'
only: '["one", "three", "two"]'
install: 'true'
```Deploy nightly builds for vscode extensions [which get deployed as pre-releases](https://code.visualstudio.com/updates/v1_63#_pre-release-extensions):
```yml
- uses: orta/monorepo-deploy-nightly@master
env:
VSCE_TOKEN: ${{ secrets.AZURE_PAN_TOKEN }}
with:
vsce-params: '--pre-release --yarn'
```### TODO
For a build where a specific file changing in the build triggers a deploy
```yml
- uses orta/monorepo-deploy-nightly@master
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
VSCE_TOKEN: ${{ secrets.AZURE_PAN_TOKEN }}
with:
since: '1 week ago'
changed: "relative/path/to/file/from/package'
```