k8s.io/test-infra@v0.0.0-20240520184403-27c6b4c223d8/config/jobs/kubernetes/cloud-provider-vsphere/cloud-provider-vsphere-config.yaml (about) 1 presets: 2 # Attaches the secrets to a job required to execute the e2e conformance 3 # suite against a cluster turned up with the cloud provider. 4 - labels: 5 preset-cloud-provider-vsphere-e2e-config: "true" 6 env: 7 - name: CONFIG_ENV 8 value: /root/.cloud-provider-vsphere/config.env 9 - name: GCR_KEY_FILE 10 value: /root/.cloud-provider-vsphere/keyfile.json 11 volumes: 12 - name: cloud-provider-vsphere-e2e-config 13 secret: 14 secretName: cloud-provider-vsphere-ci 15 items: 16 - key: config.env 17 path: config.env 18 mode: 288 19 - key: keyfile.json 20 path: keyfile.json 21 mode: 288 22 volumeMounts: 23 - name: cloud-provider-vsphere-e2e-config 24 mountPath: /root/.cloud-provider-vsphere 25 readOnly: true 26 27 presubmits: 28 kubernetes/cloud-provider-vsphere: 29 30 - name: pull-cloud-provider-vsphere-verify-fmt 31 cluster: eks-prow-build-cluster 32 always_run: false 33 run_if_changed: '\.go$|hack/check-format\.sh' 34 decorate: true 35 branches: 36 - ^master$ 37 - ^release-1.2[7-9]$ 38 - ^release-1.[3-9]\d$ 39 path_alias: k8s.io/cloud-provider-vsphere 40 spec: 41 containers: 42 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 43 command: 44 - runner.sh 45 args: 46 - make 47 - fmt 48 resources: 49 limits: 50 cpu: 2 51 memory: 4Gi 52 requests: 53 cpu: 2 54 memory: 4Gi 55 annotations: 56 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 57 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 58 testgrid-tab-name: pr-verify-fmt 59 description: Verifies the Golang sources have been formatted 60 61 - name: pull-cloud-provider-vsphere-verify-lint 62 cluster: eks-prow-build-cluster 63 always_run: false 64 run_if_changed: '\.go$|hack/check-lint\.sh' 65 decorate: true 66 branches: 67 - ^master$ 68 - ^release-1.2[7-9]$ 69 - ^release-1.[3-9]\d$ 70 path_alias: k8s.io/cloud-provider-vsphere 71 spec: 72 containers: 73 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 74 command: 75 - runner.sh 76 args: 77 - make 78 - lint 79 resources: 80 limits: 81 cpu: 2 82 memory: 4Gi 83 requests: 84 cpu: 2 85 memory: 4Gi 86 annotations: 87 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 88 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 89 testgrid-tab-name: pr-verify-lint 90 description: Verifies the Golang sources are linted 91 92 - name: pull-cloud-provider-vsphere-verify-vet 93 cluster: eks-prow-build-cluster 94 always_run: false 95 run_if_changed: '\.go$|hack/check-vet\.sh' 96 decorate: true 97 branches: 98 - ^master$ 99 - ^release-1.2[7-9]$ 100 - ^release-1.[3-9]\d$ 101 path_alias: k8s.io/cloud-provider-vsphere 102 spec: 103 containers: 104 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 105 command: 106 - runner.sh 107 args: 108 - make 109 - vet 110 resources: 111 limits: 112 cpu: 2 113 memory: 4Gi 114 requests: 115 cpu: 2 116 memory: 4Gi 117 annotations: 118 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 119 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 120 testgrid-tab-name: pr-verify-vet 121 description: Vets the Golang sources have been vetted 122 123 - name: pull-cloud-provider-vsphere-verify-markdown 124 cluster: eks-prow-build-cluster 125 always_run: false 126 run_if_changed: '.*\.md$' 127 decorate: true 128 path_alias: k8s.io/cloud-provider-vsphere 129 spec: 130 containers: 131 - image: gcr.io/cluster-api-provider-vsphere/extra/mdlint:0.17.0 132 command: 133 - /nodejs/bin/node 134 args: 135 - /md/lint 136 - -i 137 - vendor 138 - -i 139 - docs/book/node_modules 140 - . 141 resources: 142 limits: 143 cpu: 2 144 memory: 4Gi 145 requests: 146 cpu: 2 147 memory: 4Gi 148 annotations: 149 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 150 testgrid-tab-name: pr-verify-markdown 151 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 152 description: Verifies the markdown has been linted 153 154 - name: pull-cloud-provider-vsphere-verify-shell 155 cluster: eks-prow-build-cluster 156 always_run: false 157 run_if_changed: '.*\.\w*sh$' 158 decorate: true 159 path_alias: k8s.io/cloud-provider-vsphere 160 spec: 161 containers: 162 - image: gcr.io/cluster-api-provider-vsphere/extra/shellcheck:v0.6.0 163 command: 164 - /bin/shellcheck.sh 165 resources: 166 limits: 167 cpu: 2 168 memory: 4Gi 169 requests: 170 cpu: 2 171 memory: 4Gi 172 annotations: 173 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 174 testgrid-tab-name: pr-verify-shell 175 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 176 description: Verifies the shell scripts have been linted 177 178 - name: pull-cloud-provider-vsphere-verify-staticcheck 179 cluster: eks-prow-build-cluster 180 always_run: false 181 run_if_changed: '\.go$|hack/check-staticcheck\.sh$|go.mod' 182 decorate: true 183 branches: 184 - ^master$ 185 - ^release-1.2[7-9]$ 186 - ^release-1.[3-9]\d$ 187 path_alias: k8s.io/cloud-provider-vsphere 188 spec: 189 containers: 190 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 191 command: 192 - runner.sh 193 args: 194 - make 195 - staticcheck 196 resources: 197 limits: 198 cpu: 2 199 memory: 4Gi 200 requests: 201 cpu: 2 202 memory: 4Gi 203 annotations: 204 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 205 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 206 testgrid-tab-name: pr-verify-staticheck 207 description: Verifies the Golang sources pass a static source checker 208 209 # Builds the CCM and CSI binaries. 210 - name: pull-cloud-provider-vsphere-build 211 cluster: eks-prow-build-cluster 212 decorate: true 213 branches: 214 - ^master$ 215 - ^release-1.2[7-9]$ 216 - ^release-1.[3-9]\d$ 217 path_alias: k8s.io/cloud-provider-vsphere 218 skip_submodules: true 219 always_run: false 220 run_if_changed: '\.go$|go.mod|Dockerfile|Makefile' 221 skip_report: false 222 spec: 223 containers: 224 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 225 command: 226 - runner.sh 227 args: 228 - make 229 - build 230 resources: 231 limits: 232 cpu: 2 233 memory: 4Gi 234 requests: 235 cpu: 2 236 memory: 4Gi 237 annotations: 238 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 239 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 240 241 # Executes the unit tests. 242 - name: pull-cloud-provider-vsphere-unit-test 243 cluster: eks-prow-build-cluster 244 decorate: true 245 branches: 246 - ^master$ 247 - ^release-1.2[7-9]$ 248 - ^release-1.[3-9]\d$ 249 path_alias: k8s.io/cloud-provider-vsphere 250 skip_submodules: true 251 always_run: false 252 run_if_changed: '\.go$|go.mod' 253 skip_report: false 254 spec: 255 containers: 256 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 257 command: 258 - runner.sh 259 args: 260 - make 261 - unit-test 262 resources: 263 limits: 264 cpu: 2 265 memory: 4Gi 266 requests: 267 cpu: 2 268 memory: 4Gi 269 annotations: 270 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 271 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 272 273 # Executes the integration tests. 274 - name: pull-cloud-provider-vsphere-integration-test 275 cluster: eks-prow-build-cluster 276 decorate: true 277 labels: 278 preset-dind-enabled: "true" 279 preset-kind-volume-mounts: "true" 280 branches: 281 - ^master$ 282 - ^release-1.2[7-9]$ 283 - ^release-1.[3-9]\d$ 284 path_alias: k8s.io/cloud-provider-vsphere 285 skip_submodules: true 286 always_run: false 287 run_if_changed: '\.go$|go.mod' 288 skip_report: false 289 spec: 290 containers: 291 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 292 command: 293 - runner.sh 294 args: 295 - make 296 - integration-test 297 securityContext: 298 privileged: true 299 resources: 300 limits: 301 cpu: 2 302 memory: 4Gi 303 requests: 304 cpu: 2 305 memory: 4Gi 306 annotations: 307 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 308 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 309 310 # Executes the test coverage. 311 - name: pull-cloud-provider-vsphere-coverage 312 cluster: eks-prow-build-cluster 313 always_run: true 314 decorate: true 315 path_alias: k8s.io/cloud-provider-vsphere 316 branches: 317 - ^master$ 318 - ^release-1.2[7-9]$ 319 - ^release-1.[3-9]\d$ 320 extra_refs: 321 - org: kubernetes 322 repo: test-infra 323 base_ref: master 324 path_alias: k8s.io/test-infra 325 spec: 326 containers: 327 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 328 command: 329 - runner.sh 330 - bash 331 args: 332 - -c 333 - | 334 result=0 335 ./scripts/ci-test-coverage.sh || result=$? 336 cp coverage.* ${ARTIFACTS} 337 cd ../../k8s.io/test-infra/gopherage 338 GO111MODULE=on go build . 339 ./gopherage filter --exclude-path="zz_generated,generated\.go" "${ARTIFACTS}/coverage.out" > "${ARTIFACTS}/filtered.cov" || result=$? 340 ./gopherage html "${ARTIFACTS}/filtered.cov" > "${ARTIFACTS}/coverage.html" || result=$? 341 ./gopherage junit --threshold 0 "${ARTIFACTS}/filtered.cov" > "${ARTIFACTS}/junit_coverage.xml" || result=$? 342 exit $result 343 securityContext: 344 privileged: true 345 resources: 346 limits: 347 cpu: 2 348 memory: 4Gi 349 requests: 350 cpu: 2 351 memory: 4Gi 352 annotations: 353 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 354 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 355 testgrid-tab-name: pr-verify-test-coverage 356 description: Shows the test coverage of the Golang sources 357 358 # Executes the e2e tests. 359 - name: pull-cloud-provider-vsphere-e2e-test 360 decorate: true 361 labels: 362 preset-dind-enabled: "true" 363 # Borrows CAPV credentials for cloud provider e2e testing 364 preset-cloud-provider-vsphere-e2e-config-capv: "true" 365 preset-cloud-provider-vsphere-e2e-config: "true" 366 preset-kind-volume-mounts: "true" 367 branches: 368 - ^master$ 369 - ^release-1.2[7-9]$ 370 - ^release-1.[3-9]\d$ 371 path_alias: k8s.io/cloud-provider-vsphere 372 skip_submodules: true 373 always_run: false 374 run_if_changed: '\.go$|go.mod|hack/e2e\.sh|test/e2e/|charts/vsphere-cpi/' 375 skip_report: false 376 optional: true 377 spec: 378 containers: 379 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 380 command: 381 - runner.sh 382 args: 383 - ./hack/e2e.sh 384 securityContext: 385 privileged: true 386 resources: 387 requests: 388 cpu: "4000m" 389 memory: "6Gi" 390 annotations: 391 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 392 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 393 394 # Executes the e2e tests with latest k8s version. 395 - name: pull-cloud-provider-vsphere-e2e-test-on-latest-k8s-version 396 decorate: true 397 labels: 398 preset-dind-enabled: "true" 399 # Borrows CAPV credentials for cloud provider e2e testing 400 preset-cloud-provider-vsphere-e2e-config-capv: "true" 401 preset-cloud-provider-vsphere-e2e-config: "true" 402 preset-kind-volume-mounts: "true" 403 branches: 404 - ^master$ 405 path_alias: k8s.io/cloud-provider-vsphere 406 skip_submodules: true 407 always_run: false 408 run_if_changed: '\.go$|go.mod|hack/e2e\.sh|test/e2e/|charts/vsphere-cpi/' 409 skip_report: false 410 optional: true 411 spec: 412 containers: 413 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 414 command: 415 - runner.sh 416 args: 417 - ./hack/e2e.sh 418 - latest-k8s-version 419 securityContext: 420 privileged: true 421 resources: 422 requests: 423 cpu: "4000m" 424 memory: "6Gi" 425 annotations: 426 testgrid-dashboards: vmware-presubmits-cloud-provider-vsphere, presubmits-cloud-provider-vsphere-blocking 427 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 428 429 postsubmits: 430 kubernetes/cloud-provider-vsphere: 431 432 # Deploys the images and binaries after all merges to master 433 - name: post-cloud-provider-vsphere-deploy 434 decorate: true 435 labels: 436 preset-dind-enabled: "true" 437 preset-cloud-provider-vsphere-e2e-config: "true" 438 preset-kind-volume-mounts: "true" 439 max_concurrency: 1 440 branches: 441 - ^master$ 442 - ^release-.*$ 443 # Temporarily always pushing until workflow is worked out. 444 always_run: true 445 # Only build a new a image if something that could change binary changes 446 #run_if_changed: '^(cmd|pkg)\/|cluster\/images\/controller-manager\/Dockerfile|Makefile' 447 path_alias: k8s.io/cloud-provider-vsphere 448 skip_submodules: true 449 spec: 450 containers: 451 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 452 resources: 453 requests: 454 cpu: "1000m" 455 command: 456 - runner.sh 457 args: 458 - make 459 - release-push 460 securityContext: 461 privileged: true 462 annotations: 463 testgrid-dashboards: vmware-postsubmits-cloud-provider-vsphere 464 testgrid-tab-name: post-deploy 465 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 466 testgrid-num-columns-recent: '20' 467 description: Pushes new images and binaries from master 468 469 # Deploys images and binaries for tagged releases 470 - name: post-cloud-provider-vsphere-release 471 decorate: true 472 labels: 473 preset-dind-enabled: "true" 474 preset-cloud-provider-vsphere-e2e-config: "true" 475 preset-kind-volume-mounts: "true" 476 max_concurrency: 1 477 branches: 478 - ^v\d+\.\d+\.\d+(-(alpha|beta|rc)\.(\d)+)?$ 479 path_alias: k8s.io/cloud-provider-vsphere 480 skip_submodules: true 481 spec: 482 containers: 483 - image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20240515-17c6d50e24-master 484 resources: 485 requests: 486 cpu: "1000m" 487 command: 488 - runner.sh 489 args: 490 - make 491 - release-push 492 securityContext: 493 privileged: true 494 annotations: 495 testgrid-dashboards: vmware-postsubmits-cloud-provider-vsphere 496 testgrid-tab-name: release 497 testgrid-alert-email: k8s-testing-cloud-provider-vsphere+alerts@groups.vmware.com 498 description: releases new tagged images and binaries