v1alpha1

package
v0.2.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 16, 2026 License: AGPL-3.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// PatchTypeJSONPatch is the default patch type using JSON Patch (RFC 6902).
	PatchTypeJSONPatch = "jsonpatch"
)

Variables

This section is empty.

Functions

func BoolPtr added in v0.2.3

func BoolPtr(v bool) *bool

func IntPtr added in v0.2.3

func IntPtr(v int) *int

func Merge

func Merge(base, overrides any) error

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 Flavors added in v0.2.1

func Flavors() []Flavor

func (Flavor) Enum added in v0.2.1

func (flavor Flavor) Enum() []any

func (Flavor) MarshalJSON added in v0.2.1

func (flavor Flavor) MarshalJSON() ([]byte, error)

func (Flavor) MarshalText added in v0.2.1

func (flavor Flavor) MarshalText() ([]byte, error)

func (Flavor) MarshalYAML added in v0.2.1

func (flavor Flavor) MarshalYAML() (any, error)

func (Flavor) String added in v0.2.1

func (flavor Flavor) String() string

func (*Flavor) UnmarshalJSON added in v0.2.1

func (flavor *Flavor) UnmarshalJSON(text []byte) error

func (*Flavor) UnmarshalText added in v0.2.1

func (flavor *Flavor) UnmarshalText(text []byte) error

func (*Flavor) UnmarshalYAML added in v0.2.1

func (flavor *Flavor) UnmarshalYAML(node *yaml.Node) error

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.

var (
	KindInstallation    Kind = Kind{/* contains filtered or unexported fields */}
	KindCollectionAgent Kind = Kind{/* contains filtered or unexported fields */}
)

func Kinds added in v0.2.3

func Kinds() []Kind

func (Kind) Enum added in v0.2.3

func (kind Kind) Enum() []any

func (Kind) MarshalJSON added in v0.2.3

func (kind Kind) MarshalJSON() ([]byte, error)

func (Kind) MarshalText added in v0.2.3

func (kind Kind) MarshalText() ([]byte, error)

func (Kind) MarshalYAML added in v0.2.3

func (kind Kind) MarshalYAML() (any, error)

func (Kind) String added in v0.2.3

func (kind Kind) String() string

func (*Kind) UnmarshalJSON added in v0.2.3

func (kind *Kind) UnmarshalJSON(text []byte) error

func (*Kind) UnmarshalText added in v0.2.3

func (kind *Kind) UnmarshalText(text []byte) error

func (*Kind) UnmarshalYAML added in v0.2.3

func (kind *Kind) UnmarshalYAML(node *yaml.Node) error

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
}
var (
	ModeDocker     Mode = Mode{/* contains filtered or unexported fields */}
	ModeSystemd    Mode = Mode{/* contains filtered or unexported fields */}
	ModeKubernetes Mode = Mode{/* contains filtered or unexported fields */}
	ModeEC2        Mode = Mode{/* contains filtered or unexported fields */}
)

func Modes added in v0.2.1

func Modes() []Mode

func (Mode) Enum added in v0.2.1

func (mode Mode) Enum() []any

func (Mode) MarshalJSON added in v0.2.1

func (mode Mode) MarshalJSON() ([]byte, error)

func (Mode) MarshalText added in v0.2.1

func (mode Mode) MarshalText() ([]byte, error)

func (Mode) MarshalYAML added in v0.2.1

func (mode Mode) MarshalYAML() (any, error)

func (Mode) String added in v0.2.1

func (mode Mode) String() string

func (*Mode) UnmarshalJSON added in v0.2.1

func (mode *Mode) UnmarshalJSON(text []byte) error

func (*Mode) UnmarshalText added in v0.2.1

func (mode *Mode) UnmarshalText(text []byte) error

func (*Mode) UnmarshalYAML added in v0.2.1

func (mode *Mode) UnmarshalYAML(node *yaml.Node) error

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 Platforms added in v0.2.1

func Platforms() []Platform

func (Platform) Enum added in v0.2.1

func (platform Platform) Enum() []any

func (Platform) MarshalJSON added in v0.2.1

func (platform Platform) MarshalJSON() ([]byte, error)

func (Platform) MarshalText added in v0.2.1

func (platform Platform) MarshalText() ([]byte, error)

func (Platform) MarshalYAML added in v0.2.1

func (platform Platform) MarshalYAML() (any, error)

func (Platform) String added in v0.2.1

func (platform Platform) String() string

func (*Platform) UnmarshalJSON added in v0.2.1

func (platform *Platform) UnmarshalJSON(text []byte) error

func (*Platform) UnmarshalText added in v0.2.1

func (platform *Platform) UnmarshalText(text []byte) error

func (*Platform) UnmarshalYAML added in v0.2.1

func (platform *Platform) UnmarshalYAML(node *yaml.Node) error

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 TypeConfig struct {
	Data map[string]string `json:"data,omitempty" yaml:"data,omitempty" description:"Configuration data as key-value pairs."`
	// contains filtered or unexported fields
}

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 TypeMetadata struct {
	Name        string            `` /* 240-byte string literal not displayed */
	Annotations map[string]string `` /* 209-byte string literal not displayed */
	// contains filtered or unexported fields
}

type TypeVersion

type TypeVersion struct {
	APIVersion string `` /* 177-byte string literal not displayed */
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL