vmware-archive / cf-redis-release

BOSH release for a Cloud Foundry Redis service broker that supports shared-vm plans
https://bosh.io/releases/github.com/pivotal-cf/cf-redis-release
Apache License 2.0
19 stars 35 forks source link

Imcomplete removal of CF CLI from release #84

Closed peterellisjones closed 5 years ago

peterellisjones commented 5 years ago

Hi cf-redis-team,

We are getting the following error when trying to upgrade from 434.2.8 to 434.2.10.

Task 223563 | 08:32:54 | Preparing deployment: Preparing deployment (00:00:02)
                      L Error: Package name collision detected in instance group 'redis-broker': job 'cf-redis/broker-registrar' depends on package 'cf-redis/cf-cli-6-linux' with fingerprint '0971d73c486be23f7d87702ddc75f4d6565942f5', job 'cf-cli/cf-cli-6-linux' depends on package 'cf-cli/cf-cli-6-linux' with fingerprint 'b91c0df20f4cda678be03db1f00e0c40449bcd32'. BOSH cannot currently collocate two packages with identical names and different fingerprints or dependencies.
Task 223563 | 08:32:56 | Error: Package name collision detected in instance group 'redis-broker': job 'cf-redis/broker-registrar' depends on package 'cf-redis/cf-cli-6-linux' with fingerprint '0971d73c486be23f7d87702ddc75f4d6565942f5', job 'cf-cli/cf-cli-6-linux' depends on package 'cf-cli/cf-cli-6-linux' with fingerprint 'b91c0df20f4cda678be03db1f00e0c40449bcd32'. BOSH cannot currently collocate two packages with identical names and different fingerprints or dependencies.

I think this is because cf-redis-release 434.2.10 still contains the cf-cli-6-linux package even though the manifest uses the package from the cf-cli release. I tried to fix this by reverting back to the cf-cli-6-linux package that is still in the cf-redis-release using the following ops file

- type: replace
  path: /instance_groups/name=cf-redis-broker/jobs/name=cf-cli-6-linux/release
  value: cf-redis
- type: remove
  path: /releases/name=cf-cli

However I then got the error

Error: Job 'cf-cli-6-linux' not found in Template table

Which makes sense, as the job no longer exists in the new release.

kind regards,

Pete

cf-gitbot commented 5 years ago

We have created an issue in Pivotal Tracker to manage this. Unfortunately, the Pivotal Tracker project is private so you may be unable to view the contents of the story.

The labels on this github issue will be updated when the story is started.

peterellisjones commented 5 years ago

Update: I realised there was never a "cf-cli-6-linux" job in the original cf-redis-release so I was able to do a successful deploy using the ops file:

- type: remove
  path: /instance_groups/name=cf-redis-broker/jobs/name=cf-cli-6-linux
- type: remove
  path: /releases/name=cf-cli

However I'm guessing something will break when whatever process needs access to the cf-cli can't access it?

jplebre commented 5 years ago

Hello @peterellisjones 👋 Sorry for the delay

We at the pcf-redis team have been experimenting with improving our pipelines and release processes to be as lean as possible to keep all dependencies up to date, and as such were experimenting with floating cf-cli as a colocated release job. The bump initially went quite well but we've ran into a few other issues when put into the larger scope of the org.

We've just released a new patch version for cf-redis-broker reverting these changes, and now are back at packaging a bosh-vendor cf-cli package. It should get rid of all the issues you were facing.

Apologies for any inconvenience. Let me know if you need anything else or if we are good to close this issue :)

J

peterellisjones commented 5 years ago

Thanks @jplebre! — I can confirm it is deploying successfully now.