Skip to content

question: detecting which .wasm to load and run? #46

Open
@imjasonh

Description

@imjasonh

Hey 👋 I wasn't sure where to ask and this seemed like a better place that on the #krustlet channel in the K8s slack.

How do the shims decide what .wasm file(s?) to load when they get an image?

I see spin.toml in the example ghcr.io/deislabs/containerd-wasm-shims/examples/spin-rust-hello image specifies

[[component]]
id = "hello"
source = "spin_rust_hello.wasm"

...which leads me to wonder how the shims know to look for spin.toml in the image layer contents, and not credenza.toml or pteradactyl.toml. If I had all three, would only spin.toml be read by convention?

In wasimg I'm setting the .wasm module to run in the OCI Image Config's Entrypoint, but that doesn't seem to be read anywhere, and anyway you may end up moving to OCI Artifacts anyway, where there isn't necessarily a config (#43)

Can an Image/Artifact used by these shims contain multiple [[component]]s, and therefore multiple .wasm files? Can the shims read and consider multiple .toml files, potentially of different variants?

Trying to get an idea of how these images are expected to be laid out, so I can be sure I'm able to build images that are "conformant" with the "spec" (heavy quotes there 😆 ).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions