Skip to content

Spin config/secret store implementation #74

Description

@aram356

User Story

As a developer deploying to Fermyon Spin, I want to use the EdgeZero config store and secret store APIs, so that I can read application configuration and secrets from my Spin application using the same interface as Fastly, Cloudflare, and Axum adapters.

Background

The ConfigStore and SecretStore traits are defined in edgezero-core. Fastly, Cloudflare, and Axum adapters implement both traits. The Spin adapter currently has no store support. Spin exposes configuration via spin_sdk::variables and secrets via the same variables API with protected values.

Acceptance Criteria

  • SpinConfigStore implements ConfigStore from edgezero-core using the spin-sdk variables API
  • SpinSecretStore implements SecretStore from edgezero-core using the spin-sdk variables API (secrets are protected variables)
  • Both types are exported from edgezero-adapter-spin
  • Manifest validation in edgezero-core recognises spin as a supported config store and secret store adapter
  • Contract tests pass for both SpinConfigStore and SpinSecretStore
  • No Tokio or native-only dependencies introduced (WASM-compatible only)
  • cargo clippy and cargo fmt pass

Affected Area

Adapter -- Spin

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions