Documentation
¶
Index ¶
- Constants
- func MarshalDeterministic(i *Impact) ([]byte, error)
- func Write(path string, i *Impact) error
- type Ack
- type AliasChanges
- type AliasUpdate
- type Analysis
- type App
- type Artifacts
- type BindingFile
- type BindingsArtifactRef
- type BuildOptions
- type ChangeSummary
- type Changes
- type Classification
- type FingerprintChange
- type Impact
- type LegacySummary
- type PersistedPrimitiveChanges
- type Rollback
- type SchemaComparison
- type SchemaRef
- type SessionKeyChanges
- type SessionKeyEntity
- type SessionKeyFingerprint
- type StateArtifactRef
- type StateEntity
- type Toolchain
Constants ¶
View Source
const ( SchemaVersion = "vango.state.impact.v1.0" ArtifactKind = "vango_state_impact" DefaultOutputPath = ".vango/state/vango_state_impact.json" )
Variables ¶
This section is empty.
Functions ¶
func MarshalDeterministic ¶
Types ¶
type Ack ¶
type Ack struct {
Required bool `json:"required"`
Class string `json:"class"`
File string `json:"file,omitempty"`
Present bool `json:"present"`
Valid bool `json:"valid"`
ProofLevel artifact.ProofLevel `json:"proof_level,omitempty"`
SchemaHashBefore string `json:"schema_hash_before,omitempty"`
SchemaHashAfter string `json:"schema_hash_after,omitempty"`
AcknowledgedBy string `json:"acknowledged_by,omitempty"`
Timestamp string `json:"timestamp,omitempty"`
}
type AliasChanges ¶
type AliasChanges struct {
Updated []AliasUpdate `json:"updated"`
}
type AliasUpdate ¶
type Analysis ¶
type Analysis struct {
Mode string `json:"mode"`
Status artifact.AnalysisStatus `json:"status"`
SupportLevel artifact.SupportLevel `json:"support_level"`
ProofLevel artifact.ProofLevel `json:"proof_level"`
PreviousRef string `json:"previous_ref"`
CandidateRef string `json:"candidate_ref"`
GeneratedArtifactsCurrent bool `json:"generated_artifacts_current"`
BindingsCurrent bool `json:"bindings_current"`
UnsupportedReason string `json:"unsupported_reason,omitempty"`
}
type Artifacts ¶
type Artifacts struct {
StateManifest StateArtifactRef `json:"state_manifest"`
StateSchema StateArtifactRef `json:"state_schema"`
Bindings BindingsArtifactRef `json:"bindings"`
ColdDeployAck StateArtifactRef `json:"cold_deploy_ack"`
}
type BindingFile ¶
type BindingsArtifactRef ¶
type BindingsArtifactRef struct {
ID string `json:"id"`
Glob string `json:"glob"`
Status string `json:"status"`
FileCount int `json:"file_count"`
Files []BindingFile `json:"files"`
}
type BuildOptions ¶
type ChangeSummary ¶
type ChangeSummary struct {
AddedPersistedIDs int `json:"added_persisted_ids"`
RemovedPersistedIDs int `json:"removed_persisted_ids"`
ChangedPersistedFingerprints int `json:"changed_persisted_fingerprints"`
AddedSessionKeys int `json:"added_session_keys"`
RemovedSessionKeys int `json:"removed_session_keys"`
ChangedSessionKeyFingerprints int `json:"changed_session_key_fingerprints"`
AliasUpdates int `json:"alias_updates"`
}
type Changes ¶
type Changes struct {
Summary ChangeSummary `json:"summary"`
PersistedPrimitives PersistedPrimitiveChanges `json:"persisted_primitives"`
SessionKeys SessionKeyChanges `json:"session_keys"`
Aliases AliasChanges `json:"aliases"`
}
type Classification ¶
type Classification string
const ( ClassificationNeutral Classification = "neutral" ClassificationWarm Classification = "warm" ClassificationCold Classification = "cold" ClassificationManualReview Classification = "manual_review" )
type FingerprintChange ¶
type Impact ¶
type Impact struct {
SchemaVersion string `json:"schema_version"`
ArtifactID string `json:"artifact_id"`
ArtifactKind string `json:"artifact_kind"`
Producer artifact.Producer `json:"producer"`
Toolchain Toolchain `json:"toolchain"`
App App `json:"app"`
Analysis Analysis `json:"analysis"`
Classification Classification `json:"classification"`
SourceClassification string `json:"source_classification"`
Reason string `json:"reason,omitempty"`
RequiresVangoAckOrReview bool `json:"requires_vango_ack_or_review"`
Ack Ack `json:"ack"`
Artifacts Artifacts `json:"artifacts"`
Schema SchemaComparison `json:"schema"`
Changes Changes `json:"changes"`
Rollback Rollback `json:"rollback"`
Inputs []artifact.ArtifactRef `json:"inputs"`
Outputs []artifact.ArtifactRef `json:"outputs"`
References map[string]artifact.ArtifactRef `json:"references,omitempty"`
Diagnostics []artifact.Diagnostic `json:"diagnostics"`
OperationReadiness []artifact.OperationReadiness `json:"operation_readiness,omitempty"`
LegacySummary LegacySummary `json:"legacy_summary,omitempty"`
}
type LegacySummary ¶
type LegacySummary struct {
Classification string `json:"classification"`
Reason string `json:"reason,omitempty"`
RequiresAck bool `json:"requiresAck"`
AddedPersistedIDs []string `json:"addedPersistedIDs,omitempty"`
RemovedPersistedIDs []string `json:"removedPersistedIDs,omitempty"`
FingerprintChanges int `json:"fingerprintChanges,omitempty"`
AddedSessionKeys []string `json:"addedSessionKeys,omitempty"`
RemovedSessionKeys []string `json:"removedSessionKeys,omitempty"`
AliasUpdates int `json:"aliasUpdates,omitempty"`
}
func BuildLegacySummary ¶
func BuildLegacySummary(p *plan.Plan) LegacySummary
type PersistedPrimitiveChanges ¶
type PersistedPrimitiveChanges struct {
Added []StateEntity `json:"added"`
Removed []StateEntity `json:"removed"`
FingerprintChanged []FingerprintChange `json:"fingerprint_changed"`
}
type SchemaComparison ¶
type SchemaRef ¶
type SchemaRef struct {
ID string `json:"id"`
Path string `json:"path,omitempty"`
Source string `json:"source,omitempty"`
SchemaVersion string `json:"schema_version,omitempty"`
SchemaHash string `json:"schema_hash,omitempty"`
PersistedPrimitiveCount int `json:"persisted_primitive_count"`
SessionKeyCount int `json:"session_key_count"`
Status string `json:"status,omitempty"`
}
type SessionKeyChanges ¶
type SessionKeyChanges struct {
Added []SessionKeyEntity `json:"added"`
Removed []SessionKeyEntity `json:"removed"`
FingerprintChanged []SessionKeyFingerprint `json:"fingerprint_changed"`
}
type SessionKeyEntity ¶
type SessionKeyFingerprint ¶
type SessionKeyFingerprint struct {
ID string `json:"id"`
Name string `json:"name"`
OldStableID string `json:"old_stable_id,omitempty"`
NewStableID string `json:"new_stable_id,omitempty"`
OldFingerprint string `json:"old_fingerprint,omitempty"`
NewFingerprint string `json:"new_fingerprint,omitempty"`
}
type StateArtifactRef ¶
type StateEntity ¶
Click to show internal directories.
Click to hide internal directories.