@felipecrs/semantic-release-vsce v3.1.1
Deprecation notice: this package is deprecated in favor of semantic-release-vsce, please use that instead.
semantic-release-vsce
Semantic release plugin for Visual Studio Code extensions
Add config to package.json
Use @felipecrs/semantic-release-vsce as part of verifyConditions and publish.
{
"scripts": {
"semantic-release": "semantic-release"
},
"release": {
"verifyConditions": [
"@felipecrs/semantic-release-vsce",
"@semantic-release/github"
],
"prepare": {
"path": "@felipecrs/semantic-release-vsce",
"packageVsix": true
},
"publish": [
"@felipecrs/semantic-release-vsce",
{
"path": "@semantic-release/github",
"assets": "*.vsix"
}
]
},
"devDependencies": {
"semantic-release": "^17.0.0",
"@felipecrs/semantic-release-vsce": "^2.1.0",
}
}If packageVsix is set, will also generate a .vsix file at the set file path after publishing. If is a string, it will be used as value for --out of vsce package.
It is recommended to upload this to your GitHub release page so your users can easily rollback to an earlier version if a version ever introduces a bad bug.
If yarn is set to true, will use --yarnoption for vsce package and vsce publish.
Working with older versions
This example is for semantic-release v15.
Prior to v15, prepare was part of publish - if you are using v14, you must pass the packageVsix option to publish instead.
Prior to v13, you had to override getLastRelease to use @semantic-release/git instead of the default @semantic-release/npm. This is no longer needed.
Travis example
Secret environment variables: VSCE_TOKEN
Example:
# .travis.yml
cache:
directories:
- ~/.npm
script:
- npm test
stages:
- test
- name: release
if: branch = master AND type = push AND fork = false
jobs:
include:
- stage: release
language: node_js
node_js: '10.18'
script: npm run semantic-release