Conversation
a899860 to
92ad584
Compare
blaggacao
left a comment
There was a problem hiding this comment.
Well done on the easy part!
Layer 1,2,3 look already pretty good.
I left a few comments for better context.
Looking forward to layer 4 😄
| }; | ||
|
|
||
| oura = writeShellApplication { | ||
| runtimeInputs = prelude-runtime; |
There was a problem hiding this comment.
depending on how oura is configured, you probably won't need the prelude.
The prelude and all the other bash script are "hacky" workarounds for the operational "shortcomings" of the binaries in this operational context.
| name = "entrypoint"; | ||
| text = '' | ||
|
|
||
| ${prelude} |
There was a problem hiding this comment.
Same: probably not needed.
| config.Cmd = [ | ||
| "${entrypoints.oura}/bin/entrypoint" | ||
| ]; | ||
| config.User = "1000:1000"; |
There was a problem hiding this comment.
Assuming the application refuses to run with a low number uid/gid, we customarily use nobody:nogroup with their respective high numbers instead.
nix/cardano/oci-images.nix
Outdated
| name = "registry.ci.iog.io/oura"; | ||
| maxLayers = 25; | ||
| layers = [ | ||
| (n2c.buildLayer {deps = entrypoints.oura.runtimeInputs;}) |
There was a problem hiding this comment.
These layers are to have certain control over when which layers needs rebuilding and as such is a pure optimization.
In this particular case, I'm not sure if we even need attitional runtimeInputs for the entrypoint. If we don't, we can drop this layer.
| inherit namespace; | ||
| endpoints = [ | ||
| # prometheus metrics for scrolls | ||
| "http://127.0.0.1:80/metrics" |
No description provided.