summaryrefslogtreecommitdiffstats
path: root/jjb/nfvbench/nfvbench.yaml
blob: 5fd994d6693aa88f9f8a460d0548f4aa104b7e81 (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
---
- project:
    name: nfvbench

    project: '{name}'

    jobs:
      - 'nfvbench-build-{stream}'
      - 'nfvbench-verify-{stream}'

    stream:
      - master:
          branch: '{stream}'
          gs-pathname: ''
          docker-tag: 'latest'
          disabled: false
      - gambia:
          branch: 'stable/{stream}'
          gs-pathname: '/{stream}'
          docker-tag: 'stable'
          disabled: false

- parameter:
    name: nfvbench-parameter
    parameters:
      - label:
          name: node
          default: 'opnfv-build'

- job-template:
    name: 'nfvbench-build-{stream}'

    disabled: '{obj:disabled}'

    parameters:
      - project-parameter:
          project: '{project}'
          branch: '{branch}'
      # yamllint disable rule:line-length
      - string:
          name: GIT_BASE
          default: https://gerrit.opnfv.org/gerrit/$PROJECT
          description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
      # yamllint enable rule:line-length
      - nfvbench-parameter

    scm:
      - git-scm-gerrit

    triggers:
      - gerrit:
          server-name: 'gerrit.opnfv.org'
          trigger-on:
            - change-merged-event
            - comment-added-contains-event:
                comment-contains-value: 'remerge'
          projects:
            - project-compare-type: 'ANT'
              project-pattern: '{project}'
              branches:
                - branch-compare-type: 'ANT'
                  branch-pattern: '**/{branch}'

    builders:
      - shell: |
          cd $WORKSPACE/nfvbenchvm/dib
          bash build-image.sh

- job-template:
    name: 'nfvbench-verify-{stream}'

    disabled: '{obj:disabled}'

    parameters:
      - project-parameter:
          project: '{project}'
          branch: '{branch}'
      # yamllint disable rule:line-length
      - string:
          name: GIT_BASE
          default: https://gerrit.opnfv.org/gerrit/$PROJECT
          description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
      # yamllint enable rule:line-length
      - nfvbench-parameter

    scm:
      - git-scm-gerrit

    triggers:
      - gerrit:
          server-name: 'gerrit.opnfv.org'
          trigger-on:
            - patchset-created-event:
                exclude-drafts: 'false'
                exclude-trivial-rebase: 'false'
                exclude-no-code-change: 'false'
            - comment-added-contains-event:
                comment-contains-value: 'recheck'
            - comment-added-contains-event:
                comment-contains-value: 'reverify'
          projects:
            - project-compare-type: 'ANT'
              project-pattern: '{project}'
              branches:
                - branch-compare-type: 'ANT'
                  branch-pattern: '**/{branch}'

    builders:
      - shell: |
          sudo apt-get -o DPkg::Lock::Timeout=300 update && \
          sudo DEBIAN_FRONTEND=noninteractive apt-get \
            -o DPkg::Lock::Timeout=300 dist-upgrade -y
          sudo DEBIAN_FRONTEND=noninteractive \
          apt-get -o DPkg::Lock::Timeout=300 install software-properties-common gpg -y
          sudo add-apt-repository -y ppa:deadsnakes/ppa
          sudo apt-get -o DPkg::Lock::Timeout=300 update && \
          sudo DEBIAN_FRONTEND=noninteractive apt-get \
            -o DPkg::Lock::Timeout=300 install \
            libxml2-dev libxslt-dev libffi-dev libjpeg-dev \
            python3.8 python3.8-dev python3.8-distutils \
            python3-pip -y
          sudo pip install tox-pip-version
          cd $WORKSPACE && tox
          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
          echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
            /etc/apt/sources.list.d/google-cloud-sdk.list
          sudo apt-get -o DPkg::Lock::Timeout=300 update && \
          sudo DEBIAN_FRONTEND=noninteractive apt-get \
            -o DPkg::Lock::Timeout=300 install \
            google-cloud-sdk python3-venv -y
          cd $WORKSPACE/nfvbenchvm/dib
          bash verify-image.sh -v