我正在尝试将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
更改为其他名称。我查看了Contexts and expression syntax for GitHub Actions文档页面。但是由于GitHub actions的灵活性和强大性,似乎应该有一种方法或方法来执行此操作,或者至少应采取某种解决方法。
如何确保标签(github.event.ref
)与正则表达式(/v[0-9]+(\.[0-9]+)*/
)相匹配?