Uploaded image for project: 'Connectivity Link'
  1. Connectivity Link
  2. CONNLINK-326

Wasm shim image manifest in single architecture

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Critical Critical
    • 1.0.1
    • 1.0.0
    • Wasm Shim
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • Full Snow Moon

      What

      Istio (coming from Service Mesh 3.0.0-tp.2 provided by Red Hat, Inc.) does not support wasm image with the format  application/vnd.docker.distribution.manifest.list.v2+json: Manifest list, aka "fat manifest". When fat manifest image is being used, the gateway reports wasm module loading error with a "checksum error":

       2025-01-29T09:35:38.772818Z    error    wasm    convert the wasm config: cannot fetch Wasm module oci://registry.redhat.io/rhcl-1/wasm-shim-rhel9@sha256:9dd129d64b87f513855130f89b9ade3507f92ce5223aa173eb608235b4255db7: module downloaded from oci://registry.redhat.io/rhcl-1/wasm-shim-rhel9@sha256:9dd129d64b87f513855130f89b9ade3507f92ce5223aa173eb608235b4255db7 has checksum 458a5ff405922b20142416993f486d22ea23d375f9ef4fc239a42f00649129e4, which does not match: 9dd129d64b87f513855130f89b9ade3507f92ce5223aa173eb608235b4255db7

       

      For the context, this wasm image is being used as reference in the [WasmPlugin|http://example.com] resource. RHCL is currently using this image format for building multi platform ({OS, ARCH} tuples) images.

       

      The[ wasm image bundled with RHCL v1.0.0|https://brewweb.engineering.redhat.com/brew/buildinfo?buildID=3427742], is built for x86_64 and ppc platforms.

       

      How

      There is no need to build multi platform wasm images as the images are not runtime images. Instead, the wasm images are just wasm modules packaged as OCI images that contain the binary in web assembly instruction format. This wasm module is being run inside the gateway in a sand-boxed environment and allows to extend the functionality of the gateway.

      Therefore, the obvious takeaway would be to build single platform OCI image. If one needs to be chosen, let's pick x86_64 and ensure it can run in ppc platform (cc QE)

       

       

              jkiely@redhat.com Joseph Kiely
              eguzki Eguzki Astiz Lezaun
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: