我创建了一个Github存储库,该库可以执行操作来构建npm软件包并将其发布到npmjs.com。我行动的触发因素是在Github中创建了一个新版本。创建新版本时,Github要求我提供版本号。我很想在Action中使用此版本号,并将其提供给yarn publish命令。
我的ci文件看起来像这样(我剥去了一些不重要的部分):
name: Deploy npm package
on:
release:
types: [created]
jobs:
publish-npm:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12
registry-url: https://registry.npmjs.org/
- run: yarn install
- run: yarn build
- run: yarn publish --new-version ${...}
env:a
NODE_AUTH_TOKEN: ${{secrets.npm_token}}
是否有一个环境变量包含该发行版的版本号?
答案 0 :(得分:1)
您可以使用${{ github.event.release.tag_name }}
获取标签版本。
答案 1 :(得分:0)
应为${{ github.event.release.tag_name }}
。可以在这里找到发布的结构:https://developer.github.com/v3/repos/releases/#get-a-single-release
我也建议使用
on:
release:
types: [published]
不是为了避免在草稿版本中将某些内容添加到npm而创建的。 参见:https://help.github.com/en/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows#release-event-release
提示:
要调试事件,您可以使用:
jobs:
debug:
name: Debug
runs-on: ubuntu-latest
steps:
- name: Dump env
run: env | sort
- name: Dump GitHub context
env:
GITHUB_CONTEXT: ${{ toJson(github) }}
run: echo "$GITHUB_CONTEXT"