provstore

package
v0.9.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 12, 2026 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package provstore persists the registry of Mooring-provisioned apps (plan §7): the compose path and the typed form spec (mooring.yaml under the hood) that is the source of truth for regenerate/drift. Mooring GENERATES and owns the compose — there is no raw-compose paste — so source is always "generated". It holds NO secrets (env values live in the encrypted env store), so rows are safe at rest without a cipher.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type App

type App struct {
	Slug        string
	Source      string // always "generated" — Mooring owns the compose (no raw paste)
	ComposePath string
	SpecJSON    string
	CreatedAt   int64
	UpdatedAt   int64
}

App is one provisioned-app registry row.

type Store

type Store struct {
	// contains filtered or unexported fields
}

Store persists provisioned apps.

func New

func New(db *store.DB) *Store

New builds a Store.

func (*Store) Delete

func (s *Store) Delete(ctx context.Context, slug string) error

Delete removes a provisioned app's registry row (the run dir is removed separately by the caller).

func (*Store) Get

func (s *Store) Get(slug string) (App, bool, error)

Get returns a provisioned app.

func (*Store) List

func (s *Store) List() ([]App, error)

List returns all provisioned apps, newest first.

func (*Store) Save

func (s *Store) Save(ctx context.Context, a App) error

Save upserts a provisioned app. created_at is preserved across updates.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL