Remove References to Ericsson Build4
[releng.git] / jjb / releng / opnfv-utils.yaml
1 ---
2 - project:
3
4     name: opnfv-utils
5
6     jobs:
7       - 'prune-docker-images'
8       - 'check-status-of-slaves'
9       - 'ansible-build-server'
10       - 'generate-artifacts-index-pages'
11
12 ########################
13 # job templates
14 ########################
15 - job-template:
16     name: 'prune-docker-images'
17
18     disabled: false
19
20     concurrent: true
21
22     parameters:
23       - node:
24           name: SLAVE_NAME
25           description: Slaves to prune docker images
26           default-slaves:
27             - lf-build2
28           allowed-multiselect: true
29           ignore-offline-nodes: true
30
31     builders:
32       - description-setter:
33           description: "Built on $NODE_NAME"
34       # yamllint disable rule:line-length
35       - shell: |
36           #!/bin/bash
37           sudo systemctl restart docker
38           (docker ps -q; docker ps -aq) | sort | uniq -u | xargs --no-run-if-empty docker rm
39           docker images -f dangling=true -q | xargs --no-run-if-empty docker rmi
40
41
42     # yamllint enable rule:line-length
43     triggers:
44       - timed: '@midnight'
45
46 - job-template:
47     name: 'check-status-of-slaves'
48
49     disabled: false
50     concurrent: true
51
52     parameters:
53       - node:
54           name: SLAVE_NAME
55           description: 'script lives on master node'
56           default-slaves:
57             - lf-build2
58           allowed-multiselect: false
59           ignore-offline-nodes: true
60       - project-parameter:
61           project: releng
62           branch: master
63
64     scm:
65       - git-scm
66
67     triggers:
68       - timed: '@midnight'
69
70     builders:
71       - shell: |
72           cd $WORKSPACE/utils/
73           bash slave-monitor-0.1.sh
74
75 - job-template:
76     name: 'ansible-build-server'
77
78     project-type: freestyle
79
80     disabled: false
81     concurrent: true
82
83     parameters:
84       - node:
85           name: SLAVE_NAME
86           description: Build Servers
87           default-slaves:
88             - lf-build1
89             - lf-build2
90             - lf-build3
91           allowed-multiselect: true
92           ignore-offline-nodes: true
93       - project-parameter:
94           project: releng
95           branch: master
96
97     scm:
98       - git-scm
99
100     triggers:
101       - timed: '@midnight'
102
103     builders:
104       - description-setter:
105           description: '$NODE_NAME'
106       - install-ansible
107       - run-ansible-build-server-playbook
108
109
110 - builder:
111     name: install-ansible
112     builders:
113       - shell: |
114           # Install ansible here
115           if [ -f /etc/centos-release ] \
116           || [ -f /etc/redhat-release ] \
117           || [ -f /etc/system-release ]; then
118           sudo yum -y install ansible
119           fi
120           if [ -f /etc/debian_version ] \
121           || grep -qi ubuntu /etc/lsb-release \
122           || grep -qi ubuntu /etc/os-release; then
123           sudo apt-get -y install ansible
124           fi
125
126
127 - builder:
128     name: run-ansible-build-server-playbook
129     builders:
130       - shell: |
131           # run playbook
132           sudo ansible-playbook -i \
133           $WORKSPACE/utils/build-server-ansible/inventory.ini \
134           $WORKSPACE/utils/build-server-ansible/main.yml
135
136
137 - job-template:
138     name: 'generate-artifacts-index-pages'
139
140     project-type: freestyle
141
142     disabled: false
143
144     concurrent: false
145
146     parameters:
147       - node:
148           name: SLAVE_NAME
149           description: Build Servers
150           default-slaves:
151             - lf-build2
152       - project-parameter:
153           project: releng
154           branch: master
155
156     scm:
157       - git-scm
158
159     triggers:
160       - timed: '@hourly'
161
162     builders:
163       - generate-artifact-html
164
165
166 - builder:
167     name: generate-artifact-html
168     builders:
169       - shell: |
170           cd $WORKSPACE/utils/
171           ./artifacts.opnfv.org.sh