Chore: Upgrade Jenkins-job-builder to 6.3.0
[releng/global-jjb.git] / jjb / lf-openstack-kubernetes.yaml
1 ---
2 - parameter:
3     name: lf-kubernetes-create
4     parameters:
5       - string:
6           name: BASE_IMAGE
7           default: "{base-image}"
8       - string:
9           name: BOOT_VOLUME_SIZE
10           default: "{boot-volume-size}"
11       - string:
12           name: CLUSTER_SETTLE_TIME
13           default: "{cluster-settle-time}"
14       - string:
15           name: DOCKER_VOLUME_SIZE
16           default: "{docker-volume-size}"
17       - string:
18           name: FIXED_NETWORK
19           default: "{fixed-network}"
20       - string:
21           name: FIXED_SUBNET
22           default: "{fixed-subnet}"
23       - string:
24           name: KEYPAIR
25           default: "{keypair}"
26       - string:
27           name: KUBERNETES_VERSION
28           default: "{kubernetes-version}"
29       - string:
30           name: MASTER_COUNT
31           default: "{master-count}"
32       - string:
33           name: MASTER_FLAVOR
34           default: "{master-flavor}"
35       - string:
36           name: NODE_COUNT
37           default: "{node-count}"
38       - string:
39           name: NODE_FLAVOR
40           default: "{node-flavor}"
41       - string:
42           name: OS_CLOUD
43           default: "{openstack-cloud}"
44
45 - builder:
46     name: lf-kubernetes-create
47     builders:
48       - inject:
49           properties-content: |
50             BASE_IMAGE={base-image}
51             BOOT_VOLUME_SIZE={boot-volume-size}
52             CLUSTER_NAME=$SILO-$JOB_NAME-$BUILD_NUMBER
53             CLUSTER_SETTLE_TIME={cluster-settle-time}
54             CLUSTER_TEMPLATE_NAME=$SILO-$JOB_NAME-$BUILD_NUMBER-template
55             DOCKER_VOLUME_SIZE={docker-volume-size}
56             FIXED_NETWORK={fixed-network}
57             FIXED_SUBNET={fixed-subnet}
58             KEYPAIR={keypair}
59             KUBERNETES_VERSION={kubernetes-version}
60             MASTER_COUNT={master-count}
61             MASTER_FLAVOR={master-flavor}
62             NODE_COUNT={node-count}
63             NODE_FLAVOR={node-flavor}
64             OS_CLOUD={openstack-cloud}
65       - config-file-provider:
66           files:
67             - file-id: clouds-yaml
68               target: "$HOME/.config/openstack/clouds.yaml"
69       - shell: !include-raw-escape: ../shell/openstack-kubernetes-create.sh
70
71 - publisher:
72     name: lf-kubernetes-delete
73     publishers:
74       - postbuildscript:
75           builders:
76             - role: BOTH
77               build-on:
78                 - ABORTED
79                 - FAILURE
80                 - SUCCESS
81                 - UNSTABLE
82               build-steps:
83                 - inject:
84                     properties-content: |
85                       CLUSTER_NAME=$SILO-$JOB_NAME-$BUILD_NUMBER
86                       CLUSTER_TEMPLATE_NAME=$SILO-$JOB_NAME-$BUILD_NUMBER-template
87                 - config-file-provider:
88                     files:
89                       - file-id: clouds-yaml
90                         target: "$HOME/.config/openstack/clouds.yaml"
91                 - shell: |
92                     #!/bin/bash -l
93                     echo "Deleting $CLUSTER_NAME"
94                     set -eux -o pipefail
95                     openstack --os-cloud "$OS_CLOUD" coe cluster delete "$CLUSTER_NAME"
96                     echo "Cluster $CLUSTER_NAME now deleting, sleeping 5 minutes"
97                     sleep 5m
98                     echo "Deleting cluster template $CLUSTER_TEMPLATE_NAME"
99                     openstack --os-cloud "$OS_CLOUD" coe cluster template delete "$CLUSTER_TEMPLATE_NAME"
100           mark-unstable-if-failed: false