Skip to content

Add Spin (WebAssembly) build backend support #11

@kingdonb

Description

@kingdonb

Goal: Add Spin (WebAssembly) as a build backend option alongside Kaniko

Background:
Spin provides fast, secure WebAssembly builds that can be orchestrated with SpinKube. This represents the modern evolution of container deployment - faster startup, better security model, and excellent developer experience.

Technical Requirements:

Build Configuration:

# build-config.yaml
build_backend: spin
spin_config:
  template: http-rust  # or http-go, http-js, etc.
  component_name: my-app
platforms:
  - wasm32-wasi
additional_tags:
  - latest
  - v1.0.0

Pipeline Integration:

  • Spin build stage: spin build equivalent to Kaniko execution
  • Registry push: Push to OCI registry as WebAssembly component
  • Multi-arch support: WASI target architecture handling
  • Manifest creation: WebAssembly component manifests

Spin-Specific Features:

  • Template detection: Auto-detect Spin templates (http-rust, http-go, etc.)
  • Component builds: Support multi-component Spin applications
  • Local testing: spin up equivalent in pipeline for validation

Integration Points:

  • SpinKube deployment: Future integration with Kubernetes SpinKube operator
  • Registry compatibility: Ensure WASM components work with standard registries
  • Security model: Leverage Spin's capability-based security

Success Criteria:

  • Can build Spin applications from Git repositories
  • Multi-architecture WASM component support
  • Registry push/pull of WebAssembly components
  • Clear migration path from container to WASM deployment

References:

Priority: Medium (new capability, doesn't block existing features)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions