diff --git a/.github/ops-files/add-oidc-provider.yml b/.github/ops-files/add-oidc-provider.yml new file mode 100644 index 00000000000..2ad7e21a443 --- /dev/null +++ b/.github/ops-files/add-oidc-provider.yml @@ -0,0 +1,155 @@ +--- +- type: replace + path: /instance_groups/name=uaa/jobs/name=uaa/properties/login/oauth?/providers? + value: + cli-oidc-provider: + type: oidc1.0 + discoveryUrl: https://uaa-oidc.service.cf.internal:8443/.well-known/openid-configuration + scopes: + - openid + linkText: My other uaa Oauth Provider + showLinkText: true + addShadowUserOnLogin: true + relyingPartyId: rp_oidc_admin + relyingPartySecret: adminsecret + skipSslValidation: true + storeCustomAttributes: true + passwordGrantEnabled: true + attributeMappings: + given_name: given_name + family_name: family_name + user_name: user_name + +- type: replace + path: /instance_groups/name=uaa:after + value: + name: uaa-oidc + instances: 1 + azs: [z1, z2, z3] + vm_type: default + stemcell: default + persistent_disk: 500 + networks: + - name: default + jobs: + - name: uaa + release: uaa + properties: + encryption: + active_key_label: 'key-1' + encryption_keys: + - label: 'key-1' + passphrase: 'MY-PASSPHRASE' + uaadb: + address: sql-db.service.cf.internal + databases: + - name: uaa_oidc + tag: uaa + db_scheme: mysql + port: 3306 + roles: + - name: uaa-oidc + password: "((uaa_oidc_database_password))" + tag: admin + uaa: + url: https://uaa-oidc.service.cf.internal:8443 + jwt: + policy: + active_key_id: key-1 + keys: + key-1: + signingKey: ((uaa-oidc-key1.private_key)) + sslCertificate: ((uaa-oidc_tls.certificate)) + sslPrivateKey: ((uaa-oidc_tls.private_key)) + ca_certs: + - ((mysql_server_certificate.ca)) + clients: + rp_oidc_admin: + authorized-grant-types: authorization_code,client_credentials,refresh_token,user_token,password,urn:ietf:params:oauth:grant-type:saml2-bearer,implicit + redirect-uri: https://uaa.service.cf.internal:8443/login/callback/cli-oidc-provider + scope: openid,uaa.admin,clients.read,clients.write,clients.secret,scim.read,scim.write,clients.admin,uaa.user,doppler.firehose + authorities: uaa.admin,clients.admin + secret: adminsecret + scim: + user: + override: true + users: + - name: admin-oidc + password: "((uaa_oidc_admin_password))" + groups: + - uaa.admin + login: + protocol: https + saml: + activeKeyId: key1 + keys: + key1: + key: ((saml_oidc-key1.private_key)) + passphrase: '' + certificate: ((saml_oidc-key1.certificate)) + +- type: replace + path: /addons/name=bosh-dns-aliases/jobs/name=bosh-dns-aliases/properties/aliases/- + value: + domain: uaa-oidc.service.cf.internal + targets: + - query: '*' + instance_group: uaa-oidc + deployment: cf + network: default + domain: bosh + +- type: replace + path: /instance_groups/name=database/jobs/name=pxc-mysql/properties/seeded_databases?/- + value: + name: uaa_oidc + username: uaa-oidc + password: "((uaa_oidc_database_password))" + +- type: replace + path: /variables?/- + value: + name: uaa_oidc_admin_password + type: password + +- type: replace + path: /variables?/- + value: + name: uaa_oidc_database_password + type: password + +- type: replace + path: /variables?/- + value: + name: uaa-oidc-key1 + type: rsa + +- type: replace + path: /variables?/- + value: + name: uaa-oidc_ca + type: certificate + options: + is_ca: true + common_name: uaa-oidc + alternative_names: ["*.uaa-oidc.service.cf.internal"] + extended_key_usage: + - server_auth + +- type: replace + path: /variables?/- + value: + name: saml_oidc-key1 + type: certificate + options: + ca: uaa-oidc_ca + common_name: saml_oidc + +- type: replace + path: /variables?/- + value: + name: uaa-oidc_tls + type: certificate + options: + ca: uaa-oidc_ca + common_name: uaa-oidc.service.cf.internal diff --git a/.github/ops-files/add-uaa-client-credentials.yml b/.github/ops-files/add-uaa-client-credentials.yml new file mode 100644 index 00000000000..68a9f060850 --- /dev/null +++ b/.github/ops-files/add-uaa-client-credentials.yml @@ -0,0 +1,11 @@ +--- +- type: replace + path: /instance_groups/name=uaa/jobs/name=uaa/properties/uaa/clients/potato-face? + value: + access-token-validity: 600 + authorized-grant-types: client_credentials + override: true + secret: ((client-secret)) + scope: openid,routing.router_groups.write,scim.read,cloud_controller.admin,uaa.user,routing.router_groups.read,cloud_controller.read,password.write,cloud_controller.write,network.admin,doppler.firehose,scim.write,uaa.admin + authorities: openid,routing.router_groups.write,scim.read,cloud_controller.admin,uaa.user,routing.router_groups.read,cloud_controller.read,password.write,cloud_controller.write,network.admin,doppler.firehose,scim.write,uaa.admin + diff --git a/.github/ops-files/diego-cell-instances.yml b/.github/ops-files/diego-cell-instances.yml new file mode 100644 index 00000000000..87d715d696c --- /dev/null +++ b/.github/ops-files/diego-cell-instances.yml @@ -0,0 +1,4 @@ +--- +- type: replace + path: /instance_groups/name=diego-cell/instances + value: 3 diff --git a/.github/ops-files/use-cflinuxfs3.yml b/.github/ops-files/use-cflinuxfs3.yml deleted file mode 100644 index 5e52e190372..00000000000 --- a/.github/ops-files/use-cflinuxfs3.yml +++ /dev/null @@ -1,105 +0,0 @@ -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/diego/droplet_destinations/cflinuxfs3? - value: /home/vcap -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/diego/lifecycle_bundles/buildpack~1cflinuxfs3? - value: buildpack_app_lifecycle/buildpack_app_lifecycle.tgz -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/stacks/name=cflinuxfs4:before - value: - description: Cloud Foundry Linux-based filesystem (Ubuntu 18.04) - name: cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/0:before - value: - name: staticfile_buildpack - package: staticfile-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/0:after - value: - name: java_buildpack - package: java-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/1:after - value: - name: ruby_buildpack - package: ruby-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/2:after - value: - name: dotnet_core_buildpack - package: dotnet-core-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/3:after - value: - name: nodejs_buildpack - package: nodejs-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/4:after - value: - name: go_buildpack - package: go-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/5:after - value: - name: python_buildpack - package: python-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/6:after - value: - name: php_buildpack - package: php-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/7:after - value: - name: nginx_buildpack - package: nginx-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/8:after - value: - name: r_buildpack - package: r-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=api/jobs/name=cloud_controller_ng/properties/cc/install_buildpacks/9:after - value: - name: binary_buildpack - package: binary-buildpack-cflinuxfs3 -- type: replace - path: /instance_groups/name=cc-worker/jobs/name=cloud_controller_worker/properties/cc/diego/droplet_destinations/cflinuxfs3? - value: /home/vcap -- type: replace - path: /instance_groups/name=cc-worker/jobs/name=cloud_controller_worker/properties/cc/diego/lifecycle_bundles/buildpack~1cflinuxfs3? - value: buildpack_app_lifecycle/buildpack_app_lifecycle.tgz -- type: replace - path: /instance_groups/name=scheduler/jobs/name=cloud_controller_clock/properties/cc/diego/droplet_destinations/cflinuxfs3? - value: /home/vcap -- type: replace - path: /instance_groups/name=scheduler/jobs/name=cloud_controller_clock/properties/cc/diego/lifecycle_bundles/buildpack~1cflinuxfs3? - value: buildpack_app_lifecycle/buildpack_app_lifecycle.tgz -- type: replace - path: /instance_groups/name=scheduler/jobs/name=cc_deployment_updater/properties/cc/diego/droplet_destinations/cflinuxfs3? - value: /home/vcap -- type: replace - path: /instance_groups/name=scheduler/jobs/name=cc_deployment_updater/properties/cc/diego/lifecycle_bundles/buildpack~1cflinuxfs3? - value: buildpack_app_lifecycle/buildpack_app_lifecycle.tgz -- type: replace - path: /instance_groups/name=diego-cell/jobs/name=cflinuxfs3-rootfs-setup? - value: - name: cflinuxfs3-rootfs-setup - properties: - cflinuxfs3-rootfs: - trusted_certs: - - ((diego_instance_identity_ca.ca)) - - ((credhub_tls.ca)) - - ((uaa_ssl.ca)) - release: cflinuxfs3 -- type: replace - path: /instance_groups/name=diego-cell/jobs/name=rep/properties/diego/rep/preloaded_rootfses/0:before - value: cflinuxfs3:/var/vcap/packages/cflinuxfs3/rootfs.tar -- type: replace - path: /releases/name=cflinuxfs4:before - value: - name: cflinuxfs3 - sha1: 5463400cd5490e9d847326668d504a8833cf3e4e - url: https://bosh.io/d/github.com/cloudfoundry/cflinuxfs3-release?v=0.369.0 - version: 0.369.0 diff --git a/.github/ops-files/use-latest-capi.yml b/.github/ops-files/use-latest-capi.yml new file mode 100644 index 00000000000..216b9df70c0 --- /dev/null +++ b/.github/ops-files/use-latest-capi.yml @@ -0,0 +1,10 @@ +--- +- type: replace + path: /releases/name=capi/version + value: latest + +- type: remove + path: /releases/name=capi/url? + +- type: remove + path: /releases/name=capi/sha1? diff --git a/.github/workflows/tests-integration-reusable.yml b/.github/workflows/tests-integration-reusable.yml index 7e469d4b3a2..99fdf33c45f 100644 --- a/.github/workflows/tests-integration-reusable.yml +++ b/.github/workflows/tests-integration-reusable.yml @@ -10,9 +10,6 @@ name: "pvt: run integration tests" on: workflow_call: inputs: - capi-version: - required: true - type: string run-with-client-creds: required: true type: boolean @@ -45,38 +42,16 @@ jobs: with: ref: ${{inputs.gitRef}} - - name: Checkout cli-ci - uses: actions/checkout@v4 - with: - repository: cloudfoundry/cli-ci - path: cli-ci - - name: Checkout cf-acceptance-tests + if: ${{ inputs.name == 'cats' }} uses: actions/checkout@v4 with: repository: cloudfoundry/cf-acceptance-tests ref: release-candidate path: cf-acceptance-tests - - id: read-min-capi - name: Read MIN CAPI - run: | - wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq &&\ - chmod +x /usr/bin/yq - version=$(yq '.capi-version-min' build_data.yml) - echo "version=$version" >> $GITHUB_OUTPUT - - - name: Checkout cf-deployment Min CAPI - if: ${{ inputs.capi-version != 'edge' }} - uses: actions/checkout@v4 - with: - repository: cloudfoundry/cf-deployment - path: cf-deployment - ref: ${{ steps.read-min-capi.outputs.version }} - - name: Checkout cf-deployment uses: actions/checkout@v4 - if: ${{ inputs.capi-version == 'edge' }} with: repository: cloudfoundry/cf-deployment path: cf-deployment @@ -96,7 +71,7 @@ jobs: run: | shepherd login service-account ${account_token} - echo "shepherd create lease --duration 8h --pool ${pool_name} --pool-namespace ${pool_namespace} --namespace tas-devex" + echo "shepherd create lease --duration 8h --pool ${pool_name} --pool-namespace ${pool_namespace} --namespace tas-devex --description 'CLI GHA'" lease_id=$(shepherd create lease --duration 8h --pool ${pool_name} --pool-namespace ${pool_namespace} --namespace tas-devex --json | jq -r .id) # Give sometime for the lease to complete. Shepherd may take upto an 3 hours to create an env # if the pool is empty. @@ -160,9 +135,14 @@ jobs: apt-get install -y build-essential unzip - name: Upload latest CAPI release - if: ${{ inputs.capi-version == 'edge' }} + env: + capi_release_version: ${{ vars.CAPI_RELEASE_VERSION }} run: | - capi_release_version=$(curl -s https://api.github.com/repos/cloudfoundry/capi-release/releases/latest | jq -r .tag_name) + if [ -z "$capi_release_version" ] + then + capi_release_version=$(curl -s https://api.github.com/repos/cloudfoundry/capi-release/releases/latest | jq -r .tag_name) + fi + echo "Latest CAPI release is $capi_release_version" eval "$(bbl print-env --metadata-file metadata.json)" @@ -172,7 +152,6 @@ jobs: bosh upload-release "https://bosh.io/d/github.com/cloudfoundry/capi-release?v=$capi_release_version" - name: Deploy Isolation Segment and OIDC Provider - if: ${{ inputs.capi-version == 'edge' }} run: | env_name=$(jq -r .name metadata.json) jq -r .bosh.jumpbox_private_key metadata.json > /tmp/${env_name}.priv @@ -181,36 +160,13 @@ jobs: # deploy bosh -d cf manifest > /tmp/manifest.yml bosh interpolate /tmp/manifest.yml \ - -o .github/ops-files/use-cflinuxfs3.yml \ - -o .github/ops-files/replace-redis.yml \ -o cf-deployment/operations/use-internal-lookup-for-route-services.yml \ -o cf-deployment/operations/add-persistent-isolation-segment-diego-cell.yml \ - -o cli-ci/ci/infrastructure/operations/use-latest-capi.yml \ - -o cli-ci/ci/infrastructure/operations/add-oidc-provider.yml \ - -o cli-ci/ci/infrastructure/operations/add-uaa-client-credentials.yml \ - -o cli-ci/ci/infrastructure/operations/diego-cell-instances.yml \ - -v client-secret="${{ secrets.CLIENT_SECRET }}" \ - > ./director.yml - - bosh -d cf deploy director.yml -n - echo "Deployed CAPI version:" - bosh -d cf releases | grep capi - - - name: Deploy MIN CAPI with Isolation Segment and OIDC Provider - if: ${{ inputs.capi-version != 'edge' }} - run: | - env_name=$(jq -r .name metadata.json) - jq -r .bosh.jumpbox_private_key metadata.json > /tmp/${env_name}.priv - eval "$(bbl print-env --metadata-file metadata.json)" - - # deploy - bosh -d cf manifest > /tmp/manifest.yml - bosh interpolate /tmp/manifest.yml \ - -o cf-deployment/operations/test/add-persistent-isolation-segment-diego-cell.yml \ - -o cli-ci/ci/infrastructure/operations/add-oidc-provider.yml \ - -o cli-ci/ci/infrastructure/operations/add-uaa-client-credentials.yml \ - -o cli-ci/ci/infrastructure/operations/diego-cell-instances.yml \ - -o cli-ci/ci/infrastructure/operations/use-latest-ruby-buildpack.yml \ + -o .github/ops-files/replace-redis.yml \ + -o .github/ops-files/use-latest-capi.yml \ + -o .github/ops-files/add-oidc-provider.yml \ + -o .github/ops-files/add-uaa-client-credentials.yml \ + -o .github/ops-files/diego-cell-instances.yml \ -v client-secret="${{ secrets.CLIENT_SECRET }}" \ > ./director.yml diff --git a/.github/workflows/tests-integration.yml b/.github/workflows/tests-integration.yml index 0e6eb294da5..4da7454fc4e 100644 --- a/.github/workflows/tests-integration.yml +++ b/.github/workflows/tests-integration.yml @@ -13,7 +13,6 @@ on: - all - run-integration-tests-cf-env - run-integration-tests-cf-env-with-client-creds - # - run-integration-tests-cf-env-with-min-capi - run-cats-cf-env push: tags: @@ -73,7 +72,6 @@ jobs: if: ${{ github.event_name != 'workflow_dispatch' || inputs.workflow == 'all' || inputs.workflow == 'run-integration-tests-cf-env' }} uses: ./.github/workflows/tests-integration-reusable.yml with: - capi-version: edge run-with-client-creds: false os: ubuntu-latest name: Integration @@ -88,30 +86,12 @@ jobs: if: ${{ github.event_name != 'workflow_dispatch' || inputs.workflow == 'all' || inputs.workflow == 'run-integration-tests-cf-env-with-client-creds' }} uses: ./.github/workflows/tests-integration-reusable.yml with: - capi-version: edge run-with-client-creds: true os: ubuntu-latest name: Integration client creds gitRef: ${{needs.get-sha.outputs.gitRef}} secrets: inherit - # run-integration-tests-cf-env-with-min-capi: - # name: MIN CAPI - # needs: - # - get-sha - # - units - # if: ${{ github.event_name != 'workflow_dispatch' || inputs.workflow == 'all' || inputs.workflow == 'run-integration-tests-cf-env-with-min-capi' }} - # uses: ./.github/workflows/tests-integration-reusable.yml - # with: - # capi-version: min - # run-with-client-creds: false - # os: ubuntu-latest - # name: Integration MIN CAPI - # pool-name: cfd_16_11_0 - # pool-namespace: tas-devex - # is-pr: ${{ github.event_name != 'workflow_dispatch' }} - # secrets: inherit - run-cats-cf-env: name: CATS needs: @@ -121,7 +101,6 @@ jobs: if: ${{ github.event_name != 'workflow_dispatch' || inputs.workflow == 'all' || inputs.workflow == 'run-cats-cf-env' }} uses: ./.github/workflows/tests-integration-reusable.yml with: - capi-version: edge run-with-client-creds: false os: ubuntu-latest name: cats diff --git a/actor/v7pushaction/handle_stack_override_test.go b/actor/v7pushaction/handle_stack_override_test.go index 8d7ebb32f93..a7dd434f7be 100644 --- a/actor/v7pushaction/handle_stack_override_test.go +++ b/actor/v7pushaction/handle_stack_override_test.go @@ -51,7 +51,7 @@ var _ = Describe("HandleStackOverride", func() { originalManifest.Applications = []manifestparser.Application{ { - Stack: "cflinuxfs3", + Stack: "cflinuxfs4", }, } }) diff --git a/api/cloudcontroller/ccv3/buildpack_test.go b/api/cloudcontroller/ccv3/buildpack_test.go index 735a99fb0f3..9ef09c56dc9 100644 --- a/api/cloudcontroller/ccv3/buildpack_test.go +++ b/api/cloudcontroller/ccv3/buildpack_test.go @@ -68,7 +68,7 @@ var _ = Describe("Buildpacks", func() { "guid": "guid2", "name": "staticfile_buildpack", "state": "AWAITING_UPLOAD", - "stack": "cflinuxfs3", + "stack": "cflinuxfs4", "position": 2, "enabled": false, "locked": true, @@ -87,7 +87,7 @@ var _ = Describe("Buildpacks", func() { "guid": "guid3", "name": "go_buildpack", "state": "AWAITING_UPLOAD", - "stack": "cflinuxfs2", + "stack": "cflinuxfs4", "position": 3, "enabled": true, "locked": false, @@ -137,7 +137,7 @@ var _ = Describe("Buildpacks", func() { Position: types.NullInt{Value: 2, IsSet: true}, Enabled: types.NullBool{Value: false, IsSet: true}, Locked: types.NullBool{Value: true, IsSet: true}, - Stack: "cflinuxfs3", + Stack: "cflinuxfs4", State: "AWAITING_UPLOAD", Metadata: &Metadata{Labels: map[string]types.NullString{}}, }, @@ -147,7 +147,7 @@ var _ = Describe("Buildpacks", func() { Position: types.NullInt{Value: 3, IsSet: true}, Enabled: types.NullBool{Value: true, IsSet: true}, Locked: types.NullBool{Value: false, IsSet: true}, - Stack: "cflinuxfs2", + Stack: "cflinuxfs4", State: "AWAITING_UPLOAD", Metadata: &Metadata{Labels: map[string]types.NullString{}}, }, diff --git a/cf/commands/buildpack/buildpacks_test.go b/cf/commands/buildpack/buildpacks_test.go index d50f0314699..2b9c00fc954 100644 --- a/cf/commands/buildpack/buildpacks_test.go +++ b/cf/commands/buildpack/buildpacks_test.go @@ -79,7 +79,7 @@ var _ = Describe("ListBuildpacks", func() { p3 := 15 t := true f := false - linux := "cflinuxfs2" + linux := "cflinuxfs4" buildpackRepo.Buildpacks = []models.Buildpack{ {Name: "Buildpack-1", Stack: linux, Position: &p1, Enabled: &t, Locked: &f}, @@ -92,9 +92,9 @@ var _ = Describe("ListBuildpacks", func() { Expect(ui.Outputs()).To(ContainSubstrings( []string{"Getting buildpacks"}, []string{"buildpack", "stack", "position", "enabled"}, - []string{"Buildpack-1", "cflinuxfs2", "5", "true", "false"}, - []string{"Buildpack-2", "cflinuxfs2", "10", "false", "true"}, - []string{"Buildpack-3", "cflinuxfs2", "15", "true", "false"}, + []string{"Buildpack-1", "cflinuxfs4", "5", "true", "false"}, + []string{"Buildpack-2", "cflinuxfs4", "10", "false", "true"}, + []string{"Buildpack-3", "cflinuxfs4", "15", "true", "false"}, )) }) diff --git a/command/v7/app_command_test.go b/command/v7/app_command_test.go index 0bdd6544a2c..c64703644a7 100644 --- a/command/v7/app_command_test.go +++ b/command/v7/app_command_test.go @@ -203,7 +203,7 @@ var _ = Describe("app Command", func() { }, }, CurrentDroplet: resources.Droplet{ - Stack: "cflinuxfs2", + Stack: "cflinuxfs4", Buildpacks: []resources.DropletBuildpack{ { Name: "ruby_buildpack", diff --git a/command/v7/label_updater_test.go b/command/v7/label_updater_test.go index 8c07196e533..94843b12d5a 100644 --- a/command/v7/label_updater_test.go +++ b/command/v7/label_updater_test.go @@ -131,7 +131,7 @@ var _ = Describe("LabelUpdater", func() { func(resourceType string) { targetResource = TargetResource{ ResourceType: resourceType, - BuildpackStack: "cflinuxfs3", + BuildpackStack: "cflinuxfs4", } err := cmd.Execute(targetResource, nil) diff --git a/command/v7/labels_command.go b/command/v7/labels_command.go index 4b371508558..1899b43f83c 100644 --- a/command/v7/labels_command.go +++ b/command/v7/labels_command.go @@ -116,7 +116,7 @@ func (cmd LabelsCommand) Examples() string { return ` cf labels app dora cf labels org business -cf labels buildpack go_buildpack --stack cflinuxfs3` +cf labels buildpack go_buildpack --stack cflinuxfs4` } func (cmd LabelsCommand) Resources() string { diff --git a/command/v7/labels_command_test.go b/command/v7/labels_command_test.go index 09dba552751..e854d678704 100644 --- a/command/v7/labels_command_test.go +++ b/command/v7/labels_command_test.go @@ -73,7 +73,7 @@ var _ = Describe("labels command", func() { "Failure when --stack is combined with anything other than 'buildpack'", func(resourceType string) { cmd.RequiredArgs.ResourceType = resourceType - cmd.BuildpackStack = "cflinuxfs3" + cmd.BuildpackStack = "cflinuxfs4" executeErr = cmd.Execute(nil) @@ -751,14 +751,14 @@ var _ = Describe("labels command", func() { ResourceType: "buildpack", ResourceName: "oshkosh", } - cmd.BuildpackStack = "cflinuxfs3" + cmd.BuildpackStack = "cflinuxfs4" }) It("retrieves the labels when resource type is buildpack", func() { Expect(executeErr).ToNot(HaveOccurred()) Expect(fakeLabelsActor.GetBuildpackLabelsCallCount()).To(Equal(1)) buildpackName, stackName := fakeLabelsActor.GetBuildpackLabelsArgsForCall(0) Expect(buildpackName).To(Equal("oshkosh")) - Expect(stackName).To(Equal("cflinuxfs3")) + Expect(stackName).To(Equal("cflinuxfs4")) }) }) }) diff --git a/command/v7/set_label_command.go b/command/v7/set_label_command.go index 05f833e058d..06522547b4f 100644 --- a/command/v7/set_label_command.go +++ b/command/v7/set_label_command.go @@ -72,7 +72,7 @@ func (cmd SetLabelCommand) Examples() string { return ` cf set-label app dora env=production cf set-label org business pci=true public-facing=false -cf set-label buildpack go_buildpack go=1.12 -s cflinuxfs3` +cf set-label buildpack go_buildpack go=1.12 -s cflinuxfs4` } func (cmd SetLabelCommand) Resources() string { diff --git a/command/v7/shared/app_summary_displayer_test.go b/command/v7/shared/app_summary_displayer_test.go index 9bf41061b14..18fd016a264 100644 --- a/command/v7/shared/app_summary_displayer_test.go +++ b/command/v7/shared/app_summary_displayer_test.go @@ -615,7 +615,7 @@ var _ = Describe("app summary displayer", func() { }, }, CurrentDroplet: resources.Droplet{ - Stack: "cflinuxfs2", + Stack: "cflinuxfs4", Buildpacks: []resources.DropletBuildpack{ { Name: "ruby_buildpack", @@ -645,7 +645,7 @@ var _ = Describe("app summary displayer", func() { }) It("displays stack and buildpacks", func() { - Expect(testUI.Out).To(Say(`stack:\s+cflinuxfs2\n`)) + Expect(testUI.Out).To(Say(`stack:\s+cflinuxfs4\n`)) Expect(testUI.Out).To(Say(`buildpacks:\s+\n`)) Expect(testUI.Out).To(Say(`name\s+version\s+detect output\s+buildpack name\n`)) Expect(testUI.Out).To(Say(`ruby_buildpack\s+0.0.1\s+some-detect-output\s+ruby_buildpack_name\n`)) diff --git a/command/v7/shared/manifest_diff_displayer_test.go b/command/v7/shared/manifest_diff_displayer_test.go index 968014b3210..e40dfa2fb4e 100644 --- a/command/v7/shared/manifest_diff_displayer_test.go +++ b/command/v7/shared/manifest_diff_displayer_test.go @@ -66,7 +66,7 @@ applications: parameters: key1: value1 key2: value2 - stack: cflinuxfs3 + stack: cflinuxfs4 metadata: annotations: contact: "bob@example.com jane@example.com" @@ -112,7 +112,7 @@ applications: parameters: key1: value1 key2: value2 - stack: cflinuxfs3 + stack: cflinuxfs4 metadata: annotations: contact: "bob@example.com jane@example.com" @@ -379,7 +379,7 @@ applications: parameters: key1: value1 key2: value2 - stack: cflinuxfs3 + stack: cflinuxfs4 metadata: annotations: contact: "bob@example.com jane@example.com" @@ -426,7 +426,7 @@ applications: parameters: key1: value1 key2: value2 - stack: cflinuxfs3 + stack: cflinuxfs4 metadata: annotations: contact: bob@example.com jane@example.com diff --git a/command/v7/unset_label_command.go b/command/v7/unset_label_command.go index 2fa752cf396..0636f7d0097 100644 --- a/command/v7/unset_label_command.go +++ b/command/v7/unset_label_command.go @@ -64,7 +64,7 @@ func (cmd UnsetLabelCommand) Examples() string { return ` cf unset-label app dora ci_signature_sha2 cf unset-label org business pci public-facing -cf unset-label buildpack go_buildpack go -s cflinuxfs3` +cf unset-label buildpack go_buildpack go -s cflinuxfs4` } func (cmd UnsetLabelCommand) Resources() string { diff --git a/doc/adr/0005-v7-push-transforms-manifest-before-applying.md b/doc/adr/0005-v7-push-transforms-manifest-before-applying.md index da5b0728659..35bd334fbb1 100644 --- a/doc/adr/0005-v7-push-transforms-manifest-before-applying.md +++ b/doc/adr/0005-v7-push-transforms-manifest-before-applying.md @@ -49,7 +49,7 @@ Updating app with these attributes... + instances: 3 memory: - stack: cflinuxfs3 + stack: cflinuxfs4 routes: dora.sheer-shark.lite.cli.fun ``` diff --git a/doc/v7-plugin-api-changes.md b/doc/v7-plugin-api-changes.md index aa3691de7a1..60a673ee9be 100644 --- a/doc/v7-plugin-api-changes.md +++ b/doc/v7-plugin-api-changes.md @@ -53,7 +53,7 @@ V6 "StagingFailedReason": "", "Stack": { "Guid": "881b268c-d234-4c08-b5c5-50099ccb02bc", - "Name": "cflinuxfs3", + "Name": "cflinuxfs4", "Description": "" }, "Instances": [ @@ -180,7 +180,7 @@ V7 "GUID": "0110f8db-f426-4aad-87d1-4106050cd129", "State": "STAGED", "CreatedAt": "2020-01-14T22:51:13Z", - "Stack": "cflinuxfs3", + "Stack": "cflinuxfs4", "Image": "", "Buildpacks": [ { @@ -439,7 +439,7 @@ V7 { "Name": "some-app", "GUID": "defbb5bb-f010-4e4c-9841-60f641dd5bd4", - "StackName": "cflinuxfs3", + "StackName": "cf4", "State": "STARTED", "LifecycleType": "buildpack", "LifecycleBuildpacks": null, diff --git a/go.mod b/go.mod index cea3727a981..17c589934ee 100644 --- a/go.mod +++ b/go.mod @@ -3,18 +3,18 @@ module code.cloudfoundry.org/cli go 1.22.5 require ( - code.cloudfoundry.org/bytefmt v0.3.0 + code.cloudfoundry.org/bytefmt v0.5.0 code.cloudfoundry.org/cfnetworking-cli-api v0.0.0-20190103195135-4b04f26287a6 code.cloudfoundry.org/cli-plugin-repo v0.0.0-20200304195157-af98c4be9b85 code.cloudfoundry.org/cli/integration/assets/hydrabroker v0.0.0-20201002233634-81722a1144e4 - code.cloudfoundry.org/clock v1.5.0 + code.cloudfoundry.org/clock v1.8.0 code.cloudfoundry.org/diego-ssh v0.0.0-20230810200140-af9d79fe9c82 code.cloudfoundry.org/go-log-cache/v2 v2.0.7 code.cloudfoundry.org/go-loggregator/v9 v9.2.1 code.cloudfoundry.org/gofileutils v0.0.0-20170111115228-4d0c80011a0f code.cloudfoundry.org/jsonry v1.1.4 - code.cloudfoundry.org/lager/v3 v3.1.0 - code.cloudfoundry.org/tlsconfig v0.1.0 + code.cloudfoundry.org/lager/v3 v3.3.0 + code.cloudfoundry.org/tlsconfig v0.2.0 code.cloudfoundry.org/ykk v0.0.0-20170424192843-e4df4ce2fd4d github.com/SermoDigital/jose v0.9.2-0.20161205224733-f6df55f235c2 github.com/blang/semver/v4 v4.0.0 @@ -31,8 +31,8 @@ require ( github.com/maxbrunsfeld/counterfeiter/v6 v6.8.1 github.com/moby/term v0.5.0 github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d - github.com/onsi/ginkgo/v2 v2.20.1 - github.com/onsi/gomega v1.34.1 + github.com/onsi/ginkgo/v2 v2.20.2 + github.com/onsi/gomega v1.34.2 github.com/pkg/errors v0.9.1 github.com/sabhiram/go-gitignore v0.0.0-20171017070213-362f9845770f github.com/sajari/fuzzy v1.0.0 @@ -65,7 +65,7 @@ require ( github.com/gogo/protobuf v1.3.2 // indirect github.com/google/go-cmp v0.6.0 // indirect github.com/google/gofuzz v1.2.0 // indirect - github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 // indirect + github.com/google/pprof v0.0.0-20240829160300-da1f7e9f2b25 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.1 // indirect github.com/imdario/mergo v0.3.6 // indirect github.com/json-iterator/go v1.1.12 // indirect @@ -78,7 +78,6 @@ require ( github.com/rivo/uniseg v0.2.0 // indirect github.com/spf13/pflag v1.0.5 // indirect github.com/x448/float16 v0.8.4 // indirect - golang.org/x/exp v0.0.0-20240823005443-9b4947da3948 // indirect golang.org/x/mod v0.20.0 // indirect golang.org/x/oauth2 v0.21.0 // indirect golang.org/x/sync v0.8.0 // indirect diff --git a/go.sum b/go.sum index ae9d1a590dd..dd037e5ead9 100644 --- a/go.sum +++ b/go.sum @@ -1,13 +1,13 @@ -code.cloudfoundry.org/bytefmt v0.3.0 h1:YXk7eONhKg0rbtf2qgYxMnY1jFF7LTKSIGBcffEOlYU= -code.cloudfoundry.org/bytefmt v0.3.0/go.mod h1:k3jf4RMghgxbifF8p9eCFQnuLtTLaqU2ufkwYC06gio= +code.cloudfoundry.org/bytefmt v0.5.0 h1:W7PBnnnEaCB1slY8Ax86V68JUF/ZkaWoliraXEPQkIY= +code.cloudfoundry.org/bytefmt v0.5.0/go.mod h1:bKm8GdmgAatc/ifX2VQ0G+BquevgZW/0NeUl5Ic2sU4= code.cloudfoundry.org/cfnetworking-cli-api v0.0.0-20190103195135-4b04f26287a6 h1:Yc9r1p21kEpni9WlG4mwOZw87TB2QlyS9sAEebZ3+ak= code.cloudfoundry.org/cfnetworking-cli-api v0.0.0-20190103195135-4b04f26287a6/go.mod h1:u5FovqC5GGAEbFPz+IdjycDA+gIjhUwqxnu0vbHwVeM= code.cloudfoundry.org/cli-plugin-repo v0.0.0-20200304195157-af98c4be9b85 h1:jaHWw9opYjKPrDT19uydBBWSxl+g5F4Hv030fqMsalo= code.cloudfoundry.org/cli-plugin-repo v0.0.0-20200304195157-af98c4be9b85/go.mod h1:R1EiyOAr7lW0l/YkZNqItUNZ01Q/dYUfbTn4X4Z+82M= code.cloudfoundry.org/cli/integration/assets/hydrabroker v0.0.0-20201002233634-81722a1144e4 h1:O+j8afQWaDuxzKGcculsjgHGK+biBTn6iMjgFpBf54c= code.cloudfoundry.org/cli/integration/assets/hydrabroker v0.0.0-20201002233634-81722a1144e4/go.mod h1:dVTgo9kQbYns/QM4A1C2GtxqUnFSvJTk2Qhw+M0/uzk= -code.cloudfoundry.org/clock v1.5.0 h1:DqbjErrmxd4xSG0SnNS88H0ZGAEhvwSpuz9PAcwN+WI= -code.cloudfoundry.org/clock v1.5.0/go.mod h1:gnsFuUrMa8XObf4sePcSjaCrxzupeipZrfG7arAS5CY= +code.cloudfoundry.org/clock v1.8.0 h1:ZwMn0gnHW3SkYwkSnRyJGthtVQaByupg94MxZrK7NMg= +code.cloudfoundry.org/clock v1.8.0/go.mod h1:fYHefCehCof0TsgRTh7c8Zzwk87+63x3A3YVQasuFYE= code.cloudfoundry.org/diego-ssh v0.0.0-20230810200140-af9d79fe9c82 h1:Bns1y0jSlcvfP0u8ael+TUlnyNHsNX808zuo58bf5so= code.cloudfoundry.org/diego-ssh v0.0.0-20230810200140-af9d79fe9c82/go.mod h1:L2/glHnSK+wKnsG8oZZqdV2sgYY9NDo/I1aDJGhcWaM= code.cloudfoundry.org/go-log-cache/v2 v2.0.7 h1:yR/JjQ/RscO1n4xVAT9HDYcpx5ET/3Cq2/RhpJml6ZU= @@ -21,10 +21,10 @@ code.cloudfoundry.org/inigo v0.0.0-20230612153013-b300679e6ed6/go.mod h1:1ZB1JCh code.cloudfoundry.org/jsonry v1.1.4 h1:P9N7IlH1/4aRCLcXLgLFj1hkcBmV7muijJzY+K6U4hE= code.cloudfoundry.org/jsonry v1.1.4/go.mod h1:6aKilShQP7w/Ez76h1El2/n9y2OkHuU56nKSBB9Gp0A= code.cloudfoundry.org/lager v1.1.1-0.20191008172124-a9afc05ee5be/go.mod h1:O2sS7gKP3HM2iemG+EnwvyNQK7pTSC6Foi4QiMp9sSk= -code.cloudfoundry.org/lager/v3 v3.1.0 h1:ZB4VXLSI0bIWhDSjKdEh/Jrs2SXFLX/9+z2WEZhAf2o= -code.cloudfoundry.org/lager/v3 v3.1.0/go.mod h1:5KBxqCSNJBNf/RXCindvnyAKBWxTgMMO5mtn1qkMoEM= -code.cloudfoundry.org/tlsconfig v0.1.0 h1:/SGZk3K7t79cuhSVs/qZXayEnLV1kodmvU3EBcc4E4w= -code.cloudfoundry.org/tlsconfig v0.1.0/go.mod h1:6ymG8DjGLta+bnqdpUmdv88Ikje2VvOTq+8drVe4pUU= +code.cloudfoundry.org/lager/v3 v3.3.0 h1:adWGo2aBLpHVfUG+3D2FQ4B6Mf2Bcz47KITbn8V4b0k= +code.cloudfoundry.org/lager/v3 v3.3.0/go.mod h1:k/AYgZTVrwQaneNfQ2EwnZxUb9iUFE7i6AJ3KVOtAdE= +code.cloudfoundry.org/tlsconfig v0.2.0 h1:OPmMIduZVg1AE6m7V+CrULybZMeEWLPXxkKAc0RYLlU= +code.cloudfoundry.org/tlsconfig v0.2.0/go.mod h1:7soG27nMBzgrlYo6FuVCVxCjdMmVUBgdKLmtjrMFBrg= code.cloudfoundry.org/ykk v0.0.0-20170424192843-e4df4ce2fd4d h1:M+zXqtXJqcsmpL76aU0tdl1ho23eYa4axYoM4gD62UA= code.cloudfoundry.org/ykk v0.0.0-20170424192843-e4df4ce2fd4d/go.mod h1:YUJiVOr5xl0N/RjMxM1tHmgSpBbi5UM+KoVR5AoejO0= filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= @@ -124,8 +124,8 @@ github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/ github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= -github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= +github.com/google/pprof v0.0.0-20240829160300-da1f7e9f2b25 h1:sEDPKUw6iPjczdu33njxFjO6tYa9bfc0z/QyB/zSsBw= +github.com/google/pprof v0.0.0-20240829160300-da1f7e9f2b25/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= @@ -197,8 +197,8 @@ github.com/onsi/ginkgo v1.16.4 h1:29JGrr5oVBm5ulCWet69zQkzWipVXIol6ygQUe/EzNc= github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vvnwo0= github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c= github.com/onsi/ginkgo/v2 v2.1.4/go.mod h1:um6tUpWM/cxCK3/FK8BXqEiUMUwRgSM4JXG47RKZmLU= -github.com/onsi/ginkgo/v2 v2.20.1 h1:YlVIbqct+ZmnEph770q9Q7NVAz4wwIiVNahee6JyUzo= -github.com/onsi/ginkgo/v2 v2.20.1/go.mod h1:lG9ey2Z29hR41WMVthyJBGUBcBhGOtoPF2VFMvBXFCI= +github.com/onsi/ginkgo/v2 v2.20.2 h1:7NVCeyIWROIAheY21RLS+3j2bb52W0W82tkberYytp4= +github.com/onsi/ginkgo/v2 v2.20.2/go.mod h1:K9gyxPIlb+aIvnZ8bd9Ak+YP18w3APlR+5coaZoE2ag= github.com/onsi/gomega v0.0.0-20171105031654-1eecca0ba8e6/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA= github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= @@ -207,8 +207,8 @@ github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1y github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY= github.com/onsi/gomega v1.19.0/go.mod h1:LY+I3pBVzYsTBU1AnDwOSxaYi9WoWiqgwooUqq9yPro= github.com/onsi/gomega v1.20.0/go.mod h1:DtrZpjmvpn2mPm4YWQa0/ALMDj9v4YxLgojwPeREyVo= -github.com/onsi/gomega v1.34.1 h1:EUMJIKUjM8sKjYbtxQI9A4z2o+rruxnzNvpknOXie6k= -github.com/onsi/gomega v1.34.1/go.mod h1:kU1QgUvBDLXBJq618Xvm2LUX6rSAfRaFRTcdOeDLwwY= +github.com/onsi/gomega v1.34.2 h1:pNCwDkzrsv7MS9kpaQvVb1aVLahQXyJ/Tv5oAZMI3i8= +github.com/onsi/gomega v1.34.2/go.mod h1:v1xfxRgk0KIsG+QOdm7p8UosrOzPYRo60fd3B/1Dukc= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/openzipkin/zipkin-go v0.4.3 h1:9EGwpqkgnwdEIJ+Od7QVSEIH+ocmm5nPat0G7sjsSdg= @@ -257,8 +257,8 @@ github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcY github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -go.step.sm/crypto v0.51.1 h1:ktUg/2hetEMiBAqgz502ktZDGoDoGrcHFg3XpkmkvvA= -go.step.sm/crypto v0.51.1/go.mod h1:PdrhttNU/tG9/YsVd4fdlysBN+UV503p0o2irFZQlAw= +go.step.sm/crypto v0.51.2 h1:5EiCGIMg7IvQTGmJrwRosbXeprtT80OhoS/PJarg60o= +go.step.sm/crypto v0.51.2/go.mod h1:QK7czLjN2k+uqVp5CHXxJbhc70kVRSP+0CQF3zsR5M0= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= @@ -266,8 +266,6 @@ golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPh golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= -golang.org/x/exp v0.0.0-20240823005443-9b4947da3948 h1:kx6Ds3MlpiUHKj7syVnbp57++8WpuKPcR5yjLBjvLEA= -golang.org/x/exp v0.0.0-20240823005443-9b4947da3948/go.mod h1:akd2r19cwCdwSwWeIdzYQGa/EZZyqcOdwWiwj5L5eKQ= golang.org/x/exp/typeparams v0.0.0-20220218215828-6cf2b201936e/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= diff --git a/integration/helpers/app_instance_table_test.go b/integration/helpers/app_instance_table_test.go index 7508e0c984e..752f4ccdb85 100644 --- a/integration/helpers/app_instance_table_test.go +++ b/integration/helpers/app_instance_table_test.go @@ -15,7 +15,7 @@ Showing health and status for app dora in org wut / space wut as admin... name: dora requested state: started routes: dora.bosh-lite.com -stack: cflinuxfs2 +stack: cflinuxfs4 buildpacks: ruby 1.6.44 type: web diff --git a/integration/helpers/stack.go b/integration/helpers/stack.go index 34fa24439bc..4a182700f08 100644 --- a/integration/helpers/stack.go +++ b/integration/helpers/stack.go @@ -36,17 +36,17 @@ func FetchStacks() []string { return stacks } -// PreferredStack returns the cflinuxfs3 stack name if it present, otherwise cflinuxfs2 is returned. +// PreferredStack returns the cflinuxfs4 stack name if it present, otherwise cflinuxfs3 is returned. func PreferredStack() string { stacks := FetchStacks() for _, name := range stacks { - if name == "cflinuxfs3" { + if name == "cflinuxfs4" { return name } } - return "cflinuxfs2" + return "cflinuxfs3" } // CreateStack creates a new stack with the user provided name. If a name is not provided, a random name is used diff --git a/integration/v7/isolated/labels_command_test.go b/integration/v7/isolated/labels_command_test.go index a5400152a15..c8182e00285 100644 --- a/integration/v7/isolated/labels_command_test.go +++ b/integration/v7/isolated/labels_command_test.go @@ -32,7 +32,7 @@ var _ = Describe("labels command", func() { Eventually(session).Should(Say("EXAMPLES:")) Eventually(session).Should(Say(`\s+cf labels app dora`)) Eventually(session).Should(Say(`\s+cf labels org business`)) - Eventually(session).Should(Say(`\s+cf labels buildpack go_buildpack --stack cflinuxfs3`)) + Eventually(session).Should(Say(`\s+cf labels buildpack go_buildpack --stack cflinuxfs4`)) Eventually(session).Should(Say("RESOURCES:")) Eventually(session).Should(Say(`\s+app`)) Eventually(session).Should(Say(`\s+buildpack`)) @@ -184,12 +184,12 @@ var _ = Describe("labels command", func() { When("the buildpack is bound to a stack", func() { BeforeEach(func() { - helpers.SetupBuildpackWithStack(buildpackName, "cflinuxfs3") - session := helpers.CF("set-label", "buildpack", buildpackName, "-s", "cflinuxfs3", "some-other-key=some-other-value", "some-key=some-value") + helpers.SetupBuildpackWithStack(buildpackName, "cflinuxfs4") + session := helpers.CF("set-label", "buildpack", buildpackName, "-s", "cflinuxfs4", "some-other-key=some-other-value", "some-key=some-value") Eventually(session).Should(Exit(0)) }) AfterEach(func() { - session := helpers.CF("delete-buildpack", buildpackName, "-f", "-s", "cflinuxfs3") + session := helpers.CF("delete-buildpack", buildpackName, "-f", "-s", "cflinuxfs4") Eventually(session).Should(Exit(0)) }) @@ -203,8 +203,8 @@ var _ = Describe("labels command", func() { }) It("lists the labels when the stack is specified", func() { - session := helpers.CF("labels", "buildpack", buildpackName, "-s", "cflinuxfs3") - Eventually(session).Should(Say(regexp.QuoteMeta("Getting labels for buildpack %s with stack %s as %s...\n\n"), buildpackName, "cflinuxfs3", username)) + session := helpers.CF("labels", "buildpack", buildpackName, "-s", "cflinuxfs4") + Eventually(session).Should(Say(regexp.QuoteMeta("Getting labels for buildpack %s with stack %s as %s...\n\n"), buildpackName, "cflinuxfs4", username)) Eventually(session).Should(Say(`key\s+value`)) Eventually(session).Should(Say(`some-key\s+some-value`)) Eventually(session).Should(Say(`some-other-key\s+some-other-value`)) @@ -229,16 +229,16 @@ var _ = Describe("labels command", func() { newStackName = helpers.NewStackName() helpers.CreateStack(newStackName) helpers.SetupBuildpackWithStack(buildpackName, newStackName) - helpers.SetupBuildpackWithStack(buildpackName, "cflinuxfs3") + helpers.SetupBuildpackWithStack(buildpackName, "cflinuxfs4") session := helpers.CF("set-label", "buildpack", buildpackName, "-s", newStackName, "my-stack-some-other-key=some-other-value", "some-key=some-value") Eventually(session).Should(Exit(0)) - session = helpers.CF("set-label", "buildpack", buildpackName, "--stack", "cflinuxfs3", + session = helpers.CF("set-label", "buildpack", buildpackName, "--stack", "cflinuxfs4", "cfl2=var2", "cfl1=var1") Eventually(session).Should(Exit(0)) }) AfterEach(func() { - session := helpers.CF("delete-buildpack", buildpackName, "-f", "-s", "cflinuxfs3") + session := helpers.CF("delete-buildpack", buildpackName, "-f", "-s", "cflinuxfs4") Eventually(session).Should(Exit(0)) session = helpers.CF("delete-buildpack", buildpackName, "-f", "-s", newStackName) Eventually(session).Should(Exit(0)) @@ -275,9 +275,9 @@ var _ = Describe("labels command", func() { Eventually(session).Should(Exit(0)) }) - It("lists the labels for buildpackName/cflinuxfs3", func() { - session := helpers.CF("labels", "buildpack", buildpackName, "--stack", "cflinuxfs3") - Eventually(session).Should(Say(regexp.QuoteMeta("Getting labels for buildpack %s with stack cflinuxfs3 as %s...\n\n"), buildpackName, username)) + It("lists the labels for buildpackName/cflinuxfs4", func() { + session := helpers.CF("labels", "buildpack", buildpackName, "--stack", "cflinuxfs4") + Eventually(session).Should(Say(regexp.QuoteMeta("Getting labels for buildpack %s with stack cflinuxfs4 as %s...\n\n"), buildpackName, username)) Eventually(session).Should(Say(`key\s+value`)) Eventually(session).Should(Say(`cfl1\s+var1`)) Eventually(session).Should(Say(`cfl2\s+var2`)) diff --git a/integration/v7/isolated/set_label_command_test.go b/integration/v7/isolated/set_label_command_test.go index 3b7cc72ed21..fac616d7a22 100644 --- a/integration/v7/isolated/set_label_command_test.go +++ b/integration/v7/isolated/set_label_command_test.go @@ -33,7 +33,7 @@ var _ = Describe("set-label command", func() { Eventually(session).Should(Say("EXAMPLES:")) Eventually(session).Should(Say(`\s+cf set-label app dora env=production`)) Eventually(session).Should(Say(`\s+cf set-label org business pci=true public-facing=false`)) - Eventually(session).Should(Say(`\s+cf set-label buildpack go_buildpack go=1.12 -s cflinuxfs3`)) + Eventually(session).Should(Say(`\s+cf set-label buildpack go_buildpack go=1.12 -s cflinuxfs4`)) Eventually(session).Should(Say("RESOURCES:")) Eventually(session).Should(Say(`\s+app`)) Eventually(session).Should(Say(`\s+buildpack`)) diff --git a/integration/v7/isolated/unset_label_command_test.go b/integration/v7/isolated/unset_label_command_test.go index 46434a3da7f..114e40e60ca 100644 --- a/integration/v7/isolated/unset_label_command_test.go +++ b/integration/v7/isolated/unset_label_command_test.go @@ -31,7 +31,7 @@ var _ = Describe("unset-label command", func() { Eventually(session).Should(Say("EXAMPLES:")) Eventually(session).Should(Say(`\s+cf unset-label app dora ci_signature_sha2`)) Eventually(session).Should(Say(`\s+cf unset-label org business pci public-facing`)) - Eventually(session).Should(Say(`\s+cf unset-label buildpack go_buildpack go -s cflinuxfs3`)) + Eventually(session).Should(Say(`\s+cf unset-label buildpack go_buildpack go -s cflinuxfs4`)) Eventually(session).Should(Say("RESOURCES:")) Eventually(session).Should(Say(`\s+app`)) Eventually(session).Should(Say(`\s+buildpack`)) diff --git a/util/manifestparser/application_test.go b/util/manifestparser/application_test.go index eb0474b58bf..3376f264db7 100644 --- a/util/manifestparser/application_test.go +++ b/util/manifestparser/application_test.go @@ -178,13 +178,13 @@ buildpacks: Context("when stack is provided", func() { BeforeEach(func() { rawYAML = []byte(`--- -stack: cflinuxfs3 +stack: cflinuxfs4 `) }) It("unmarshals the stack property", func() { Expect(executeErr).ToNot(HaveOccurred()) - Expect(application.Stack).To(Equal("cflinuxfs3")) + Expect(application.Stack).To(Equal("cflinuxfs4")) }) })