blob: 454d92b95313ca84a83145101e05825257ed51d1 [file] [log] [blame]
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +04001#
2# Jobs to update cloud packages on given Salt master environment
3#
4parameters:
5 _param:
6 jenkins_salt_api_url: "http://${_param:salt_master_host}:6969"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +04007 jenkins:
8 client:
9 job:
10 deploy-k8s-upgrade:
11 type: workflow-scm
12 concurrent: true
Alexander Evseev4589d712018-08-03 12:36:15 +020013 discard:
14 build:
15 keep_num: 10
16 artifact:
17 keep_num: 10
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040018 display_name: "Deploy - update kubernetes cluster"
19 scm:
20 type: git
21 url: "${_param:jenkins_gerrit_url}/mk/mk-pipelines"
22 branch: "${_param:jenkins_pipelines_branch}"
23 credentials: "gerrit"
24 script: k8s-upgrade-pipeline.groovy
25 param:
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040026 KUBERNETES_HYPERKUBE_SOURCE:
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040027 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040028 default: ""
29 description: "Versioned hyperkube binary to update control plane from. Should be null if update rolling via reclass-system level"
30 KUBERNETES_HYPERKUBE_SOURCE_HASH:
31 type: string
32 default: ""
33 description: "Hyperkube binary md5 hash. Should be null if update rolling via reclass-system level"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040034 KUBERNETES_PAUSE_IMAGE:
35 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040036 default: ""
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040037 description: "Versioned pause image to use in deployments. Should be null if update rolling via reclass-system level"
38 SALT_MASTER_URL:
39 type: string
40 default: "${_param:jenkins_salt_api_url}"
41 SALT_MASTER_CREDENTIALS:
42 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040043 default: "salt"
Victor Ryzhenkindbf76d32018-09-28 16:29:22 +040044 SIMPLE_UPGRADE:
45 type: boolean
46 default: 'false'
47 description: "Choose between simple upgrade or upgrade with draining nodes"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040048 PER_NODE:
49 type: boolean
50 default: 'true'
51 description: "Target nodes will be managed one by one"
52 TARGET_UPDATES:
53 type: string
54 default: "ctl,cmp"
55 description: "Comma separated list of nodes to update (Valid values are ctl,cmp)"
56 CTL_TARGET:
57 type: string
58 default: "I@kubernetes:master"
59 description: "Salt targeted kubernetes CTL nodes (ex. I@kubernetes:master). Kubernetes control plane"
60 CMP_TARGET:
61 type: string
Victor Ryzhenkin349d6692018-10-23 20:48:09 +040062 default: "I@kubernetes:pool and not I@kubernetes:master"
Victor Ryzhenkin7d5a9d82018-07-04 05:33:21 +040063 description: "Salt targeted compute nodes (ex. 'cmp* and I@kubernetes:pool') Kubernetes computes"
Victor Ryzhenkin349d6692018-10-23 20:48:09 +040064 CONFORMANCE_RUN_AFTER:
65 type: boolean
66 default: "false"
67 description: "Run conformance tests after upgrade"
68 CONFORMANCE_RUN_BEFORE:
69 type: boolean
70 default: "false"
71 description: "Run conformance tests before upgrade"
72 TEST_K8S_API_SERVER:
73 type: string
74 default: "http://127.0.0.1:8080"
75 description: "Local kubernetes apiserver variable for conformance tests"
76 ARTIFACTORY_URL:
77 type: string
Victor Ryzhenkin497c57f2018-10-25 19:21:14 +040078 default: ${_param:mcp_docker_registry}
Victor Ryzhenkin349d6692018-10-23 20:48:09 +040079 description: "Artifactory URL where docker images located. Needed to correctly fetch conformance images."
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010080 UPGRADE_CALICO_V2_TO_V3:
81 type: boolean
82 default: 'false'
83 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)."
84 CALICO_UPGRADE_VERSION:
85 type: string
86 default: 'v1.0.5'
87 description: "Version of 'calico-upgrade' utility to be used."
88 KUBERNETES_CALICO_IMAGE:
89 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040090 default: ""
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010091 description: "Versioned calico/node image. Should be null if update rolling via reclass-system level"
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040092 KUBERNETES_CALICO_CALICOCTL_SOURCE:
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010093 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040094 default: ""
95 description: "Versioned calico/ctl binary. Should be null if update rolling via reclass-system level"
96 KUBERNETES_CALICO_CALICOCTL_SOURCE_HASH:
Aleksei Kasatkina6048e72018-11-07 12:03:41 +010097 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +040098 default: ""
99 description: "Calico/ctl binary md5 hash. Should be null if update rolling via reclass-system level"
100 KUBERNETES_CALICO_CNI_SOURCE:
101 type: string
102 default: ""
103 description: "Versioned calico/cni binary. Should be null if update rolling via reclass-system level"
104 KUBERNETES_CALICO_CNI_SOURCE_HASH:
105 type: string
106 default: ""
107 description: "Calico/cni binary hash. Should be null if update rolling via reclass-system level"
108 KUBERNETES_CALICO_BIRDCL_SOURCE:
109 type: string
110 default: ""
111 description: "Versioned calico/bird binary. Should be null if update rolling via reclass-system level"
112 KUBERNETES_CALICO_BIRDCL_SOURCE_HASH:
113 type: string
114 default: ""
115 description: "Calico/bird binary hash. Should be null if update rolling via reclass-system level"
116 KUBERNETES_CALICO_CNI_IPAM_SOURCE:
117 type: string
118 default: ""
119 description: "Versioned calico/ipam binary. Should be null if update rolling via reclass-system level"
120 KUBERNETES_CALICO_CNI_IPAM_SOURCE_HASH:
121 type: string
122 default: ""
123 description: "Calico/ipam binary hash. Should be null if update rolling via reclass-system level"
Aleksei Kasatkina6048e72018-11-07 12:03:41 +0100124 KUBERNETES_CALICO_KUBE_CONTROLLERS_IMAGE:
125 type: string
Victor Ryzhenkin5d782d12019-01-18 05:44:07 +0400126 default: ""
Aleksei Kasatkina6048e72018-11-07 12:03:41 +0100127 description: "Versioned calico/kube-controllers image. Should be null if update rolling via reclass-system level"
ashestakov87abc692019-01-11 11:42:59 +0200128 KUBERNETES_ETCD_SOURCE:
129 type: string
130 default: ""
131 description: "Versioned binary for etcd server. Should be null if update rolling via reclass-system level"
132 KUBERNETES_ETCD_SOURCE_HASH:
133 type: string
134 default: ""
135 description: "Checksum of etcd binary. Should be null if update rolling via reclass-system level"