我有一個基于 Node/npm 的專案,并使用 commitlint、husky 和語意發布。每當我推送到受保護的main分支時,我都想創建一個新版本。
在 Github 中,我添加了以下作業流程
name: Release on push on main
on:
push:
branches:
- main
jobs:
release-on-push-on-main:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Setup Node
uses: actions/setup-node@v2
with:
node-version: 16.x
- name: Install dependencies
run: npm install
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npx semantic-release --branches main
這可以很好地完成作業。當移動到發布時,我看到語意發布附加了源代碼

運行會npm run build生成一個dist包含所有構建檔案的檔案夾。如何增強我的作業流程以將構建添加到資產中?

添加步驟
- name: Run build
run: npm run build
- name: Archive build
uses: actions/upload-artifact@v2
with:
name: build
path: dist
在運行該Release步驟之前似乎按預期作業

但是如何將其作為資產添加到發布中?
uj5u.com熱心網友回復:
需要 使用組態檔配置semantic-release github-plugin
CLI 使用一些默認配置,如果您需要自定義配置,則必須從頭開始創建整個配置(據我所知)。
在根專案檔案夾中創建一個名為 release.config.js 的檔案:
// make sure you install @semantic-release/github as dev dependency
module.exports = {
"plugins": [
// additional config...
["@semantic-release/github", {
"assets": [
{"path": "dist/asset.min.css", "label": "CSS distribution"},
{"path": "dist/asset.min.js", "label": "JS distribution"}
]
}],
]
}
我還可以推薦使用一種叫做atomic-release 的語意釋放的替代方法。它是一個帶有發布 NPM 包(有點像語意發布)策略的 SDK。看看GithubNpmPackageStrategy
免責宣告:我是 atomic-release 的作者。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/354114.html
標籤:github 新产品经理 github-actions 语义释放
