Documentation
¶
Overview ¶
Package resourceapply checks and converges declarative SecondBox resources.
Index ¶
Constants ¶
View Source
const SchemaVersion = "secondbox.resources/v1"
Variables ¶
This section is empty.
Functions ¶
func SpecDigest ¶
func SpecDigest(spec secondboxclient.ProfileRevisionSpec) (string, error)
Types ¶
type Client ¶
type Client interface {
GetRunnerPool(context.Context, secondboxclient.ProfileName) (secondboxclient.RunnerPool, error)
CreateRunnerPool(context.Context, secondboxclient.CreateRunnerPoolRequest) (secondboxclient.RunnerPool, error)
UpdateRunnerPool(context.Context, secondboxclient.ProfileName, int64, secondboxclient.UpdateRunnerPoolRequest) (secondboxclient.RunnerPool, error)
GetProfile(context.Context, secondboxclient.ProfileName) (secondboxclient.Profile, error)
CreateProfile(context.Context, secondboxclient.CreateProfileRequest, string) (secondboxclient.Profile, error)
ReviseProfile(context.Context, secondboxclient.ProfileName, int64, secondboxclient.ReviseProfileRequest, string) (secondboxclient.Profile, error)
}
Client is the high-level Go SDK surface used by both CLI and deployment tooling.
type Document ¶
type Document struct {
SchemaVersion string `json:"schemaVersion"`
RunnerPools []RunnerPool `json:"runnerPools"`
Profiles []Profile `json:"profiles"`
}
Document is a non-secret desired-state document. Absence never means delete.
type Profile ¶
type Profile struct {
Name string `json:"name"`
Revisions []ProfileRevision `json:"revisions"`
}
type ProfileRevision ¶
type ProfileRevision struct {
Number int64 `json:"number"`
SpecDigest string `json:"specDigest"`
Spec secondboxclient.ProfileRevisionSpec `json:"spec"`
}
type Report ¶
type RunnerPool ¶
type RunnerPool struct {
Name string `json:"name"`
Architectures secondboxclient.RunnerArchitectureList `json:"architectures"`
Capabilities secondboxclient.RunnerCapabilityList `json:"capabilities"`
CapacityPolicy secondboxclient.RunnerCapacityPolicy `json:"capacityPolicy"`
State secondboxclient.RunnerPoolState `json:"state"`
MutableFields []string `json:"mutableFields"`
}
Click to show internal directories.
Click to hide internal directories.