Documentation
¶
Index ¶
- Constants
- func BoolPtr(v bool) *bool
- func IntPtr(v int) *int
- func Merge(base, overrides any) error
- func MustResolveSchema(bytes []byte) *jsonschema.Resolved
- type CastingMeta
- type Flavor
- func (flavor Flavor) Enum() []any
- func (flavor Flavor) MarshalJSON() ([]byte, error)
- func (flavor Flavor) MarshalText() ([]byte, error)
- func (flavor Flavor) MarshalYAML() (any, error)
- func (flavor Flavor) String() string
- func (flavor *Flavor) UnmarshalJSON(text []byte) error
- func (flavor *Flavor) UnmarshalText(text []byte) error
- func (flavor *Flavor) UnmarshalYAML(node *yaml.Node) error
- type Kind
- func (kind Kind) Enum() []any
- func (kind Kind) MarshalJSON() ([]byte, error)
- func (kind Kind) MarshalText() ([]byte, error)
- func (kind Kind) MarshalYAML() (any, error)
- func (kind Kind) String() string
- func (kind *Kind) UnmarshalJSON(text []byte) error
- func (kind *Kind) UnmarshalText(text []byte) error
- func (kind *Kind) UnmarshalYAML(node *yaml.Node) error
- type Machinery
- type Mode
- func (mode Mode) Enum() []any
- func (mode Mode) MarshalJSON() ([]byte, error)
- func (mode Mode) MarshalText() ([]byte, error)
- func (mode Mode) MarshalYAML() (any, error)
- func (mode Mode) String() string
- func (mode *Mode) UnmarshalJSON(text []byte) error
- func (mode *Mode) UnmarshalText(text []byte) error
- func (mode *Mode) UnmarshalYAML(node *yaml.Node) error
- type MoldingKind
- type MoldingSpec
- type MoldingStatus
- type PatchEntry
- type PatchOperation
- type Platform
- func (platform Platform) Enum() []any
- func (platform Platform) MarshalJSON() ([]byte, error)
- func (platform Platform) MarshalText() ([]byte, error)
- func (platform Platform) MarshalYAML() (any, error)
- func (platform Platform) String() string
- func (platform *Platform) UnmarshalJSON(text []byte) error
- func (platform *Platform) UnmarshalText(text []byte) error
- func (platform *Platform) UnmarshalYAML(node *yaml.Node) error
- type Status
- type TypeCluster
- type TypeConfig
- type TypeDeployment
- type TypeMetadata
- type TypeVersion
Constants ¶
const (
// PatchTypeJSONPatch is the default patch type using JSON Patch (RFC 6902).
PatchTypeJSONPatch = "jsonpatch"
)
Variables ¶
This section is empty.
Functions ¶
func Merge ¶
Merge applies an override onto a base via Kubernetes strategic merge patch and mutates base in place. Both arguments must be pointers to the same concrete struct type. Fields typed as any are replaced wholesale rather than recursively merged.
func MustResolveSchema ¶ added in v0.2.3
func MustResolveSchema(bytes []byte) *jsonschema.Resolved
MustResolveSchema parses and resolves a JSON Schema, panicking on failure.
Types ¶
type CastingMeta ¶ added in v0.2.3
type CastingMeta struct {
TypeVersion `json:",inline" yaml:",inline"`
Kind Kind `json:"kind" yaml:"kind" required:"true" description:"Kind of the casting resource."`
Metadata TypeMetadata `json:"metadata" yaml:"metadata" required:"true" description:"Metadata of the casting configuration"`
Status Status `json:"status,omitzero" yaml:"status,omitempty" description:"Status of the casting"`
// contains filtered or unexported fields
}
CastingMeta carries the apiVersion, kind, metadata, and status fields shared by every casting kind. Per-Kind Casting structs embed it inline.
type Flavor ¶ added in v0.2.1
type Flavor struct {
// contains filtered or unexported fields
}
var ( FlavorCompose Flavor = Flavor{/* contains filtered or unexported fields */} FlavorSwarm Flavor = Flavor{/* contains filtered or unexported fields */} FlavorBinary Flavor = Flavor{/* contains filtered or unexported fields */} FlavorKustomize Flavor = Flavor{/* contains filtered or unexported fields */} FlavorHelm Flavor = Flavor{/* contains filtered or unexported fields */} FlavorBlueprint Flavor = Flavor{/* contains filtered or unexported fields */} FlavorStack Flavor = Flavor{/* contains filtered or unexported fields */} FlavorTemplate Flavor = Flavor{/* contains filtered or unexported fields */} FlavorTerraform Flavor = Flavor{/* contains filtered or unexported fields */} )
func (Flavor) MarshalJSON ¶ added in v0.2.1
func (Flavor) MarshalText ¶ added in v0.2.1
func (Flavor) MarshalYAML ¶ added in v0.2.1
func (*Flavor) UnmarshalJSON ¶ added in v0.2.1
func (*Flavor) UnmarshalText ¶ added in v0.2.1
type Kind ¶ added in v0.2.3
type Kind struct {
// contains filtered or unexported fields
}
Kind discriminates between top-level casting resource types. An empty/missing kind unmarshals to KindInstallation for backwards compatibility with casting files written before kind was introduced.
func (Kind) MarshalJSON ¶ added in v0.2.3
func (Kind) MarshalText ¶ added in v0.2.3
func (Kind) MarshalYAML ¶ added in v0.2.3
func (*Kind) UnmarshalJSON ¶ added in v0.2.3
func (*Kind) UnmarshalText ¶ added in v0.2.3
type Machinery ¶ added in v0.2.3
type Machinery interface {
Kind() Kind
TrackableProperties() domain.Properties
}
Machinery is the marker every per-Kind casting type satisfies.
type Mode ¶ added in v0.2.1
type Mode struct {
// contains filtered or unexported fields
}
func (Mode) MarshalJSON ¶ added in v0.2.1
func (Mode) MarshalText ¶ added in v0.2.1
func (Mode) MarshalYAML ¶ added in v0.2.1
func (*Mode) UnmarshalJSON ¶ added in v0.2.1
func (*Mode) UnmarshalText ¶ added in v0.2.1
type MoldingKind ¶
type MoldingKind struct {
// contains filtered or unexported fields
}
var ( MoldingKindIngester MoldingKind = MoldingKind{/* contains filtered or unexported fields */} MoldingKindTelemetryStore MoldingKind = MoldingKind{/* contains filtered or unexported fields */} MoldingKindTelemetryKeeper MoldingKind = MoldingKind{/* contains filtered or unexported fields */} MoldingKindMetaStore MoldingKind = MoldingKind{/* contains filtered or unexported fields */} MoldingKindSignoz MoldingKind = MoldingKind{/* contains filtered or unexported fields */} )
func MoldingKinds ¶
func MoldingKinds() []MoldingKind
func (MoldingKind) MarshalText ¶
func (kind MoldingKind) MarshalText() ([]byte, error)
func (MoldingKind) MarshalYAML ¶
func (kind MoldingKind) MarshalYAML() (any, error)
func (MoldingKind) String ¶
func (kind MoldingKind) String() string
func (*MoldingKind) UnmarshalText ¶
func (kind *MoldingKind) UnmarshalText(text []byte) error
func (*MoldingKind) UnmarshalYAML ¶
func (kind *MoldingKind) UnmarshalYAML(node *yaml.Node) error
type MoldingSpec ¶
type MoldingSpec struct {
// Whether the molding is enabled
Enabled *bool `json:"enabled,omitempty" yaml:"enabled,omitempty" description:"Whether the molding is enabled" default:"true"`
// Cluster configuration for the molding
Cluster TypeCluster `json:"cluster" yaml:"cluster,omitempty" description:"Cluster configuration for the molding"`
// The version of the molding to use
Version string `json:"version,omitempty" yaml:"version,omitempty" description:"The version of the molding to use" example:"latest"`
// Image of the molding
Image string `` /* 232-byte string literal not displayed */
// Environment variables for the molding
Env map[string]string `json:"env,omitempty" yaml:"env,omitempty" description:"Environment variables for the molding"`
// Configuration for the molding
Config TypeConfig `json:"config" yaml:"config,omitempty" description:"Configuration for the molding"`
// contains filtered or unexported fields
}
func (*MoldingSpec) IsEnabled ¶ added in v0.0.7
func (spec *MoldingSpec) IsEnabled() bool
IsEnabled returns whether the molding is enabled. Returns false if the receiver or Enabled is nil.
func (*MoldingSpec) MergeStatus ¶
func (spec *MoldingSpec) MergeStatus(status MoldingStatus) error
type MoldingStatus ¶
type MoldingStatus struct {
// Extra information about the molding
Extras map[string]string `json:"extras,omitempty" yaml:"extras,omitempty" description:"Extra information about the molding"`
// Environment variables for the molding
Env map[string]string `json:"env,omitempty" yaml:"env,omitempty" description:"Environment variables for the molding"`
// Configuration for the molding
Config TypeConfig `json:"config" yaml:"config,omitempty" description:"Configuration for the molding"`
// contains filtered or unexported fields
}
type PatchEntry ¶ added in v0.0.2
type PatchEntry struct {
// Type selects the patch driver. Defaults to "jsonpatch" if empty.
Type string `` /* 157-byte string literal not displayed */
// Target is the output file to patch, relative to the pours directory.
Target string `` /* 225-byte string literal not displayed */
// Operations is a list of JSON Patch (RFC 6902) operations to apply. Used by the jsonpatch driver.
Operations []PatchOperation `` /* 151-byte string literal not displayed */
// contains filtered or unexported fields
}
PatchEntry is a set of patch operations targeting a specific generated file.
func (PatchEntry) PatchType ¶ added in v0.0.2
func (pe PatchEntry) PatchType() string
PatchType returns the patch type, defaulting to PatchTypeJSONPatch if empty.
type PatchOperation ¶ added in v0.0.2
type PatchOperation struct {
// Op is the JSON Patch (RFC 6902) operation type: add, remove, replace, move, copy, test.
Op string `` /* 127-byte string literal not displayed */
// Path is a JSON Pointer (RFC 6902) to the target location.
Path string `` /* 154-byte string literal not displayed */
// Value is the value for add, replace, or test operations.
Value any `json:"value,omitempty" yaml:"value,omitempty" description:"Value for add, replace, or test operations"`
// From is a JSON Pointer for the source location in move and copy operations.
From string `` /* 160-byte string literal not displayed */
// contains filtered or unexported fields
}
PatchOperation is a single JSON Patch (RFC 6902) operation. Used by the jsonpatch driver.
type Platform ¶ added in v0.2.1
type Platform struct {
// contains filtered or unexported fields
}
var ( PlatformRender Platform = Platform{/* contains filtered or unexported fields */} PlatformCoolify Platform = Platform{/* contains filtered or unexported fields */} PlatformRailway Platform = Platform{/* contains filtered or unexported fields */} PlatformECS Platform = Platform{/* contains filtered or unexported fields */} PlatformAWS Platform = Platform{/* contains filtered or unexported fields */} PlatformGCP Platform = Platform{/* contains filtered or unexported fields */} PlatformAzure Platform = Platform{/* contains filtered or unexported fields */} )
func (Platform) MarshalJSON ¶ added in v0.2.1
func (Platform) MarshalText ¶ added in v0.2.1
func (Platform) MarshalYAML ¶ added in v0.2.1
func (*Platform) UnmarshalJSON ¶ added in v0.2.1
func (*Platform) UnmarshalText ¶ added in v0.2.1
type Status ¶ added in v0.2.3
type Status struct {
Checksum string `json:"checksum" yaml:"checksum" description:"Checksum of the casting file"`
// contains filtered or unexported fields
}
Status carries the casting file's checksum.
type TypeCluster ¶
type TypeCluster struct {
Replicas *int `json:"replicas,omitempty" yaml:"replicas,omitempty" minimum:"0" description:"Number of replicas for the molding." example:"1"`
Shards *int `json:"shards,omitempty" yaml:"shards,omitempty" minimum:"1" description:"Number of shards for the molding" example:"1"`
// contains filtered or unexported fields
}
type TypeConfig ¶
type TypeDeployment ¶
type TypeDeployment struct {
// Platform: cloud or hosting provider where an installation runs.
Platform Platform `json:"platform,omitzero" yaml:"platform,omitempty" description:"Provider where an installation runs on"`
// Mode: type of installation method (engine or technology behind the deployment).
Mode Mode `json:"mode,omitzero" yaml:"mode,omitempty" description:"Type of installation method"`
// Flavor: variant of the mode for the deployment.
Flavor Flavor `json:"flavor,omitzero" yaml:"flavor,omitempty" description:"Flavor of mode for the deployment"`
// contains filtered or unexported fields
}
type TypeMetadata ¶
type TypeVersion ¶
type TypeVersion struct {
APIVersion string `` /* 177-byte string literal not displayed */
}