-
Notifications
You must be signed in to change notification settings - Fork 75
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
OpenShift Compatibility #63
Conversation
Signed-off-by: Matt Colman <[email protected]>
Updated securityContext settings to enable OpenShift Restricted SCC compatibility. Added in wait-for-db initContainer to ensure pods don't start before database is ready. Exposed more PostgreSQL keys in values.yaml to allow deployment on OpenShift. Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
Co-authored-by: David J. M. Karlsen <[email protected]> Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
Signed-off-by: Matt Colman <[email protected]>
@davidkarlsen the tests are failing for busybox with " |
there is no need to "expose" postgresql keys in the chart, these are all controllable like in https://github.com/bitnami/charts/blob/master/bitnami/postgresql/values.yaml
|
@davidkarlsen, I disagree. If we amend them in the subchart and then update the subcharts over time, our changes will be lost. Exposing these keys is very helpful for deployments as we can then make the consumer aware of the keys we anticipate might need attention and we can control it all from the parent chart. I have seen this done on many charts and would strongly encourage you to please allow these to be here. |
Hi @davidkarlsen do you have any view why the tests are failing on this container? And do my changes/suggestions resolve your other queries? Thanks. |
Duplicating the keys won't solve that. And the version of the sub-chart is locked through the lock-file - having double up definitions won't add value - quite the contradictory. Should the sub-chart change, so will the calling of it have to do as well. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See comments, in summary i think:
- SCC description can be easier one-liner
- init-containers should be wildcards yaml copies, so they can fit any situation, and independent per deployment
- securitycontext should be enabled by default as it was (openshift users can opt-in to turn it off)
Signed-off-by: Matt Colman <[email protected]>
Hi @davidkarlsen,
|
When thinking about this, maybe a better solution is to use health-checks? That will in essence do the same as for the database-check, but more generically, like it was in previous versions: https://github.com/evryfs/helm-charts/blob/dependency-track-0.2.4/charts/dependency-track/templates/deployment.yaml#L64 if the DB is not ready (or any other problem for that matter), the app will sit in a restart-loop until the resources are available. For now the API url can be used as endpoint, while we await more sophisticated ones later on DependencyTrack/dependency-track#1001 WDYT? |
Hi @davidkarlsen my idea was to avoid the restart-loop by using the initContainer. Happy for you to take the lead on the decision here, but my preference would be the initContainer. Perhaps if we amend the initContainer values to be something like:
And then we can call in the relevant initContainer section, such as:
via:
Whereby
|
Hi - sorry for the silence - had a lot of stuff going - I think it would make sense to go with health-checks, they are generic and would be helpful anyways. Let's start with that at least - we can always come back and improve in a future version. |
This was never completed and is obsoleted by #81 |
Following changes have been made: