summaryrefslogtreecommitdiff
path: root/tf-gerrit-tforg-l2.yaml
blob: 10f6f8b30d79dab1c7fcdfdeee54e29660270fdc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
- job:
    name: tf-gerrit-tforg-l2
    node: master
    project-type: multijob
    concurrent: true
    disabled: false
    description: |
      Job that triggers for every TF-A patch approved with the Allow-CI+2
      label on review.trustedfirmware.org.
    properties:
    - throttle:
        option: project
        enabled: true
        max-total: 5
    - build-discarder:
        days-to-keep: 14
    - authorization:
        !include: authorization.yaml.inc
    parameters:
        - string:
            name: GERRIT_PROJECT
            default: 'TF-A/trusted-firmware-a'
        - string:
            name: GERRIT_BRANCH
            default: 'refs/heads/integration'
        - string:
            name: GERRIT_REFSPEC
            default: '+refs/heads/integration:refs/remotes/origin/integration'
        - string:
            name: GERRIT_PATCHSET_NUMBER
            default: ''
        - string:
            name: GERRIT_CHANGE_NUMBER
            default: ''
    wrappers:
      - credentials-binding:
          - ssh-user-private-key:
              credential-id: TFA_CI_BOT_USER_SSH_KEY
              key-file-variable: CI_BOT_KEY
              username-variable: CI_BOT_USERNAME
              passphrase-variable: ''
      - workspace-cleanup
      - timestamps
    builders:
    - shell: |
        #!/bin/bash
        set -e
        cat << EOF > env.param
        GERRIT_PATCHSET_NUMBER=${GERRIT_PATCHSET_NUMBER}
        GERRIT_CHANGE_NUMBER=${GERRIT_CHANGE_NUMBER}
        GERRIT_HOST=${GERRIT_HOST}
        QA_SERVER_PROJECT=${JOB_NAME}
        QA_SERVER_VERSION=${BUILD_NUMBER}
        GERRIT_PROJECT=${GERRIT_PROJECT}
        GERRIT_BRANCH=${GERRIT_BRANCH}
        GERRIT_REFSPEC=${GERRIT_REFSPEC}
        EOF
    - multijob:
        condition: COMPLETED
        name: Carry out level 1 tests
        projects:
        - kill-phase-on: NEVER
          name: tf-tftf-gerrit-tforg-l1
          current-parameters: true
          property-file: env.param
    - multijob:
        condition: COMPLETED
        name: Build Trusted Firmware
        projects:
        - kill-phase-on: NEVER
          name: tf-ci-gateway
          predefined-parameters: |
            TEST_GROUPS=tf-l2-build-fvp tf-l2-build-juno
            TF_REFSPEC=$GERRIT_REFSPEC
          property-file: env.param
    - multijob:
        condition: COMPLETED
        name: TFTF tests
        projects:
        - kill-phase-on: NEVER
          name: tf-ci-gateway
          predefined-parameters: |
            TEST_GROUPS=tftf-l1-fvp tftf-l1-juno tftf-l2-fvp-auxiliary tftf-l2-fvp-dynamiq tftf-l2-fwu tftf-l2-fvp
            TF_REFSPEC=$GERRIT_REFSPEC
          property-file: env.param
    - multijob:
        condition: COMPLETED
        name: Boot up to the Linux shell prompt
        projects:
        - kill-phase-on: NEVER
          name: tf-ci-gateway
          predefined-parameters: |
            TEST_GROUPS=tf-l2-boot-tests-aarch32 tf-l2-boot-tests-bl2_el3 tf-l2-boot-tests-cortex tf-l2-boot-tests-foundation tf-l2-boot-tests-juno tf-l2-boot-tests-latest tf-l2-boot-tests-misc tf-l2-boot-tests-rootfs tf-l2-boot-tests-spm-mm
            TF_REFSPEC=$GERRIT_REFSPEC
          property-file: env.param
    - multijob:
        condition: COMPLETED
        name: Coverity Scan
        projects:
        - kill-phase-on: NEVER
          name: tf-ci-gateway
          predefined-parameters: |
            TEST_GROUPS=tf-l2-coverity-misra
            TF_REFSPEC=$GERRIT_REFSPEC
          property-file: env.param
    - conditional-step:
        condition-command: |-
          [ "$NOMINATION_FILE" ]
        condition-kind: shell
        on-evaluation-failure: dont-run
        steps:
        - multijob:
            condition: COMPLETED
            name: Nominated tests
            projects:
            - kill-phase-on: NEVER
              name: tf-ci-gateway
              predefined-parameters: |
                TEST_GROUPS=@$NOMINATION_FILE
                TF_REFSPEC=$GERRIT_REFSPEC
              property-file: env.param
    triggers:
    - gerrit:
        server-name: review.trustedfirmware.org
        trigger-on:
          - comment-added-event:
              approval-category: "Allow-CI"
              approval-value: 2
        projects:
          - project-compare-type: PLAIN
            project-pattern: TF-A/trusted-firmware-a
            branches:
              - branch-compare-type: PLAIN
                branch-pattern: integration
        override-votes: true
        gerrit-build-started-verified-value: 0
        gerrit-build-successful-verified-value: 1
        gerrit-build-failed-verified-value: 0
        gerrit-build-unstable-verified-value: -1
        gerrit-build-notbuilt-verified-value: 0
        gerrit-build-started-codereview-value: 0
        gerrit-build-successful-codereview-value: 0
        gerrit-build-failed-codereview-value: 0
        gerrit-build-unstable-codereview-value: -1
        gerrit-build-notbuilt-codereview-value: 0
        failure-message: 'OpenCI: build failed'
        successful-message: 'OpenCI: build successful'
        unstable-message: 'OpenCI: build unstable'
        notbuilt-message: 'OpenCI: no builds executed'
        skip-vote:
          successful: true
          failed: true
          unstable: true
          notbuilt: true
        silent: false
        silent-start: false