Documentation
¶
Overview ¶
Package standardresources materializes release-owned resource bundles from a verified release artifact manifest and explicit deployment bindings.
Index ¶
- Constants
- func Build(manifest releasecontract.ArtifactManifest, selection Selection) (resourceapply.Document, error)
- func BundleNames() []string
- func DevelopmentProfileLineage(name, runtimeDigest, toolchainDigest string) (resourceapply.Profile, error)
- func ProfileLineage(name, runtimeDigest, toolchainDigest string) (resourceapply.Profile, error)
- type BundleDocument
- type PoolBinding
- type RecordedBundleDocument
- type RecordedProfile
- type RecordedProfileRevision
- type Selection
Constants ¶
const ( AgentCompartment = "agent-compartment" DurableCoding = "durable-coding" AgentCompartmentIsolated = "agent-compartment-isolated" ArchitectureAMD64 = "amd64" PoolAMD64 = "standard-amd64" DurableCodingVCPUCount = int64(4) DurableCodingMemoryBytes = int64(8 << 30) DurableCodingWorkspaceBytes = int64(50 << 30) DurableCodingConcurrentOperations = int64(16) AgentGateway = "agent-gateway.secondbox.internal" PlatformGateway = "platform-gateway.secondbox.internal" )
const BundleSchemaVersion = "secondbox.standard-bundle/v2"
Variables ¶
This section is empty.
Functions ¶
func Build ¶
func Build(manifest releasecontract.ArtifactManifest, selection Selection) (resourceapply.Document, error)
Build resolves execution asset digests only from the already-validated artifact manifest. Consumer repositories never copy release digests.
func BundleNames ¶ added in v0.6.0
func BundleNames() []string
BundleNames returns every release-owned standard bundle in artifact order.
func DevelopmentProfileLineage ¶ added in v0.4.0
func DevelopmentProfileLineage(name, runtimeDigest, toolchainDigest string) (resourceapply.Profile, error)
DevelopmentProfileLineage returns a synthetic, current-only lineage for the explicit local development release identity. It never imports published history whose signed component assets are absent from the development catalog.
func ProfileLineage ¶
func ProfileLineage(name, runtimeDigest, toolchainDigest string) (resourceapply.Profile, error)
ProfileLineage returns the complete ordered lineage for one architecture-qualified standard Profile.
Types ¶
type BundleDocument ¶
type BundleDocument struct {
SchemaVersion string `json:"schemaVersion"`
Name string `json:"name"`
Architecture string `json:"architecture"`
RunnerPoolSelector string `json:"runnerPoolSelector"`
LogicalGateway string `json:"logicalGateway"`
SignedManifestDigest string `json:"signedManifestDigest"`
RuntimeBundleDigest string `json:"runtimeBundleDigest"`
ToolchainBundleDigest string `json:"toolchainBundleDigest"`
Profile resourceapply.Profile `json:"profile"`
ParameterSchema json.RawMessage `json:"parameterSchema"`
}
func DecodeDocument ¶
func DecodeDocument(data []byte) (BundleDocument, error)
func Documents ¶
func Documents(signedManifestDigest, runtimeBundleDigest, toolchainBundleDigest string) ([]BundleDocument, error)
func (BundleDocument) Validate ¶
func (document BundleDocument) Validate() error
type PoolBinding ¶
type RecordedBundleDocument ¶ added in v0.7.1
type RecordedBundleDocument struct {
SchemaVersion string `json:"schemaVersion"`
Name string `json:"name"`
Architecture string `json:"architecture"`
RunnerPoolSelector string `json:"runnerPoolSelector"`
LogicalGateway string `json:"logicalGateway"`
SignedManifestDigest string `json:"signedManifestDigest"`
RuntimeBundleDigest string `json:"runtimeBundleDigest"`
ToolchainBundleDigest string `json:"toolchainBundleDigest"`
Profile RecordedProfile `json:"profile"`
ParameterSchema json.RawMessage `json:"parameterSchema"`
}
RecordedBundleDocument preserves the raw immutable Profile specs from a published release. They are authenticated against their recorded digests without decoding removed fields into the current operator-facing schema.
func DecodeRecordedDocument ¶ added in v0.6.0
func DecodeRecordedDocument(data []byte) (RecordedBundleDocument, error)
DecodeRecordedDocument validates an immutable published bundle without regenerating its Profile lineage from newer code-owned policy. The release manifest remains responsible for binding every recorded revision identity.
func (RecordedBundleDocument) ValidateRecorded ¶ added in v0.7.1
func (document RecordedBundleDocument) ValidateRecorded() error
ValidateRecorded proves the self-contained structure and digests of a previously published bundle. It deliberately does not compare that lineage with the current binary's append-only ProfileLineage.
type RecordedProfile ¶ added in v0.7.1
type RecordedProfile struct {
Name string `json:"name"`
Revisions []RecordedProfileRevision `json:"revisions"`
}
type RecordedProfileRevision ¶ added in v0.7.1
type RecordedProfileRevision struct {
Number int64 `json:"number"`
SpecDigest string `json:"specDigest"`
Spec json.RawMessage `json:"spec"`
}
type Selection ¶
type Selection struct {
Bundles []string
Pools map[string]PoolBinding
}