如何将构建文件作为资产添加到 Github 中的版本中?
How to add the build files as an asset to a release in Github?
我有一个基于 Node/npm 的项目并使用 commitlint、husky 和 semantic-release。每当我推送到受保护的 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
步骤似乎按预期工作
但是如何将它作为资产添加到版本中?
您需要配置语义释放github-plugin
使用 configuration file
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。
它是一个 SDK,具有发布 NPM 包的策略(有点像语义发布)。看看GithubNpmPackageStrategy
免责声明:我是 atomic-release 的作者。
我有一个基于 Node/npm 的项目并使用 commitlint、husky 和 semantic-release。每当我推送到受保护的 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
步骤似乎按预期工作
但是如何将它作为资产添加到版本中?
您需要配置语义释放github-plugin 使用 configuration file
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。 它是一个 SDK,具有发布 NPM 包的策略(有点像语义发布)。看看GithubNpmPackageStrategy
免责声明:我是 atomic-release 的作者。