-
Notifications
You must be signed in to change notification settings - Fork 261
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
[REPOSITORY] New repository for 'uber' image #7224
Comments
👋 Not sure you meant to tag me: I don't believe I have anything to do with this project. 🙇 |
In cloud native discussions, the request to ALSO have Docker containers including JUST base egeria, plus the single connector in question, have been requested - for example for HMS, Strimzi. Over time there is also a desire to make the footprint of this image (image size - for security attach surface) We did in fact used to do this, so I think we have requriements for both single and combined images .. so we should do both. How should we handle these images? Options Build all images in same repo
Distributed build of images
On balance I think we should continue with
|
Our connectors do not all follow the same release strategy, and tend to be built off varying levels of egeria. The docker container build in place for some repos will build a container with egeria+that connector, using the version of egeria it's built with. To combine many different connectors together has the risk of adding varying level of dependencies, risks of clashes between connectors, risk of different egeria libraries. They may change at any time, on their own schedule. Connectors today are not isolated from egeria core - any of the classes they include are added onto the classpath with no protection. I think As we deploy demo infrastructure with helm charts, the container is already paramerized (albeit across all platforms). If we want new scenarios we should add in additional containers built with the appropriate connector. For example we add a platform to run the JDBC integration connector, and deploy the right image within the helm charts. This will JUST run jdbc. Similarly if we want to add the HMS connector ,we have another container for that. The definition of extra containers could be better parameterized in the helm charts if needed It also remains an idea to use isolated class loading to provide in-process protection - though can be tricky in the spring boot environment. This provides the java application with appropriate control albeit with a looser isolation than container based As part of the cloud native workgroup we need to work on creating slimmer container images per-deployment, as well as a default one to publish for demos etc So in summary, I'm not convinced an image containing many connectors is a good idea |
I think we should revisit this only if/when #6043 is implemented |
Closing as not planned |
Name
egeria-image-full
Owner
planetf1
Deliverable
Provide an 'uber image' to run the egeria server chassis. This will include all the useful content that we need server-chassis side to run in a container environment.
This WILL NOT contain content that is
This provides the following benefits
The new image will be used by our Helm charts
They will not be used by the following, since we need to be totally clear on what is present and tested - so these will use the existing image
There is no intention to remove the capability to dynamically load connectors in our helm charts - this is still useful for 3rd party content & testing, it's just that it will be unnecessary in more cases
The existing egeria repository will continue to create the 'egeria' image, and it's expected this new image will add additional layers on top of that image (an alternative would be to reconstruct using jars or the tar.gz archive)
Build, test and CI-CD process
Dependencies
odpi/egeria
Justification
Assumptions
yes - all true
Additional Information
Versioning needs discussion
^ cc: @mandy-chessell @dwo
Work Plan
Before creating the repo
Creating the repo
First steps
Getting CI/CD started & refining settings
Further Refinement
Release
The text was updated successfully, but these errors were encountered: