-
Notifications
You must be signed in to change notification settings - Fork 32
Open
Labels
a:ooilintegration-library or ooilintegration-library or ooilt:maintenanceSome planned maintenance workSome planned maintenance work
Milestone
Description
Here a list of suggested improvements sorted by my priority:
- After succesful build of an image it would be nice to be able to verify the labels against the definition. It might still happen that they are screwed up. Specifically nasty are the docker-compose specs. Its possible to have the image labels in there wrong. Not sure how easy it is to test those though.
- For complex services structure as in
https://git.speag.com/oSparc/osparc-s4lthere is a lot of duplication in the metadata definition. PyYML should allow have!includedirectives to include common parts from common files - Some of the runtime metadata only exists for dynamic services, e.g.
container-http-entrypoint. It seems to be optional and ooil accepts it if its not defined. However, the platform does not allow this.ooilshould fail in this case I think. - There is some confusion regarding the
docker-compose.overwrite.yml. I can use env vars in certain parts (e.g. path toDockerfilebut definitely not in theimage. The latter is actually completely ignored and hardcoded to thesimcore/services/dynamic/$service_keywhereservice_keyneeds to be identical in the service key of thedocker-compose.overwrite.ymlandkeyin themetadata.yml. I cannot use env vars in themetadata.ymland theruntime.yml. Only$$. The use case for is that formasterin the above repo I would like to add the postfixedgeto all services via a env var. Alternatively, I could use a templating mechanism - There are plenty of OCI related warnings because we do not adhere to this standard. So either we should follow it or remove the warnings
- I realized that some keys in the
runtime.yml(e.g. environment variables and volumes) are discarded but need to enter via thecompose-spec. Maybe a linter would help. see also add docs to ooil #6339. It turns out that we should only define env vars and volume mounts in thecompose-specsection. Otherwise the variables that are used in different services with the same name are actually missing! (They seem to show up only in one service) - Users that update their
metadata.yamlwith a new label (e.g.version_display) see apydanticerror when creating thedocker-compose-build.yml. Extra fields not permitted. The solution is to update to a more up-to date ooil docker image. I think the user should always uselatestand if there are any compatibility issues this should be handled automatically by using the ìntegration-versionthat is actually defined in the same file. This can also happen in theCIwhere we potentially use the sameooil` base image for different services using different features of the tooling. - After successful build, ooil-test could verify whether the callbacks defined in the callbacks mapping exist.
Metadata
Metadata
Assignees
Labels
a:ooilintegration-library or ooilintegration-library or ooilt:maintenanceSome planned maintenance workSome planned maintenance work