问题

刚刚接触github actions实现CI/CD, 遇到了一个yml文件触发失败的问题

yml文件配置如下 :

name: ci-test
on:
    pull_request:
        branches:
          - dev
jobs:
  ssh-login:
    runs-on: ubuntu-latest
    steps:

      - uses: appleboy/ssh-action@master
        with:
          host: ${{ secrets.HOST }}
          username: ${{ secrets.USERNAME }}
          key: ${{ secrets.KEY }}
          port: ${{ secrets.PORT }}
          script: |
                        ls ./

当使用 git pull 时, 却没有触发该yml文件(在github项目的Actions的选项卡下不存在任务)
但是,当把触发条件 pull_request 改成 push , 再push到Github 却意外的成功了触发了Actions

解决

最后多次尝试,才发现问题 :

pull_request 触发条件只能在默认分支上使用, 也就是说我的配置项 branches 下的 dev 不是项目的默认分支, 所以触发Actions失败, 除此之外还有 workflow_run | issue

都怪没认真看文档

另外再做个笔记 :
如果 workflows 目录下有多个yml, GitHub-Actions默认是并行触发的, 如果想实现按顺序触发, 请使用 workflow_run

GitHub-Actions 真香 !

相关