blueprintMaskV1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2024 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BlueprintMaskV1

type BlueprintMaskV1 struct {
	serializer.GeneralBlueprintMask
	// ID is the unique name of the set over all components. This blueprint mask ID should be used to distinguish
	// from similar blueprint masks between humans in an easy way. Must not be empty.
	ID string `json:"blueprintMaskId"`
	// Dogus contains a set of dogus which alters the states of the dogus in the blueprint this mask is applied on.
	// The names and target states of all dogus must not be empty.
	Dogus []MaskTargetDogu `json:"dogus"`
}

BlueprintMaskV1 describes an abstraction of CES components that should alter a blueprint definition before applying it to a CES system via a blueprint upgrade. The blueprint mask should not change the blueprint JSON file itself, but is applied to the information in it to generate a new effective blueprint.

In general additions without changing the version are fine, as long as they don't change semantics. Removal or renaming are breaking changes and require a new blueprint mask API version.

func ConvertToBlueprintMaskV1

func ConvertToBlueprintMaskV1(spec domain.BlueprintMask) (BlueprintMaskV1, error)

type MaskTargetDogu

type MaskTargetDogu struct {
	// Name defines the name of the dogu including its namespace, f. i. "official/nginx". Must not be empty. If you set another namespace than in the normal blueprint, a
	Name string `json:"name"`
	// Version defines the version of the dogu that is to be installed. This version is optional and overrides
	// the version of the dogu from the blueprint.
	Version string `json:"version"`
	// TargetState defines a state of installation of this dogu. Optional field, but defaults to "TargetStatePresent"
	TargetState string `json:"targetState"`
}

MaskTargetDogu defines a Dogu, its version, and the installation state in which it is supposed to be after a blueprint was applied for a blueprintMask.

type Serializer

type Serializer struct{}

func (Serializer) Deserialize

func (b Serializer) Deserialize(rawBlueprintMask string) (domain.BlueprintMask, error)

func (Serializer) Serialize

func (b Serializer) Serialize(mask domain.BlueprintMask) (string, error)

Jump to

Keyboard shortcuts

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