Documentation ¶
Index ¶
Constants ¶
const DEFAULTFORMAT = "yaml"
DEFAULTFORMAT is the default format to write the Manifest. Could be Yaml or Json
const Version = "0.1.0"
Version is the current KubeKit and KubekitOS version
Variables ¶
var ChecksumTypes = []ChecksumType{"sha256"}
ChecksumTypes is a list of supported checksum types
var KubeManifest = Manifest{ Releases: map[string]Release{ "2.1.0": release, }, }
KubeManifest is a global variable that defines the KubekitOS Manifest and all the Releases in it
var Prerelease = "dev"
Prerelease is a marker for the version. If this is "" (empty string) then it means that it is a final release. Otherwise, this is a pre-release such as "dev" (in development), "beta", "rc1", etc.
Functions ¶
Types ¶
type ChecksumType ¶
type ChecksumType string
ChecksumType is a type to group the few supported checksum types
type Dependencies ¶
type Dependencies struct { ControlPlane map[string]Dependency `json:"control-plane,omitempty" yaml:"control-plane,omitempty" mapstructure:"control-plane"` Core map[string]Dependency `json:"core,omitempty" yaml:"core,omitempty" mapstructure:"core"` }
Dependencies has 1 kind of dependencies list: core
type Dependency ¶
type Dependency struct { Version string `json:"version" yaml:"version" mapstructure:"version"` Name string `json:"name" yaml:"name" mapstructure:"name"` Src string `json:"src" yaml:"src" mapstructure:"src"` PrebakePath string `json:"prebake-path" yaml:"prebake-path" mapstructure:"prebake-path"` Checksum string `json:"checksum" yaml:"checksum" mapstructure:"checksum"` ChecksumType ChecksumType `json:"checksum_type" yaml:"checksum_type" mapstructure:"checksum_type"` LicenseURL string `json:"license_url" yaml:"license_url" mapstructure:"license_url"` }
Dependency defines a software, package or application required on KubekitOS
type Manifest ¶
type Manifest struct {
Releases map[string]Release `json:"releases" yaml:"releases" mapstructure:"releases"`
}
Manifest is the main type that encapsulate a manifest
type Release ¶
type Release struct { PreviousVersion string `json:"previous-version" yaml:"previous-version" mapstructure:"previous-version"` KubernetesVersion string `json:"kubernetes-version" yaml:"kubernetes-version" mapstructure:"kubernetes-version"` DockerVersion string `json:"docker-version" yaml:"docker-version" mapstructure:"docker-version"` EtcdVersion string `json:"etcd-version" yaml:"etcd-version" mapstructure:"etcd-version"` Dependencies Dependencies `json:"dependencies" yaml:"dependencies" mapstructure:"dependencies"` }
Release contain a Kubernetes version and dependencies