GitHub Actions by Example: Event Triggers

name: event-triggers-example

on单元定义了什么行为将触发工作流。 这里详尽地列举了所有触发器。

on:

推送到远程版本库时的触发器。

  push:

可选地包括branches参数,限制只有推送至指定的分支才能触发工作流

    branches: 
      - 'develop'

单个* 匹配0到多个字符(不包括’/‘字符)。 这个例子匹配了refs/heads/foo/abc而不是refs/heads/foo/abc/123

      - 'foo/*'

**匹配0到多个字符 (无限制) 这个例子匹配了refs/heads/foo/abc refs/heads/foo/abc/123

      - 'foo/**'

! 否定了一个匹配。这个例子排除了 refs/heads/foo/abc/456. 关于更多否定匹配的使用:了解更多.

      - '!foo/*/456'

可选地使用tags来触发工作流。(仅限于匹配指定规则的tag。)

    tags:
      - '*'

触发Pull Request

  pull_request:
    branches:

develop分支发起PR

      - 'develop'

使用corn语法,定时触发

  schedule:
    - cron: '*/15 * * * *'
jobs:
  say-hello:
    runs-on: ubuntu-latest
    steps:
      -
        name: Event

$GITHUB_EVENT_NAME一类的变量是所有action中均存在的默认环境变量

        run: echo "Triggered by: $GITHUB_EVENT_NAME"
      -
        name: Say Hello
        run: echo "Hello world!"

下一个例子:Actions