github.com/flavio/docker@v0.1.3-0.20170117145210-f63d1a6eec47/poule.yml (about)

     1  # Add a "status/0-triage" to every newly opened pull request.
     2  - triggers:
     3        pull_request: [ opened ]
     4    operations:
     5        - type:       label
     6          filters: {
     7              ~labels: [ " status/0-triage", "status/1-design-review", "status/2-code-review", "status/3-docs-review", "status/4-merge" ],
     8          }
     9          settings: {
    10              patterns: {
    11                  status/0-triage:     [ ".*" ],
    12              }
    13          }
    14  
    15  # For every newly created or modified issue, assign label based on matching regexp using the `label`
    16  # operation, as well as an Engine-specific version label using `version-label`.
    17  - triggers:
    18        issues:       [ edited, opened, reopened ]
    19    operations:
    20        - type:       label
    21          settings: {
    22              patterns: {
    23                  area/builder:        [ "dockerfile", "docker build" ],
    24                  area/distribution:   [ "docker login", "docker logout", "docker pull", "docker push", "docker search" ],
    25                  area/plugins:        [ "docker plugin" ],
    26                  area/networking:     [ "docker network", "ipvs", "vxlan" ],
    27                  area/runtime:        [ "oci runtime error" ],
    28                  area/security/trust: [ "docker_content_trust" ],
    29                  area/swarm:          [ "docker node", "docker swarm", "docker service create", "docker service inspect", "docker service logs", "docker service ls", "docker service ps", "docker service rm", "docker service scale", "docker service update" ],
    30                  platform/desktop:    [ "docker for mac", "docker for windows" ],
    31                  platform/freebsd:    [ "freebsd" ],
    32                  platform/windows:    [ "nanoserver", "windowsservercore", "windows server" ],
    33                  platform/arm:        [ "raspberry", "raspbian", "rpi", "beaglebone", "pine64" ],
    34              }
    35          }
    36        - type:       version-label
    37  
    38  # When a pull request is closed, attach it to the currently active milestone.
    39  - triggers:
    40        pull_request: [ closed ]
    41    operations:
    42        - type:       version-milestone
    43  
    44  # Labeling a PR with `rebuild/<configuration>` triggers a rebuild job for the associated
    45  # configuration. The label is automatically removed after the rebuild is initiated. There's no such
    46  # thing as "templating" in this configuration, so we need one operation for each type of
    47  # configuration that can be triggered.
    48  - triggers:
    49        pull_request: [ labeled ]
    50    operations:
    51        - type:       rebuild
    52          settings: {
    53              # When configurations are empty, the `rebuild` operation rebuilds all the currently
    54              # known statuses for that pull request.
    55              configurations: [],
    56              label:          "rebuild/*",
    57          }
    58        - type:       rebuild
    59          settings: {
    60              configurations: [ arm ],
    61              label:          "rebuild/arm",
    62          }
    63        - type:       rebuild
    64          settings: {
    65              configurations: [ experimental ],
    66              label:          "rebuild/experimental",
    67          }
    68        - type:       rebuild
    69          settings: {
    70              configurations: [ janky ],
    71              label:          "rebuild/janky",
    72          }
    73        - type:       rebuild
    74          settings: {
    75              configurations: [ userns ],
    76              label:          "rebuild/userns",
    77          }
    78        - type:       rebuild
    79          settings: {
    80              configurations: [ vendor ],
    81              label:          "rebuild/vendor",
    82          }
    83        - type:       rebuild
    84          settings: {
    85              configurations: [ win2lin ],
    86              label:          "rebuild/win2lin",
    87          }
    88        - type:       rebuild
    89          settings: {
    90              configurations: [ windowsRS1 ],
    91              label:          "rebuild/windowsRS1",
    92          }