envinfo

package
v1.2.3 Latest Latest
Warning

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

Go to latest
Published: Jun 25, 2020 License: Apache-2.0 Imports: 8 Imported by: 48

Documentation

Index

Constants

View Source
const (
	// Create parameter
	Create = "CREATE"
	// CreateDescription is the description of Create parameter
	CreateDescription = "Create parameter is the action to write devfile metadata to env.yaml"
	// URL parameter
	URL = "URL"
	// URLDescription is the description of URL
	URLDescription = "URL to access the component"
	// Push parameter
	Push = "PUSH"
	// PushDescription is the description of URL
	PushDescription = "Push parameter is the action to write devfile commands to env.yaml"
)

Variables

This section is empty.

Functions

func FormatLocallySupportedParameters

func FormatLocallySupportedParameters() (result string)

FormatLocallySupportedParameters outputs supported parameters and their description

func GetLocallySupportedParameters

func GetLocallySupportedParameters() []string

GetLocallySupportedParameters returns the name of the supported global parameters

Types

type ComponentSettings

type ComponentSettings struct {
	Name        string              `yaml:"Name,omitempty"`
	Namespace   string              `yaml:"Namespace,omitempty"`
	URL         *[]EnvInfoURL       `yaml:"Url,omitempty"`
	PushCommand *EnvInfoPushCommand `yaml:"PushCommand,omitempty"`

	// DebugPort controls the port used by the pod to run the debugging agent on
	DebugPort *int `yaml:"DebugPort,omitempty"`
}

ComponentSettings holds all component related information

type EnvInfo

type EnvInfo struct {
	// contains filtered or unexported fields
}

EnvInfo holds all the env specific information relavent to a specific Component.

func NewEnvInfo

func NewEnvInfo() EnvInfo

NewEnvInfo creates an empty EnvSpecificInfo struct with typeMeta populated

func (*EnvInfo) GetDebugPort added in v1.2.3

func (ei *EnvInfo) GetDebugPort() int

GetDebugPort returns the DebugPort, returns default if nil

func (*EnvInfo) GetName added in v1.1.2

func (ei *EnvInfo) GetName() string

GetName returns the component name

func (*EnvInfo) GetNamespace added in v1.1.2

func (ei *EnvInfo) GetNamespace() string

GetNamespace returns component namespace

func (*EnvInfo) GetPushCommand added in v1.2.2

func (ei *EnvInfo) GetPushCommand() EnvInfoPushCommand

GetPushCommand returns the EnvInfoPushCommand, returns default if nil

func (*EnvInfo) GetURL

func (ei *EnvInfo) GetURL() []EnvInfoURL

GetURL returns the EnvInfoURL, returns default if nil

type EnvInfoPushCommand added in v1.2.2

type EnvInfoPushCommand struct {
	Init  string `yaml:"Init,omitempty"`
	Build string `yaml:"Build,omitempty"`
	Run   string `yaml:"Run,omitempty"`
}

EnvInfoPushCommand holds the devfile push commands for the component

type EnvInfoURL

type EnvInfoURL struct {
	// Name of the URL
	Name string `yaml:"Name,omitempty"`
	// Port number for the url of the component, required in case of components which expose more than one service port
	Port int `yaml:"Port,omitempty"`
	// Indicates if the URL should be a secure https one
	Secure bool `yaml:"Secure,omitempty"`
	// Cluster host
	Host string `yaml:"Host,omitempty"`
	// TLS secret name to create ingress to provide a secure URL
	TLSSecret string `yaml:"TLSSecret,omitempty"`
	// Exposed port number for docker container, required for local scenarios
	ExposedPort int `yaml:"ExposedPort,omitempty"`
	// Kind is the kind of the URL
	Kind URLKind `yaml:"Kind,omitempty"`
}

EnvInfoURL holds URL related information

type EnvSpecificInfo

type EnvSpecificInfo struct {
	Filename string `yaml:"FileName,omitempty"`

	EnvInfo `yaml:",omitempty"`
	// contains filtered or unexported fields
}

EnvSpecificInfo wraps the envinfo and provides helpers to serialize it.

func New

func New() (*EnvSpecificInfo, error)

New returns the EnvSpecificInfo

func NewEnvSpecificInfo

func NewEnvSpecificInfo(envDir string) (*EnvSpecificInfo, error)

NewEnvSpecificInfo gets the EnvSpecificInfo from envinfo file and creates the envinfo file in case it's not present then it

func (*EnvSpecificInfo) DeleteConfiguration

func (esi *EnvSpecificInfo) DeleteConfiguration(parameter string) error

DeleteConfiguration is used to delete environment specific info from local odo envinfo

func (*EnvSpecificInfo) DeleteEnvDirIfEmpty

func (esi *EnvSpecificInfo) DeleteEnvDirIfEmpty() error

DeleteEnvDirIfEmpty Deletes the env directory if its empty

func (*EnvSpecificInfo) DeleteEnvInfoFile

func (esi *EnvSpecificInfo) DeleteEnvInfoFile() error

DeleteEnvInfoFile deletes the envinfo.yaml file if it exists

func (*EnvSpecificInfo) DeleteURL

func (esi *EnvSpecificInfo) DeleteURL(parameter string) error

DeleteURL is used to delete environment specific info for url from envinfo

func (*EnvSpecificInfo) EnvInfoFileExists

func (esi *EnvSpecificInfo) EnvInfoFileExists() bool

EnvInfoFileExists if the envinfo file exists or not

func (*EnvSpecificInfo) GetComponentSettings

func (esi *EnvSpecificInfo) GetComponentSettings() ComponentSettings

GetComponentSettings returns the componentSettings from envinfo

func (*EnvSpecificInfo) IsSet

func (esi *EnvSpecificInfo) IsSet(parameter string) bool

IsSet uses reflection to get the parameter from the envinfo struct, currently it only searches the componentSettings

func (*EnvSpecificInfo) SetComponentSettings

func (esi *EnvSpecificInfo) SetComponentSettings(cs ComponentSettings) error

SetComponentSettings sets the componentSettings from to the envinfo and writes to the file

func (*EnvSpecificInfo) SetConfiguration

func (esi *EnvSpecificInfo) SetConfiguration(parameter string, value interface{}) (err error)

SetConfiguration sets the environment specific info like cluster host etc.

type URLKind added in v1.2.1

type URLKind string

URLKind is an enum to indicate the type of the URL i.e ingress/route

const (
	DOCKER  URLKind = "docker"
	INGRESS URLKind = "ingress"
	ROUTE   URLKind = "route"

	// DefaultDebugPort is the default port used for debugging on remote pod
	DefaultDebugPort = 5858
)

Jump to

Keyboard shortcuts

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