github.com/mook-as/cf-cli@v7.0.0-beta.28.0.20200120190804-b91c115fae48+incompatible/ci/cli-v7/pipeline.yml (about) 1 --- 2 resource_types: 3 - name: slack-notification 4 type: docker-image 5 source: 6 repository: cfcommunity/slack-notification-resource 7 tag: latest 8 9 - name: terraform 10 type: docker-image 11 source: 12 repository: ljfranklin/terraform-resource 13 tag: latest 14 15 - name: bosh-deployment 16 type: docker-image 17 source: 18 repository: cloudfoundry/bosh-deployment-resource 19 20 resources: 21 - name: terraform 22 type: terraform 23 source: 24 backend_type: gcs 25 backend_config: 26 bucket: ((bosh-lite-storage-bucket)) 27 prefix: on_demand_terraform_state_files/ 28 credentials: ((bosh-lite-gcp-json-key)) 29 - name: capi-ci 30 type: git 31 source: 32 branch: master 33 uri: https://github.com/cloudfoundry/capi-ci 34 35 - name: bosh-deployment 36 type: git 37 source: 38 branch: master 39 uri: https://github.com/cloudfoundry/bosh-deployment 40 41 - name: cf-deploy 42 type: bosh-deployment 43 source: 44 skip_check: true 45 46 - name: cf-deployment 47 type: git 48 source: 49 uri: https://github.com/cloudfoundry/cf-deployment 50 tag_filter: v* 51 52 - name: cli 53 type: git 54 icon: console 55 source: 56 uri: https://github.com/cloudfoundry/cli 57 branch: master 58 59 - name: cli-i18n 60 type: git 61 source: 62 uri: https://github.com/cloudfoundry/cli-i18n 63 branch: master 64 65 - name: cli-ci 66 type: git 67 source: 68 uri: https://github.com/cloudfoundry/cli 69 branch: master 70 paths: 71 - bin 72 - ci 73 - integration 74 - README.md 75 - .github 76 77 - name: cli-integration 78 type: git 79 source: 80 uri: https://github.com/cloudfoundry/cli 81 branch: master 82 paths: 83 - api/cloudcontroller/ccversion 84 - integration 85 86 - name: cf-cli-binaries 87 type: s3 88 icon: folder 89 source: 90 bucket: ((staging-bucket-name)) 91 access_key_id: ((cli-team-aws-s3-access-key-id)) 92 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 93 versioned_file: "v7/cf-cli-binaries.tgz" 94 95 - name: edge-capi-release 96 type: s3 97 source: 98 bucket: capi-releases 99 regexp: capi-(.*)-.*-.*.tgz 100 101 - name: edge-linux-binary-32 102 type: s3 103 source: 104 bucket: v7-cf-cli-releases 105 access_key_id: ((cli-team-aws-s3-access-key-id)) 106 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 107 versioned_file: master/cf7-cli_edge_linux_i686.tgz 108 region_name: us-west-1 109 110 - name: edge-linux-binary-64 111 type: s3 112 source: 113 bucket: v7-cf-cli-releases 114 access_key_id: ((cli-team-aws-s3-access-key-id)) 115 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 116 versioned_file: master/cf7-cli_edge_linux_x86-64.tgz 117 region_name: us-west-1 118 119 - name: edge-osx-binary-64 120 type: s3 121 source: 122 bucket: v7-cf-cli-releases 123 access_key_id: ((cli-team-aws-s3-access-key-id)) 124 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 125 versioned_file: master/cf7-cli_edge_osx.tgz 126 region_name: us-west-1 127 128 - name: edge-windows-binary-32 129 type: s3 130 source: 131 bucket: v7-cf-cli-releases 132 access_key_id: ((cli-team-aws-s3-access-key-id)) 133 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 134 versioned_file: master/cf7-cli_edge_win32.zip 135 region_name: us-west-1 136 137 - name: edge-windows-binary-64 138 type: s3 139 source: 140 bucket: v7-cf-cli-releases 141 access_key_id: ((cli-team-aws-s3-access-key-id)) 142 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 143 versioned_file: master/cf7-cli_edge_winx64.zip 144 region_name: us-west-1 145 146 - name: edge-deb-installer-32 147 type: s3 148 source: 149 bucket: v7-cf-cli-releases 150 access_key_id: ((cli-team-aws-s3-access-key-id)) 151 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 152 versioned_file: master/cf7-cli-installer_edge_i686.deb 153 region_name: us-west-1 154 155 - name: edge-deb-installer-64 156 type: s3 157 source: 158 bucket: v7-cf-cli-releases 159 access_key_id: ((cli-team-aws-s3-access-key-id)) 160 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 161 versioned_file: master/cf7-cli-installer_edge_x86-64.deb 162 region_name: us-west-1 163 164 - name: edge-redhat-installer-32 165 type: s3 166 source: 167 bucket: v7-cf-cli-releases 168 access_key_id: ((cli-team-aws-s3-access-key-id)) 169 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 170 versioned_file: master/cf7-cli-installer_edge_i686.rpm 171 region_name: us-west-1 172 173 - name: edge-redhat-installer-64 174 type: s3 175 source: 176 bucket: v7-cf-cli-releases 177 access_key_id: ((cli-team-aws-s3-access-key-id)) 178 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 179 versioned_file: master/cf7-cli-installer_edge_x86-64.rpm 180 region_name: us-west-1 181 182 - name: edge-osx-installer-64 183 type: s3 184 source: 185 bucket: v7-cf-cli-releases 186 access_key_id: ((cli-team-aws-s3-access-key-id)) 187 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 188 versioned_file: master/cf7-cli-installer_edge_osx.pkg 189 region_name: us-west-1 190 191 - name: edge-windows-installer-32 192 type: s3 193 source: 194 bucket: v7-cf-cli-releases 195 access_key_id: ((cli-team-aws-s3-access-key-id)) 196 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 197 versioned_file: master/cf7-cli-installer_edge_win32.zip 198 region_name: us-west-1 199 200 - name: edge-windows-installer-64 201 type: s3 202 source: 203 bucket: v7-cf-cli-releases 204 access_key_id: ((cli-team-aws-s3-access-key-id)) 205 secret_access_key: ((cli-team-aws-s3-secret-access-key)) 206 versioned_file: master/cf7-cli-installer_edge_winx64.zip 207 region_name: us-west-1 208 209 - name: gcp-bosh-pool 210 type: pool 211 source: 212 uri: git@github.com:cloudfoundry/cli-pools 213 private_key: ((cli-pools-github-private-key)) 214 branch: master 215 pool: mashed-potato 216 217 - name: slack-alert 218 type: slack-notification 219 icon: slack 220 source: 221 url: ((vat-slack-webhook-url)) 222 223 - name: vars-store 224 type: git 225 source: 226 uri: git@github.com:cloudfoundry/cli-private 227 private_key: ((cli-private-github-private-key)) 228 branch: master 229 230 # values for this already exist in last pass, blocked on 231 # blocked on https://github.com/concourse/concourse/issues/1407 232 - name: cf-cli-tracker 233 type: tracker 234 source: 235 token: ((cf-cli-public-tracker-token)) 236 project_id: '2196383' 237 tracker_url: https://www.pivotaltracker.com 238 239 jobs: 240 - name: units 241 serial: true 242 plan: 243 - in_parallel: 244 - get: cli 245 trigger: true 246 - get: cli-ci 247 - in_parallel: 248 - task: lint 249 file: cli-ci/ci/cli-v7/tasks/lint.yml 250 on_failure: 251 put: slack-alert 252 params: 253 channel: '#v3-acceleration-team' 254 text: &slack_notification_text | 255 $BUILD_JOB_NAME failed :( 256 $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME - (Viewable internally only) 257 - task: units-linux 258 file: cli-ci/ci/cli-v7/tasks/units-linux.yml 259 on_failure: 260 put: slack-alert 261 params: 262 channel: '#v3-acceleration-team' 263 text: *slack_notification_text 264 - task: units-osx 265 file: cli-ci/ci/cli-v7/tasks/units-osx.yml 266 on_failure: 267 put: slack-alert 268 params: 269 channel: '#v3-acceleration-team' 270 text: *slack_notification_text 271 - task: units-windows 272 tags: [vat-windows] 273 file: cli-ci/ci/cli-v7/tasks/units-windows.yml 274 on_failure: 275 put: slack-alert 276 params: 277 channel: '#v3-acceleration-team' 278 text: *slack_notification_text 279 280 - name: build-binaries 281 serial: true 282 plan: 283 - in_parallel: 284 - get: cli 285 trigger: true 286 passed: [units] 287 - get: cli-ci 288 - get: cli-i18n 289 - task: build-i18n 290 file: cli-ci/ci/cli-v7/tasks/generate-i18n-resources.yml 291 on_failure: 292 put: slack-alert 293 params: 294 channel: '#v3-acceleration-team' 295 text: *slack_notification_text 296 - in_parallel: 297 - task: build 298 file: cli-ci/ci/cli-v7/tasks/build-binaries.yml 299 params: 300 TARGET_GO_VERSION: go1.13.4 301 on_failure: 302 put: slack-alert 303 params: 304 channel: '#v3-acceleration-team' 305 text: *slack_notification_text 306 - task: build-osx 307 file: cli-ci/ci/cli-v7/tasks/build-osx-binary.yml 308 params: 309 TARGET_GO_VERSION: go1.13.4 310 on_failure: 311 put: slack-alert 312 params: 313 channel: '#v3-acceleration-team' 314 text: *slack_notification_text 315 - task: combine-binaries 316 file: cli-ci/ci/cli-v7/tasks/combine-binaries.yml 317 - put: cf-cli-binaries 318 params: 319 file: compiled/cf-cli-binaries.tgz 320 321 - name: integration-linux 322 serial: true 323 plan: 324 - in_parallel: &integration_resources 325 - get: cli 326 passed: [build-binaries] 327 - get: cf-cli-binaries 328 passed: [build-binaries] 329 trigger: true 330 - get: cli-ci 331 - get: cli-integration 332 - get: vars-store 333 - put: bosh-lock 334 resource: gcp-bosh-pool 335 params: 336 acquire: true 337 - do: 338 - task: cleanup-integration 339 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 340 - task: integration 341 file: cli-ci/ci/cli-v7/tasks/integration-linux.yml 342 on_failure: 343 put: slack-alert 344 params: 345 channel: '#v3-acceleration-team' 346 text: *slack_notification_text 347 ensure: 348 task: cleanup-integration 349 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 350 params: &integration_params 351 CF_INT_CLIENT_ID: 'potato-face' 352 CF_INT_CLIENT_SECRET: ((client-secret)) 353 CF_INT_DOCKER_IMAGE: ((dockerhub-private-image)) 354 CF_INT_DOCKER_USERNAME: ((dockerhub-username)) 355 CF_INT_DOCKER_PASSWORD: ((dockerhub-password)) 356 CF_INT_IGNORE_API_VERSION_CHECK: false 357 ensure: 358 put: gcp-bosh-pool 359 params: 360 release: bosh-lock 361 362 - name: integration-linux-bosh-lite 363 plan: 364 - in_parallel: 365 - get: bosh-deployment 366 - get: capi-ci 367 - get: cf-deployment 368 - get: cli 369 passed: [build-binaries] 370 - get: cf-cli-binaries 371 passed: [build-binaries] 372 trigger: true 373 - get: cli-ci 374 - get: cli-integration 375 - get: edge-capi-release 376 - get: vars-store 377 - do: 378 - put: terraform 379 params: 380 generate_random_name: true 381 delete_on_failure: true 382 terraform_source: capi-ci/terraform/bosh-lite/ 383 vars: 384 project_id: ((bosh-lite-project-id)) 385 json_key: ((bosh-lite-gcp-json-key)) 386 dns_project_id: ((bosh-lite-project-id)) 387 dns_json_key: ((bosh-lite-gcp-json-key)) 388 system_domain_suffix: ((bosh-lite-system-domain-suffix)) 389 dns_zone_name: ((bosh-lite-dns-zone-name)) 390 - do: 391 - task: create-bosh-lite 392 file: capi-ci/ci/bosh-lite/create-bosh-lite.yml 393 params: 394 GCP_JSON_KEY: ((bosh-lite-gcp-json-key)) 395 GCP_INSTANCE_TYPE: n1-highmem-16 396 - do: 397 - task: create-env-vars-file 398 file: capi-ci/ci/bosh-lite/create-env-vars-file.yml 399 - task: upload-cf-assets 400 file: capi-ci/ci/bosh-lite/upload-cf-assets.yml 401 - task: write-bosh-target-file 402 file: capi-ci/ci/bosh-lite/write-bosh-target-file.yml 403 - put: cf-deploy 404 params: 405 source_file: bosh-target/target.yml 406 manifest: cf-deployment/cf-deployment.yml 407 vars_files: 408 - bosh-target/vars.yml 409 var_files: 410 edge_capi_url: edge-capi-release/url 411 vars: 412 client-secret: ((client-secret)) 413 ops_files: 414 - capi-ci/cf-deployment-operations/skip-cert-verify.yml 415 - capi-ci/cf-deployment-operations/use-latest-stemcell.yml 416 - cf-deployment/operations/bosh-lite.yml 417 - cf-deployment/operations/use-compiled-releases.yml 418 - cf-deployment/operations/test/add-persistent-isolation-segment-diego-cell.yml 419 - cf-deployment/operations/test/add-persistent-isolation-segment-diego-cell-bosh-lite.yml 420 - cf-deployment/operations/use-internal-lookup-for-route-services.yml 421 - capi-ci/cf-deployment-operations/seed-credhub-asg.yml 422 - cli/ci/infrastructure/operations/default-app-memory.yml 423 - cli/ci/infrastructure/operations/add-oidc-provider.yml 424 - cli/ci/infrastructure/operations/add-uaa-client-cf-custom.yml 425 - cli/ci/infrastructure/operations/give-cf-admin-clients-read-scope.yml 426 - cli-ci/ci/infrastructure/operations/use-edge-capi.yml 427 - cli-ci/ci/infrastructure/operations/add-uaa-client-credentials.yml 428 - task: upload-to-gcs 429 file: capi-ci/ci/gcs/upload-to-gcs.yml 430 input_mapping: 431 environment: terraform 432 source-directory: director-state 433 params: 434 GCP_JSON_KEY: ((bosh-lite-gcp-json-key)) 435 GCP_BUCKET: ((bosh-lite-storage-bucket)) 436 GCP_PATH: director-state 437 USE_ENV_NAMED_SUBDIR: true 438 on_failure: 439 task: delete-bosh-lite 440 file: capi-ci/ci/bosh-lite/delete-bosh-lite.yml 441 on_failure: 442 put: terraform 443 params: 444 action: destroy 445 env_name_file: terraform/name 446 terraform_source: capi-ci/terraform/bosh-lite/ 447 vars: 448 project_id: ((bosh-lite-project-id)) 449 json_key: ((bosh-lite-gcp-json-key)) 450 dns_project_id: ((bosh-lite-project-id)) 451 dns_json_key: ((bosh-lite-gcp-json-key)) 452 system_domain_suffix: ((bosh-lite-system-domain-suffix)) 453 dns_zone_name: ((bosh-lite-dns-zone-name)) 454 get_params: 455 action: destroy 456 - do: 457 - task: integration 458 file: cli-ci/ci/cli-v7/tasks/integration-linux-bosh-lite.yml 459 on_failure: 460 put: slack-alert 461 params: 462 channel: '#v3-acceleration-team' 463 text: *slack_notification_text 464 params: *integration_params 465 ensure: 466 do: 467 - task: delete-bosh-lite 468 file: capi-ci/ci/bosh-lite/delete-bosh-lite.yml 469 - put: terraform 470 params: 471 action: destroy 472 env_name_file: terraform/name 473 terraform_source: capi-ci/terraform/bosh-lite/ 474 vars: 475 project_id: ((bosh-lite-project-id)) 476 json_key: ((bosh-lite-gcp-json-key)) 477 dns_project_id: ((bosh-lite-project-id)) 478 dns_json_key: ((bosh-lite-gcp-json-key)) 479 system_domain_suffix: ((bosh-lite-system-domain-suffix)) 480 dns_zone_name: ((bosh-lite-dns-zone-name)) 481 get_params: 482 action: destroy 483 - name: integration-linux-client-creds 484 serial: true 485 plan: 486 - in_parallel: *integration_resources 487 - do: 488 - task: cleanup-integration 489 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 490 - task: integration 491 file: cli-ci/ci/cli-v7/tasks/integration-linux.yml 492 on_failure: 493 put: slack-alert 494 params: 495 channel: '#v3-acceleration-team' 496 text: *slack_notification_text 497 ensure: 498 task: cleanup-integration 499 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 500 params: 501 <<: *integration_params 502 CF_INT_CLIENT_CREDENTIALS_TEST_MODE: true 503 ensure: 504 put: gcp-bosh-pool 505 params: 506 release: bosh-lock 507 508 - name: integration-windows 509 serial: true 510 plan: 511 - in_parallel: *integration_resources 512 - do: 513 - task: cleanup-integration 514 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 515 - task: integration 516 tags: [vat-windows] 517 file: cli-ci/ci/cli-v7/tasks/integration-windows.yml 518 params: 519 <<: *integration_params 520 input_mapping: 521 cf-credentials: cleanup-integration-outputs 522 on_failure: 523 put: slack-alert 524 params: 525 channel: '#v3-acceleration-team' 526 text: *slack_notification_text 527 ensure: 528 task: cleanup-integration 529 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 530 ensure: 531 put: gcp-bosh-pool 532 params: 533 release: bosh-lock 534 535 - name: integration-windows-client-creds 536 serial: true 537 plan: 538 - in_parallel: *integration_resources 539 - do: 540 - task: cleanup-integration 541 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 542 - task: integration 543 tags: [vat-windows] 544 file: cli-ci/ci/cli-v7/tasks/integration-windows.yml 545 params: 546 <<: *integration_params 547 CF_INT_CLIENT_CREDENTIALS_TEST_MODE: true 548 input_mapping: 549 cf-credentials: cleanup-integration-outputs 550 on_failure: 551 put: slack-alert 552 params: 553 channel: '#v3-acceleration-team' 554 text: *slack_notification_text 555 ensure: 556 task: cleanup-integration 557 file: cli-ci/ci/cli-v7/tasks/cleanup-integration.yml 558 ensure: 559 put: gcp-bosh-pool 560 params: 561 release: bosh-lock 562 563 - name: create-installers 564 serial: true 565 plan: 566 - in_parallel: 567 - get: cli 568 passed: 569 - integration-linux 570 - integration-linux-client-creds 571 - integration-windows 572 - integration-windows-client-creds 573 - get: cf-cli-binaries 574 passed: 575 - integration-linux 576 - integration-linux-client-creds 577 - integration-windows 578 - integration-windows-client-creds 579 trigger: true 580 - get: cli-ci 581 - task: extract-binaries 582 file: cli-ci/ci/cli-v7/tasks/extract-binaries.yml 583 on_failure: 584 put: slack-alert 585 params: 586 channel: '#v3-acceleration-team' 587 text: | 588 extracting the binaries in installer creation failed :bart: 589 $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME 590 - in_parallel: 591 - task: unix 592 file: cli-ci/ci/cli-v7/tasks/create-installers.yml 593 on_failure: 594 put: slack-alert 595 params: 596 channel: '#v3-acceleration-team' 597 text: | 598 :ubuntu: create unix installers failed :redhat: 599 $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME 600 - task: windows 601 tags: [vat-windows] 602 file: cli-ci/ci/cli-v7/tasks/create-installers-windows.yml 603 on_failure: 604 put: slack-alert 605 params: 606 channel: '#v3-acceleration-team' 607 text: | 608 create windows installer failed :winc: 609 $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME 610 - task: package-binaries 611 file: cli-ci/ci/cli-v7/tasks/package-binaries.yml 612 on_failure: 613 put: slack-alert 614 params: 615 channel: '#v3-acceleration-team' 616 text: | 617 extracting the binaries in installer creation failed :package: 618 $ATC_EXTERNAL_URL/teams/$BUILD_TEAM_NAME/pipelines/$BUILD_PIPELINE_NAME/jobs/$BUILD_JOB_NAME/builds/$BUILD_NAME 619 - in_parallel: 620 - put: edge-linux-binary-32 621 params: 622 file: archives/cf7-cli_edge_linux_i686.tgz 623 - put: edge-linux-binary-64 624 params: 625 file: archives/cf7-cli_edge_linux_x86-64.tgz 626 - put: edge-osx-binary-64 627 params: 628 file: archives/cf7-cli_edge_osx.tgz 629 - put: edge-windows-binary-32 630 params: 631 file: archives/cf7-cli_edge_win32.zip 632 - put: edge-windows-binary-64 633 params: 634 file: archives/cf7-cli_edge_winx64.zip 635 - put: edge-deb-installer-32 636 params: 637 file: archives/cf7-cli-installer_i686.deb 638 - put: edge-deb-installer-64 639 params: 640 file: archives/cf7-cli-installer_x86-64.deb 641 - put: edge-redhat-installer-32 642 params: 643 file: archives/cf7-cli-installer_i686.rpm 644 - put: edge-redhat-installer-64 645 params: 646 file: archives/cf7-cli-installer_x86-64.rpm 647 - put: edge-osx-installer-64 648 params: 649 file: archives/cf7-cli-installer_osx.pkg 650 - put: edge-windows-installer-32 651 params: 652 file: winstallers/cf7-cli-installer_win32.zip 653 - put: edge-windows-installer-64 654 params: 655 file: winstallers/cf7-cli-installer_winx64.zip 656 657 - name: deliver-stories 658 serial: true 659 plan: 660 - get: cli 661 passed: 662 - integration-linux 663 - integration-windows 664 - integration-linux-client-creds 665 - integration-windows-client-creds 666 trigger: true 667 - put: cf-cli-tracker 668 params: 669 repos: 670 - cli