我正试图将我的CI工作流从CircleCI迁移到GitHub Actions。我面临的最大困难是部署。
目前,我的工作流程是这样的:当我向GitHub存储库推送标签时,它会运行测试,然后运行部署。唯一的问题是CircleCI会过滤标签,只有当标签与正则表达式匹配时才运行作业:/v[0-9]+(\.[0-9]+)*/
。
在运行部署之前,我该如何检查确保我推送的标签与上述正则表达式模式匹配?
我目前拥有以下GitHub Actions yml文件:
name: CI
on: [create]
jobs:
# ...
deploy:
runs-on: ubuntu-latest
if: github.event.ref_type == 'tag' && github.event.ref == SOMETHING HERE
steps:
- uses: actions/checkout@v1
# ...
在 if
块中,我需要将 github.event.ref == SOMETHING HERE
更改为其他内容。我已经查看了GitHub Actions 的上下文和表达式语法文档页面。但由于 GitHub Actions 的灵活性和强大性,似乎应该有一种方法或方式来做到这一点,或者至少有一些解决方法。
我该如何确保标签(github.event.ref
)与正则表达式模式(/v[0-9]+(\.[0-9]+)*/
)匹配?
set-output
的文档链接。正则表达式部分只是 shell 脚本,与 GitHub Actions 无关。 - peterevanstrue]]||["a"
呢?(如果允许使用方括号)? - Niton