proto

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2021 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_application_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Application

type Application struct {
	Cluster      string           `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
	Namespace    string           `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
	Name         string           `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	Details      *Details         `protobuf:"bytes,4,opt,name=details,proto3" json:"details,omitempty"`
	Teams        []string         `protobuf:"bytes,5,rep,name=teams,proto3" json:"teams,omitempty"`
	Resources    []*Resources     `protobuf:"bytes,6,rep,name=resources,proto3" json:"resources,omitempty"`
	Dependencies []*Dependency    `protobuf:"bytes,7,rep,name=dependencies,proto3" json:"dependencies,omitempty"`
	Plugins      []*proto1.Plugin `protobuf:"bytes,8,rep,name=plugins,proto3" json:"plugins,omitempty"`
	// contains filtered or unexported fields
}

Application is the specification for an application. This specification is also used for the Kubernetes CRD as ApplicationSpec. This is also the reason why we use istio.io/tools/cmd/protoc-gen-deepcopy within the code generation, to generate the deepcopy function, which are required to use the Application within a CRD. Each Application contains a cluster, namespace and name, which are automitic determinded, when the Application is retrieved from the Kubernetes API.

func (*Application) DeepCopy

func (in *Application) DeepCopy() *Application

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Application. Required by controller-gen.

func (*Application) DeepCopyInterface

func (in *Application) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Application. Required by controller-gen.

func (*Application) DeepCopyInto

func (in *Application) DeepCopyInto(out *Application)

DeepCopyInto supports using Application within kubernetes types, where deepcopy-gen is used.

func (*Application) Descriptor deprecated

func (*Application) Descriptor() ([]byte, []int)

Deprecated: Use Application.ProtoReflect.Descriptor instead.

func (*Application) GetCluster

func (x *Application) GetCluster() string

func (*Application) GetDependencies added in v0.2.0

func (x *Application) GetDependencies() []*Dependency

func (*Application) GetDetails

func (x *Application) GetDetails() *Details

func (*Application) GetName

func (x *Application) GetName() string

func (*Application) GetNamespace

func (x *Application) GetNamespace() string

func (*Application) GetPlugins

func (x *Application) GetPlugins() []*proto1.Plugin

func (*Application) GetResources

func (x *Application) GetResources() []*Resources

func (*Application) GetTeams added in v0.2.0

func (x *Application) GetTeams() []string

func (*Application) ProtoMessage

func (*Application) ProtoMessage()

func (*Application) ProtoReflect

func (x *Application) ProtoReflect() protoreflect.Message

func (*Application) Reset

func (x *Application) Reset()

func (*Application) String

func (x *Application) String() string

type Dependency added in v0.2.0

type Dependency struct {
	Cluster     string `protobuf:"bytes,1,opt,name=cluster,proto3" json:"cluster,omitempty"`
	Namespace   string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
	Name        string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
	// contains filtered or unexported fields
}

Dependency is an application, which can be identified by the cluster, namespace and name. One application can have, multiple other applications as dependencies. When an application defines another application as dependency, we can render a topology chart for these application, to visulize the dependencies between applications. The dependency can also contain a description, which can be used to explain why the referenced application is a dependency in the current application.

func (*Dependency) DeepCopy added in v0.2.0

func (in *Dependency) DeepCopy() *Dependency

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dependency. Required by controller-gen.

func (*Dependency) DeepCopyInterface added in v0.2.0

func (in *Dependency) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Dependency. Required by controller-gen.

func (*Dependency) DeepCopyInto added in v0.2.0

func (in *Dependency) DeepCopyInto(out *Dependency)

DeepCopyInto supports using Dependency within kubernetes types, where deepcopy-gen is used.

func (*Dependency) Descriptor deprecated added in v0.2.0

func (*Dependency) Descriptor() ([]byte, []int)

Deprecated: Use Dependency.ProtoReflect.Descriptor instead.

func (*Dependency) GetCluster added in v0.2.0

func (x *Dependency) GetCluster() string

func (*Dependency) GetDescription added in v0.2.0

func (x *Dependency) GetDescription() string

func (*Dependency) GetName added in v0.2.0

func (x *Dependency) GetName() string

func (*Dependency) GetNamespace added in v0.2.0

func (x *Dependency) GetNamespace() string

func (*Dependency) ProtoMessage added in v0.2.0

func (*Dependency) ProtoMessage()

func (*Dependency) ProtoReflect added in v0.2.0

func (x *Dependency) ProtoReflect() protoreflect.Message

func (*Dependency) Reset added in v0.2.0

func (x *Dependency) Reset()

func (*Dependency) String added in v0.2.0

func (x *Dependency) String() string

type Details

type Details struct {
	Description string         `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
	Links       []*Link        `protobuf:"bytes,2,rep,name=links,proto3" json:"links,omitempty"`
	Plugin      *proto1.Plugin `protobuf:"bytes,3,opt,name=plugin,proto3" json:"plugin,omitempty"`
	// contains filtered or unexported fields
}

Details contains some details for the Application, which are set by the user in the Custom Resource. Each Application can contain a description and a list of links.

func (*Details) DeepCopy

func (in *Details) DeepCopy() *Details

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Details. Required by controller-gen.

func (*Details) DeepCopyInterface

func (in *Details) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Details. Required by controller-gen.

func (*Details) DeepCopyInto

func (in *Details) DeepCopyInto(out *Details)

DeepCopyInto supports using Details within kubernetes types, where deepcopy-gen is used.

func (*Details) Descriptor deprecated

func (*Details) Descriptor() ([]byte, []int)

Deprecated: Use Details.ProtoReflect.Descriptor instead.

func (*Details) GetDescription

func (x *Details) GetDescription() string
func (x *Details) GetLinks() []*Link

func (*Details) GetPlugin

func (x *Details) GetPlugin() *proto1.Plugin

func (*Details) ProtoMessage

func (*Details) ProtoMessage()

func (*Details) ProtoReflect

func (x *Details) ProtoReflect() protoreflect.Message

func (*Details) Reset

func (x *Details) Reset()

func (*Details) String

func (x *Details) String() string
type Link struct {
	Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	Link  string `protobuf:"bytes,2,opt,name=link,proto3" json:"link,omitempty"`
	// contains filtered or unexported fields
}

Link is the format of a link, which can be provided within an Application. A link consists of a title, which is displayed in the frontend and the link, which is used within the href attribute (title=Example, link=https://example.com).

func (*Link) DeepCopy

func (in *Link) DeepCopy() *Link

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Link. Required by controller-gen.

func (*Link) DeepCopyInterface

func (in *Link) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Link. Required by controller-gen.

func (*Link) DeepCopyInto

func (in *Link) DeepCopyInto(out *Link)

DeepCopyInto supports using Link within kubernetes types, where deepcopy-gen is used.

func (*Link) Descriptor deprecated

func (*Link) Descriptor() ([]byte, []int)

Deprecated: Use Link.ProtoReflect.Descriptor instead.

func (x *Link) GetLink() string

func (*Link) GetTitle

func (x *Link) GetTitle() string

func (*Link) ProtoMessage

func (*Link) ProtoMessage()

func (*Link) ProtoReflect

func (x *Link) ProtoReflect() protoreflect.Message

func (*Link) Reset

func (x *Link) Reset()

func (*Link) String

func (x *Link) String() string

type Resources

type Resources struct {
	Namespaces []string `protobuf:"bytes,1,rep,name=namespaces,proto3" json:"namespaces,omitempty"`
	Kinds      []string `protobuf:"bytes,2,rep,name=kinds,proto3" json:"kinds,omitempty"`
	Selector   string   `protobuf:"bytes,3,opt,name=selector,proto3" json:"selector,omitempty"`
	// contains filtered or unexported fields
}

Resources is a list of resources, which can be associated with the Application. For each selector (e.g. app=prometheus) a list of resources can be specified. These kinds are the plural of the standard Kubernetes resources (e.g. pods, cronjobs. deployments, ...) or for CRDs resource.path (e.g. vaultsecrets.ricoberger.de/v1alpha1). The list of namespaces is optional and if not provided the namespace of the Application will be used to get the resources.

func (*Resources) DeepCopy

func (in *Resources) DeepCopy() *Resources

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Resources. Required by controller-gen.

func (*Resources) DeepCopyInterface

func (in *Resources) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new Resources. Required by controller-gen.

func (*Resources) DeepCopyInto

func (in *Resources) DeepCopyInto(out *Resources)

DeepCopyInto supports using Resources within kubernetes types, where deepcopy-gen is used.

func (*Resources) Descriptor deprecated

func (*Resources) Descriptor() ([]byte, []int)

Deprecated: Use Resources.ProtoReflect.Descriptor instead.

func (*Resources) GetKinds

func (x *Resources) GetKinds() []string

func (*Resources) GetNamespaces added in v0.2.0

func (x *Resources) GetNamespaces() []string

func (*Resources) GetSelector

func (x *Resources) GetSelector() string

func (*Resources) ProtoMessage

func (*Resources) ProtoMessage()

func (*Resources) ProtoReflect

func (x *Resources) ProtoReflect() protoreflect.Message

func (*Resources) Reset

func (x *Resources) Reset()

func (*Resources) String

func (x *Resources) String() string

Jump to

Keyboard shortcuts

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