Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove postgres 9.6 from Che Operator CSV #21350

Closed
nickboldt opened this issue Apr 25, 2022 · 11 comments
Closed

Remove postgres 9.6 from Che Operator CSV #21350

nickboldt opened this issue Apr 25, 2022 · 11 comments
Labels
area/che-operator Issues and PRs related to Eclipse Che Kubernetes Operator area/ci CI build and releases, PR testing, & whitelabel/productization issues kind/task Internal things, technical debt, and to-do tasks to be performed. severity/P1 Has a major impact to usage or development of the system.

Comments

@nickboldt
Copy link
Contributor

Is your task related to a problem? Please describe

Today we have both the supported Postgres 13 and the deprecated Postgres 9.6 entries in the Che operator CSV:

https://github.com/eclipse-che/che-operator/blob/main/bundle/next/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml#L976-L979
https://github.com/eclipse-che/che-operator/blob/main/bundle/stable/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml#L976-L979

Since the process for updating CRW 2.15 (Che 7.42) to 3.0 (Che 7.46) requires manual steps to clean up old deployments, switch to a new channel name and subscription, this means that any 3.0 deployments are NEW and therefore will never use Postgres 9.6 env vars, only 13.

I'm not sure if the same is true for Che users, but if so, then we could simpy remove these env vars and update the Che operator code such that Postgres 13 is the only option, with no fallback to 9.6.

Describe the solution you'd like

See above

Describe alternatives you've considered

No response

Additional context

No response

@nickboldt nickboldt added kind/task Internal things, technical debt, and to-do tasks to be performed. area/che-operator Issues and PRs related to Eclipse Che Kubernetes Operator labels Apr 25, 2022
@nickboldt
Copy link
Contributor Author

nickboldt commented Apr 25, 2022

@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Apr 25, 2022
@nickboldt nickboldt added the area/ci CI build and releases, PR testing, & whitelabel/productization issues label Apr 25, 2022
@l0rd l0rd added severity/P1 Has a major impact to usage or development of the system. and removed status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. labels Apr 25, 2022
@tolusha
Copy link
Contributor

tolusha commented Apr 26, 2022

Since the process for updating CRW 2.15 (Che 7.42) to 3.0 (Che 7.46) requires manual steps to clean up old deployments, switch to a new channel name and subscription, this means that any 3.0 deployments are NEW and therefore will never use Postgres 9.6 env vars, only 13.

That's not true.
3.0 deployments will use the existed version of PostgreSQL which might be either 9.6 or 13.x

@nickboldt
Copy link
Contributor Author

@tolusha so we need to keep 9.x forever? or can we declare it deprecated in 7.47 and drop it in 7.50?

@tolusha
Copy link
Contributor

tolusha commented Apr 26, 2022

Yes, we have to keep it forever. We can't drop anything.
Migration guide to devspace 3.0 has nothing to do with upgrading PostgreSQL version

@nickboldt
Copy link
Contributor Author

nickboldt commented Apr 26, 2022

ok, but a NEW DS 3 install won't migrate an existing postgres 9.6 db to 13, right? it will install a fresh DB with no old content?

(different from Che 7.yy updates, I guess.)

@tolusha
Copy link
Contributor

tolusha commented Apr 27, 2022

Completely new installations use PostgreSQL 13.x version.
If previous version used PostgreSQL 9.6 version then any other updates will use the same version.

@RickJWagner
Copy link
Contributor

A quick wish: Postgres has been the source of occasional user troubles, especially with super-secure users. (These often want to use their own DB, have different administrators for DBs vs. the application, etc.)
I'm not sure if it would be possible, but if we could find a way to eventually move the state kept in Postgres to another location (i.e. a ConfigMap or something) that would be awesome.

@l0rd
Copy link
Contributor

l0rd commented Apr 28, 2022

@RickJWagner that's the issue #21183

@nickboldt
Copy link
Contributor Author

nickboldt commented Apr 28, 2022

Two final thoughts on this one:

a) could we put out a press release (che-dev list, mattermost, Che Community call, etc. saying that we plan to remove postgres 9.6 from the CSV in the next 4 months, after which time existing installs will break and will need to be reinstalled (or the DB will need to be migrated to postgres 13.3)?

Rationale: We're doing this for two reasons:

  • 9.6 is EOL;
  • 13.x is getting CVE fixes and 9.x is not.

b) could we remove 9.6 from downstream Dev Spaces 3.0 only, since anyone installing 3.0 will need a NEW INSTALL? Or will existing 2.15 installed postgres image be copied across into the new 3.0 install, and used by the new subscription?

@tolusha
Copy link
Contributor

tolusha commented Apr 29, 2022

a) We need to finalize eclipse-che/che-docs#2163
b) We can't remove, because we have migration guide from 2.15 to 3.0.

@tolusha
Copy link
Contributor

tolusha commented Jun 27, 2022

I close this issue since I don't see a way how we can get rid of PostgreSQL 9.6 image

@tolusha tolusha closed this as completed Jun 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/che-operator Issues and PRs related to Eclipse Che Kubernetes Operator area/ci CI build and releases, PR testing, & whitelabel/productization issues kind/task Internal things, technical debt, and to-do tasks to be performed. severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

No branches or pull requests

5 participants