Internal

internal/adapters/jsonstore

Package jsonstore persists session ledgers as atomic JSON files.

import "github.com/nilstate/scafld/v2/internal/adapters/jsonstore"

Package jsonstore persists session ledgers as atomic JSON files.

Variables

ErrSessionNotFound is returned when a task has no session ledger.

Source: internal/adapters/jsonstore/session_store.go:18

var ErrSessionNotFound = errors.New("session not found")

Types

type SessionStore

Source: internal/adapters/jsonstore/session_store.go:21

SessionStore persists session ledgers below .scafld/runs.

type SessionStore struct {
	Root string
}
Fields
  • Root string

func Append(ctx context.Context, taskID string, entry session.Entry, now string) (session.Session, error)

Source: internal/adapters/jsonstore/session_store.go:95

Append appends one evidence entry and atomically writes the replayed ledger.

func List(ctx context.Context) ([]session.Session, error)

Source: internal/adapters/jsonstore/session_store.go:48

List reads all session ledgers under .scafld/runs.

func Load(ctx context.Context, taskID string) (session.Session, error)

Source: internal/adapters/jsonstore/session_store.go:28

Load reads and replays the session ledger for taskID.

func Save(ctx context.Context, ledger session.Session) error

Source: internal/adapters/jsonstore/session_store.go:83

Save atomically replaces the session ledger.