Documentation
¶
Overview ¶
Package converge provides the embeddable durable reconciliation runtime.
Index ¶
- Variables
- type Runtime
- func (r *Runtime) Backup(ctx context.Context, destination string) error
- func (r *Runtime) Close() error
- func (r *Runtime) ConfigStatus(name string) (core.ConfigReport, bool)
- func (r *Runtime) CurrentSnapshot(ctx context.Context) (SnapshotIdentity, error)
- func (r *Runtime) Ready() bool
- func (r *Runtime) Refresh(ctx context.Context, name string) error
- func (r *Runtime) RegisterProvider(ctx context.Context, provider core.Provider) error
- func (r *Runtime) Run(ctx context.Context) error
- func (r *Runtime) Status(ctx context.Context) (RuntimeStatus, error)
- func (r *Runtime) SubmitSnapshot(ctx context.Context, snapshot model.DesiredSnapshot) SnapshotACK
- func (r *Runtime) UnregisterProviderVersion(providerType, providerDigest string) error
- type RuntimeStatus
- type SnapshotACK
- type SnapshotIdentity
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type Runtime ¶
type Runtime struct {
// contains filtered or unexported fields
}
Runtime owns durable snapshot acceptance and translates the latest complete snapshot into idempotent per-config reconciliation intents.
func OpenSQLiteRuntime ¶
func OpenSQLiteRuntime(ctx context.Context, path string, options ...core.ReconcilerOption) (*Runtime, error)
OpenSQLiteRuntime opens a self-contained runtime backed by one SQLite database. Runtime owns the database and closes it from Close.
func (*Runtime) Close ¶
Close releases the SQLite database owned by a runtime created with OpenSQLiteRuntime. The caller must first cancel Run and wait for it to return. No other Runtime calls may race with Close. Close is idempotent.
func (*Runtime) ConfigStatus ¶
func (r *Runtime) ConfigStatus(name string) (core.ConfigReport, bool)
func (*Runtime) CurrentSnapshot ¶
func (r *Runtime) CurrentSnapshot(ctx context.Context) (SnapshotIdentity, error)
func (*Runtime) RegisterProvider ¶
RegisterProvider registers a resource implementation. Register Providers before Run; a later digest for the same type is a rolling upgrade.
func (*Runtime) Run ¶
Run recovers Core first, then replays the latest durable snapshot. A successful SubmitSnapshot does not depend on Run being online.
func (*Runtime) SubmitSnapshot ¶
func (r *Runtime) SubmitSnapshot(ctx context.Context, snapshot model.DesiredSnapshot) SnapshotACK
SubmitSnapshot validates and persists the complete snapshot before returning an accepted ACK. Convergence happens asynchronously in Run.
func (*Runtime) UnregisterProviderVersion ¶
UnregisterProviderVersion removes an unused Provider version while stopped.
type RuntimeStatus ¶
type RuntimeStatus struct {
Snapshot SnapshotIdentity `json:"snapshot"`
DispatchedRevision uint64 `json:"dispatched_revision,omitempty"`
ApplyError string `json:"apply_error,omitempty"`
Configs []core.ConfigReport `json:"configs"`
}
type SnapshotACK ¶
type SnapshotIdentity ¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package core defines the Converge execution engine and provider contract.
|
Package core defines the Converge execution engine and provider contract. |
|
Package observability defines Converge's backend-neutral telemetry contract.
|
Package observability defines Converge's backend-neutral telemetry contract. |
|
pkg
|
|
|
model
Package model defines the fundamental, language-neutral data types for the Converge reconciliation engine.
|
Package model defines the fundamental, language-neutral data types for the Converge reconciliation engine. |