blob: ee77583a9ff88f848b23846506770d65604dd10a [file] [log] [blame]
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +04001#
2# Jobs to update cloud packages on given Salt master environment
3#
4parameters:
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +04005 jenkins:
6 client:
7 job:
8 deploy-k8s-upgrade:
9 type: workflow-scm
10 concurrent: true
Alexander Evseev4589d712018-08-03 12:36:15 +020011 discard:
12 build:
13 keep_num: 10
14 artifact:
15 keep_num: 10
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040016 display_name: "Deploy - update kubernetes cluster"
17 scm:
18 type: git
19 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
20 branch: "${_param:jenkins_pipelines_branch}"
21 credentials: "gerrit"
22 script: k8s-upgrade-pipeline.groovy
23 param:
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040024 KUBERNETES_HYPERKUBE_SOURCE:
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040025 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040026 default: ""
27 description: "Versioned hyperkube binary to update control plane from. Should be null if update rolling via reclass-system level"
28 KUBERNETES_HYPERKUBE_SOURCE_HASH:
29 type: string
30 default: ""
31 description: "Hyperkube binary md5 hash. Should be null if update rolling via reclass-system level"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040032 KUBERNETES_PAUSE_IMAGE:
33 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040034 default: ""
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040035 description: "Versioned pause image to use in deployments. Should be null if update rolling via reclass-system level"
36 SALT_MASTER_URL:
37 type: string
38 default: "${_param:jenkins_salt_api_url}"
39 SALT_MASTER_CREDENTIALS:
40 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040041 default: "salt"
Victor Ryzhenkindbf76d32018-09-28 16:29:22 +040042 SIMPLE_UPGRADE:
43 type: boolean
44 default: 'false'
45 description: "Choose between simple upgrade or upgrade with draining nodes"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040046 PER_NODE:
47 type: boolean
48 default: 'true'
49 description: "Target nodes will be managed one by one"
50 TARGET_UPDATES:
51 type: string
52 default: "ctl,cmp"
53 description: "Comma separated list of nodes to update (Valid values are ctl,cmp)"
54 CTL_TARGET:
55 type: string
56 default: "I@kubernetes:master"
57 description: "Salt targeted kubernetes CTL nodes (ex. I@kubernetes:master). Kubernetes control plane"
58 CMP_TARGET:
59 type: string
Victor Ryzhenkin349d6692018-10-23 20:48:09 +040060 default: "I@kubernetes:pool and not I@kubernetes:master"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040061 description: "Salt targeted compute nodes (ex. 'cmp* and I@kubernetes:pool') Kubernetes computes"
Victor Ryzhenkin349d6692018-10-23 20:48:09 +040062 CONFORMANCE_RUN_AFTER:
63 type: boolean
64 default: "false"
65 description: "Run conformance tests after upgrade"
66 CONFORMANCE_RUN_BEFORE:
67 type: boolean
68 default: "false"
69 description: "Run conformance tests before upgrade"
70 TEST_K8S_API_SERVER:
71 type: string
72 default: "http://127.0.0.1:8080"
73 description: "Local kubernetes apiserver variable for conformance tests"
74 ARTIFACTORY_URL:
75 type: string
Victor Ryzhenkin497c57f2018-10-25 19:21:14 +040076 default: ${_param:mcp_docker_registry}
Victor Ryzhenkin349d6692018-10-23 20:48:09 +040077 description: "Artifactory URL where docker images located. Needed to correctly fetch conformance images."
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010078 UPGRADE_CALICO_V2_TO_V3:
79 type: boolean
80 default: 'false'
81 description: "Perform Calico upgrade from v2.x to v3.x. It is not needed for minor version upgrade (e.g., from v3.1 to v3.2)."
82 CALICO_UPGRADE_VERSION:
83 type: string
84 default: 'v1.0.5'
85 description: "Version of 'calico-upgrade' utility to be used."
86 KUBERNETES_CALICO_IMAGE:
87 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040088 default: ""
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010089 description: "Versioned calico/node image. Should be null if update rolling via reclass-system level"
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040090 KUBERNETES_CALICO_CALICOCTL_SOURCE:
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010091 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040092 default: ""
93 description: "Versioned calico/ctl binary. Should be null if update rolling via reclass-system level"
94 KUBERNETES_CALICO_CALICOCTL_SOURCE_HASH:
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010095 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +040096 default: ""
97 description: "Calico/ctl binary md5 hash. Should be null if update rolling via reclass-system level"
98 KUBERNETES_CALICO_CNI_SOURCE:
99 type: string
100 default: ""
101 description: "Versioned calico/cni binary. Should be null if update rolling via reclass-system level"
102 KUBERNETES_CALICO_CNI_SOURCE_HASH:
103 type: string
104 default: ""
105 description: "Calico/cni binary hash. Should be null if update rolling via reclass-system level"
106 KUBERNETES_CALICO_BIRDCL_SOURCE:
107 type: string
108 default: ""
109 description: "Versioned calico/bird binary. Should be null if update rolling via reclass-system level"
110 KUBERNETES_CALICO_BIRDCL_SOURCE_HASH:
111 type: string
112 default: ""
113 description: "Calico/bird binary hash. Should be null if update rolling via reclass-system level"
114 KUBERNETES_CALICO_CNI_IPAM_SOURCE:
115 type: string
116 default: ""
117 description: "Versioned calico/ipam binary. Should be null if update rolling via reclass-system level"
118 KUBERNETES_CALICO_CNI_IPAM_SOURCE_HASH:
119 type: string
120 default: ""
121 description: "Calico/ipam binary hash. Should be null if update rolling via reclass-system level"
Aleksei Kasatkina6048e72018-11-07 12:03:41 +0100122 KUBERNETES_CALICO_KUBE_CONTROLLERS_IMAGE:
123 type: string
Victor Ryzhenkin72ebf332019-01-18 05:44:07 +0400124 default: ""
Aleksei Kasatkina6048e72018-11-07 12:03:41 +0100125 description: "Versioned calico/kube-controllers image. Should be null if update rolling via reclass-system level"
ashestakov87e75972019-01-11 11:42:59 +0200126 KUBERNETES_ETCD_SOURCE:
127 type: string
128 default: ""
129 description: "Versioned binary for etcd server. Should be null if update rolling via reclass-system level"
130 KUBERNETES_ETCD_SOURCE_HASH:
131 type: string
132 default: ""
133 description: "Checksum of etcd binary. Should be null if update rolling via reclass-system level"