common

package
v0.0.0-...-2c539bb Latest Latest
Warning

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

Go to latest
Published: Mar 10, 2022 License: Apache-2.0 Imports: 44 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApplyApplication

func ApplyApplication(app corev1beta1.Application, ioStream cmdutil.IOStreams, clt client.Client) error

ApplyApplication will apply an application file in K8s GVK format

func BaseComplete

func BaseComplete(namespace string, c common.Args, workloadName string, appName string, flagSet *pflag.FlagSet, workloadType string) (*api.Application, error)

BaseComplete will construct an Application from cli parameters.

func BuildRun

func BuildRun(ctx context.Context, app *api.Application, client client.Client, namespace string, io util.IOStreams) error

BuildRun will build application and deploy from Appfile

func CheckLabelExistence

func CheckLabelExistence(labels map[string]string, label string) bool

CheckLabelExistence checks whether a label `key=value` exists in definition labels

func ConvertApplyTo

func ConvertApplyTo(applyTo []string, workloads []types.Capability) []string

ConvertApplyTo will convert applyTo slice to workload capability name if CRD matches

func HackForStandardTrait

func HackForStandardTrait(tp types.Capability, client client.Client) error

HackForStandardTrait will do some hack install for standard registry

func Info

func Info(app *corev1beta1.Application) string

Info shows the status of each service in the Appfile

func InitApplication

func InitApplication(namespace string, c common.Args, workloadName string, appGroup string) (*api.Application, error)

InitApplication will load Application from cluster

func InstallComponentDefinition

func InstallComponentDefinition(client client.Client, componentData []byte, ioStreams cmdutil.IOStreams, tp *types.Capability) error

InstallComponentDefinition will add a component into K8s cluster and install its controller

func InstallPrometheusInstance

func InstallPrometheusInstance(kubecli client.Client) error

InstallPrometheusInstance will install prometheus instance when the Capability is 'metrics'

func InstallTraitDefinition

func InstallTraitDefinition(client client.Client, mapper discoverymapper.DiscoveryMapper, traitdata []byte, ioStreams cmdutil.IOStreams, cap *types.Capability) error

InstallTraitDefinition will add a trait into K8s cluster and install it's controller

func IsAppfile

func IsAppfile(body []byte) bool

IsAppfile check if a file is Appfile format or application format, return true if it's appfile, false means application object

func ListRawWorkloadDefinitions

func ListRawWorkloadDefinitions(userNamespace string, c common.Args) ([]v1beta1.WorkloadDefinition, error)

ListRawWorkloadDefinitions will list raw definition

func LoadAppFile

func LoadAppFile(pathOrURL string) (*api.AppFile, error)

LoadAppFile will load vela appfile from remote URL or local file system.

func Parse

func Parse(applyTo string) string

Parse will parse applyTo(with format Group/Version.Kind) to crd name by just calculate the plural of kind word. TODO we should use discoverymapper instead of calculate plural

func ReadRemoteOrLocalPath

func ReadRemoteOrLocalPath(pathOrURL string) ([]byte, error)

ReadRemoteOrLocalPath will read a path remote or locally

Types

type AppfileOptions

type AppfileOptions struct {
	Kubecli   client.Client
	IO        cmdutil.IOStreams
	Namespace string
}

AppfileOptions is some configuration that modify options for an Appfile

func (*AppfileOptions) ApplyApp

func (o *AppfileOptions) ApplyApp(app *corev1beta1.Application, scopes []oam.Object) error

ApplyApp applys config resources for the app. It differs by create and update:

  • for create, it displays app status along with information of url, metrics, ssh, logging.
  • for update, it rolls out a canary deployment and prints its information. User can verify the canary deployment. This will wait for user approval. If approved, it continues upgrading the whole; otherwise, it would rollback.

func (*AppfileOptions) BaseAppFileRun

func (o *AppfileOptions) BaseAppFileRun(result *BuildResult, args common.Args) error

BaseAppFileRun starts an application according to Appfile

func (*AppfileOptions) Export

func (o *AppfileOptions) Export(filePath, namespace string, quiet bool, c common.Args) (*BuildResult, []byte, error)

Export export Application object from the path of Appfile

func (*AppfileOptions) ExportFromAppFile

func (o *AppfileOptions) ExportFromAppFile(app *api.AppFile, namespace string, quiet bool, c common.Args) (*BuildResult, []byte, error)

ExportFromAppFile exports Application from appfile object

func (*AppfileOptions) Run

func (o *AppfileOptions) Run(filePath, namespace string, c common.Args) error

Run starts an application according to Appfile

type BuildResult

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

BuildResult is the export struct from AppFile yaml or AppFile object

type DeleteOptions

type DeleteOptions struct {
	Namespace string
	AppName   string
	CompName  string
	Client    client.Client
	C         common.Args

	Wait        bool
	ForceDelete bool
}

DeleteOptions is options for delete

func (*DeleteOptions) DeleteApp

func (o *DeleteOptions) DeleteApp(io cmdutil.IOStreams) error

DeleteApp will delete app including server side

func (*DeleteOptions) DeleteAppWithoutDoubleCheck

func (o *DeleteOptions) DeleteAppWithoutDoubleCheck(io cmdutil.IOStreams) error

DeleteAppWithoutDoubleCheck delete application without double check

func (*DeleteOptions) DeleteComponent

func (o *DeleteOptions) DeleteComponent(io cmdutil.IOStreams) error

DeleteComponent will delete one component including server side.

func (*DeleteOptions) ForceDeleteApp

func (o *DeleteOptions) ForceDeleteApp(io cmdutil.IOStreams) error

ForceDeleteApp force delete the application

func (*DeleteOptions) WaitUntilDeleteApp

func (o *DeleteOptions) WaitUntilDeleteApp(io cmdutil.IOStreams) error

WaitUntilDeleteApp will wait until the application is completely deleted

type Option

type Option struct {
	// Optional filter, if specified, only components in such app will be listed
	AppName string

	Namespace string
}

Option is option work with dashboard api server

Jump to

Keyboard shortcuts

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