summaryrefslogtreecommitdiffstats
path: root/ci/gate.yaml
blob: 278ecb7780387d759e86174a2460bbf1ea9e3e5d (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
---
- buildparameters: &buildparameters
    name: 'buildparameters'
    parameters:
      - string:
          name: branch
          default: '{branch}'

- projectparameters: &projectparameters
    name: 'projectparameters'
    current-parameters: true

- scm:
    name: gerrit
    scm:
      - git:
          url: https://gerrit.opnfv.org/gerrit/functest
          refspec: '+refs/changes/*:refs/changes/*'
          branches:
            - ${branch}

- job-template:
    name: '{repo}-{container}-{tag}-build'
    <<: *buildparameters
    scm:
      - gerrit
    builders:
      - shell: |
          cd docker/$(echo {container} |cut -d\- -f 2)
          docker build \
            --pull=false --no-cache --force-rm=true \
            --build-arg BRANCH=${{branch}} \
            -t {repo}/{container}:{tag} .

- project:
    name: '{repo}-{container}-{tag}-build'
    container:
      - functest-core
      - functest-tempest
      - functest-healthcheck
      - functest-smoke
      - functest-components
      - functest-vnf
      - functest-features
    jobs:
      - '{repo}-{container}-{tag}-build'

- job-template:
    name: '{repo}-functest-{tag}-build'
    project-type: multijob
    <<: *buildparameters
    builders:
      - multijob:
          name: build functest-core
          projects:
            - name: '{repo}-functest-core-{tag}-build'
              <<: *projectparameters
      - multijob:
          name: build functest-tempest
          projects:
            - name: '{repo}-functest-tempest-{tag}-build'
              <<: *projectparameters
      - multijob:
          name: build all remaining contrainers
          projects:
            - name: '{repo}-functest-healthcheck-{tag}-build'
              <<: *projectparameters
            - name: '{repo}-functest-smoke-{tag}-build'
              <<: *projectparameters
            - name: '{repo}-functest-components-{tag}-build'
              <<: *projectparameters
            - name: '{repo}-functest-vnf-{tag}-build'
              <<: *projectparameters
            - name: '{repo}-functest-features-{tag}-build'
              <<: *projectparameters

- project:
    name: '{repo}-functest-{tag}-build'
    jobs:
      - '{repo}-functest-{tag}-build'

- job-template:
    name: '{repo}-functest-{tag}-gate'
    project-type: multijob
    <<: *buildparameters
    builders:
      - multijob:
          name: build containers
          projects:
            - name: '{repo}-functest-{tag}-build'
              <<: *projectparameters
      - multijob:
          name: basics tests
          projects:
            - name: '{repo}-functest-healthcheck-{tag}-run'
      - multijob:
          name: advanced tests
          projects:
            - name: '{repo}-functest-smoke-{tag}-run'
            - name: '{repo}-functest-components-{tag}-run'
            - name: '{repo}-functest-vnf-{tag}-run'
            - name: '{repo}-functest-features-{tag}-run'

- project:
    name: '{repo}-functest-{tag}-gate'
    jobs:
      - '{repo}-functest-{tag}-gate'