summaryrefslogtreecommitdiffstats
path: root/jjb/dovetail/dovetail-weekly-jobs.yml
blob: 5a162bb7f065e588d0b79a2fc2bc6e73b10903aa (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
---
- project:
    name: dovetail-weekly-jobs
    project: dovetail
    # -------------------------------
    # BRANCH ANCHORS
    # -------------------------------
    master: &master
      stream: master
      branch: '{stream}'
      dovetail-branch: '{stream}'
      gs-pathname: ''
      docker-tag: 'latest'
    danube: &danube
      stream: danube
      branch: 'stable/{stream}'
      dovetail-branch: master
      gs-pathname: '/{stream}'
      docker-tag: 'latest'

    # -------------------------------
    # POD, INSTALLER, AND BRANCH MAPPING
    # -------------------------------
    #    Installers using labels
    #            CI PODs
    # This section should only contain the installers
    # that have been switched using labels for slaves
    # -------------------------------
    pod:
      # - baremetal:
      #     slave-label: apex-baremetal
      #     SUT: apex
      #     <<: *danube
      - baremetal:
          slave-label: compass-baremetal
          SUT: compass
          <<: *danube
    # - baremetal:
    #     slave-label: fuel-baremetal
    #     SUT: fuel
    #     <<: *danube
    # - baremetal:
    #     slave-label: joid-baremetal
    #     SUT: joid
    #     <<: *danube

    testsuite:
      - 'debug'
      - 'compliance_set'
      - 'proposed_tests'

    loop:
      - 'weekly':
          job-timeout: 180

    jobs:
      - 'dovetail-{SUT}-{pod}-{testsuite}-{loop}-{stream}'

################################
# job template
################################
- job-template:
    name: 'dovetail-{SUT}-{pod}-{testsuite}-{loop}-{stream}'

    disabled: true

    concurrent: true

    properties:
      - logrotate-default
      - throttle:
          enabled: true
          max-per-node: 1
          option: 'project'

    wrappers:
      - build-name:
          name: '$BUILD_NUMBER Scenario: $DEPLOY_SCENARIO'
      - timeout:
          timeout: '{job-timeout}'
          abort: true
      - fix-workspace-permissions

    parameters:
      - project-parameter:
          project: '{project}'
          branch: '{dovetail-branch}'
      - '{SUT}-defaults'
      - '{slave-label}-defaults'
      - string:
          name: DEPLOY_SCENARIO
          default: 'os-nosdn-nofeature-ha'
      - string:
          name: DOCKER_TAG
          default: '{docker-tag}'
          description: 'Tag to pull dovetail docker image'
      - string:
          name: CI_DEBUG
          default: 'true'
          description: "Show debug output information"
      - string:
          name: TESTSUITE
          default: '{testsuite}'
          description: "dovetail testsuite to run"
      - string:
          name: DOVETAIL_REPO_DIR
          default: "/home/opnfv/dovetail"
          description: "Directory where the dovetail repository is cloned"

    scm:
      - git-scm

    builders:
      - description-setter:
          description: "POD: $NODE_NAME"
      - 'dovetail-cleanup'
      - 'dovetail-run'

    publishers:
      - archive:
          artifacts: 'results/**/*'
          allow-empty: true
          fingerprint: true
      - email-jenkins-admins-on-failure

########################
# builder macros
########################
- builder:
    name: dovetail-run-weekly
    builders:
      - shell:
          !include-raw: ./dovetail-run.sh

- builder:
    name: dovetail-cleanup-weekly
    builders:
      - shell:
          !include-raw: ./dovetail-cleanup.sh