types

package
v1.30.0 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2018 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// The filename where we persist the RuntimePod data
	RuntimeConfigPath = "runtime-config"

	// App-level annotations: streams mode
	AppStdinMode  = "coreos.com/rkt/stage2/stdin"
	AppStdoutMode = "coreos.com/rkt/stage2/stdout"
	AppStderrMode = "coreos.com/rkt/stage2/stderr"
)

Variables

This section is empty.

Functions

func LoadPodManifest added in v1.28.0

func LoadPodManifest(root string) (*schema.PodManifest, error)

LoadPodManifest loads a Pod Manifest.

Types

type Pod

type Pod struct {
	RuntimePod        // embedded runtime parameters
	Root       string // root directory where the pod will be located
	UUID       types.UUID
	Manifest   *schema.PodManifest
	Images     map[string]*schema.ImageManifest
	UidRange   user.UidRange
}

Pod encapsulates a PodManifest and ImageManifests

func LoadPod

func LoadPod(root string, uuid *types.UUID, rp *RuntimePod) (*Pod, error)

LoadPod loads a Pod Manifest (as prepared by stage0), the runtime data, and its associated Application Manifests, under $root/stage1/opt/stage1/$apphash

func (*Pod) AppNameToImageName added in v1.1.0

func (p *Pod) AppNameToImageName(appName types.ACName) types.ACIdentifier

AppNameToImageName takes the name of an app in the Pod and returns the name of the app's image. The mapping between these two is populated when a Pod is loaded (using LoadPod).

func (*Pod) SaveRuntime added in v1.21.0

func (p *Pod) SaveRuntime() error

SaveRuntime persists just the runtime state. This should be called when the pod is started.

type RuntimePod added in v1.21.0

type RuntimePod struct {
	MetadataServiceURL string         `json:"MetadataServiceURL"`
	PrivateUsers       string         `json:"PrivateUsers"`
	MDSToken           string         `json:"MDSToken"`
	Hostname           string         `json:"Hostname"`
	Debug              bool           `json:"Debug"`
	Mutable            bool           `json:"Mutable"`
	ResolvConfMode     string         `json:"ResolvConfMode"`
	EtcHostsMode       string         `json:"EtcHostsMode"`
	NetList            common.NetList `json:"NetList"`
	Interactive        bool           `json:"Interactive"`
	InsecureOptions    struct {
		DisablePaths        bool `json:"DisablePaths"`
		DisableCapabilities bool `json:"DisableCapabilities"`
		DisableSeccomp      bool `json:"DisableSeccomp"`
	} `json:"InsecureOptions"`
	IPCMode string `json:"IPCMode"`
}

RuntimePod stores internal state we'd like access to. There is no interface, and noone outside the stage1 should access it. If you find yourself needing one of these members outside of the stage1, then it should be set as an annotation on the pod. This includes things like insecure options and the mds token - they are provided during init but needed for `app add`.

Jump to

Keyboard shortcuts

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