github.com/arunkumar7540/cli@v6.45.0+incompatible/ci/cli-pr-builder/pipeline.yml (about)

     1  ---
     2  resource_types:
     3  - name: pull-request
     4    type: docker-image
     5    source:
     6      repository: teliaoss/github-pr-resource
     7  - name: bosh-lite-pool
     8    type: docker-image
     9    source:
    10      repository: cfcli/pr-pool-manager
    11      tag: latest
    12  
    13  resources:
    14  - name: cli-pr
    15    type: pull-request
    16    check_every: 1m
    17    source:
    18      disable_forks: true # TODO: remove this once the PR builder is completely done
    19      repository: cloudfoundry/cli
    20      access_token: ((github-access-token))
    21      ignore_paths:
    22      - README.md
    23      - .github/
    24  
    25  - name: bosh-lite
    26    type: bosh-lite-pool
    27    source:
    28      uri: git@github.com:cloudfoundry/cli-pools
    29      private_key: ((cli-pools-github-private-key))
    30      branch: master
    31      pool: bosh-lites
    32  
    33  - name: cli-master
    34    type: git
    35    source:
    36      uri: https://github.com/cloudfoundry/cli
    37      branch: master
    38  
    39  # - name: legacy-gcp-bosh-pool
    40  #   type: pool
    41  #   source:
    42  #     uri: git@github.com:cloudfoundry/cli-pools
    43  #     private_key: ((cli-pools-github-private-key))
    44  #     branch: master
    45  #     pool: moldy-gnocchi
    46  
    47  # - name: golang
    48  #   type: docker-image
    49  #   source:
    50  #     repository: golang
    51  #     tag: 1.11
    52  
    53  jobs:
    54  - name: units
    55    serial: true
    56    plan:
    57    - aggregate:
    58      - get: cli-pr
    59        trigger: true
    60      - get: cli-master
    61    - aggregate:
    62      - put: cli-pr
    63        params:
    64          path: cli-pr
    65          status: pending
    66      - task: units-linux
    67        timeout: 30m
    68        input_mapping:
    69          cli: cli-pr
    70        file: cli-master/ci/cli/tasks/units-linux.yml
    71        on_failure:
    72          put: cli-pr
    73          params:
    74            path: cli-pr
    75            status: failure
    76  
    77  - name: claim-bosh-lite # TODO: record PR number instead of usernames
    78    serial: true
    79    plan:
    80    - aggregate:
    81      - get: cli-pr
    82        trigger: true
    83        version: every
    84        passed: [units]
    85      - get: cli-master
    86    - do:
    87      - task: get-pr-info
    88        input_mapping:
    89          cli: cli-pr
    90        file: cli-master/ci/cli-pr-builder/tasks/extract-info-from-pr.yml
    91      - put: bosh-lite
    92        params:
    93          story: commit-info/pr-id
    94          author_name: commit-info/author-name
    95          author_email: commit-info/author-email
    96          committer_name: commit-info/committer-name
    97          committer_email: commit-info/committer-email
    98          commit_message_prefix: CLI-PR-BUILDER-
    99      on_failure:
   100        put: cli-pr
   101        params:
   102          path: cli-pr
   103          status: error
   104  
   105  - name: integration-linux # TODO: clean this up
   106    serial: true
   107    plan:
   108    - aggregate:
   109      - get: cli-pr
   110        trigger: true
   111        passed: [claim-bosh-lite]
   112        version: every
   113      - get: cli-master
   114      - get: bosh-lite
   115        passed: [claim-bosh-lite]
   116        version: every
   117        trigger: true
   118    - do:
   119      - put: cli-pr
   120        params:
   121          path: cli-pr
   122          status: pending
   123      - task: integration
   124        input_mapping:
   125          cli: cli-pr
   126        file: cli-master/ci/cli-pr-builder/tasks/integration-linux.yml
   127        timeout: 1h30m
   128        params:
   129          CF_INT_IGNORE_API_VERSION_CHECK: false
   130        on_success:
   131          put: cli-pr
   132          params:
   133            path: cli-pr
   134            comment: Successfully passed unit and integration tests for the CF CLI
   135            status: success
   136        on_failure:
   137          put: cli-pr
   138          params:
   139            path: cli-pr
   140            status: failure
   141            comment_file: failure_summary/summary.txt
   142        ensure:
   143          put: unclaim-bosh-lite
   144          resource: bosh-lite
   145          params:
   146            operation: unclaim
   147            name: bosh-lite/name