Files
open-cluster-management/vendor/github.com/openshift/api/template/v1/generated.proto
2020-04-21 15:10:49 +08:00

233 lines
8.4 KiB
Protocol Buffer
Generated

// This file was autogenerated by go-to-protobuf. Do not edit it manually!
syntax = 'proto2';
package github.com.openshift.api.template.v1;
import "k8s.io/api/core/v1/generated.proto";
import "k8s.io/apimachinery/pkg/apis/meta/v1/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/generated.proto";
import "k8s.io/apimachinery/pkg/runtime/schema/generated.proto";
// Package-wide variables from generator "generated".
option go_package = "v1";
// BrokerTemplateInstance holds the service broker-related state associated with
// a TemplateInstance. BrokerTemplateInstance is part of an experimental API.
message BrokerTemplateInstance {
optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
// spec describes the state of this BrokerTemplateInstance.
optional BrokerTemplateInstanceSpec spec = 2;
}
// BrokerTemplateInstanceList is a list of BrokerTemplateInstance objects.
message BrokerTemplateInstanceList {
optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
// items is a list of BrokerTemplateInstances
repeated BrokerTemplateInstance items = 2;
}
// BrokerTemplateInstanceSpec describes the state of a BrokerTemplateInstance.
message BrokerTemplateInstanceSpec {
// templateinstance is a reference to a TemplateInstance object residing
// in a namespace.
optional k8s.io.api.core.v1.ObjectReference templateInstance = 1;
// secret is a reference to a Secret object residing in a namespace,
// containing the necessary template parameters.
optional k8s.io.api.core.v1.ObjectReference secret = 2;
// bindingids is a list of 'binding_id's provided during successive bind
// calls to the template service broker.
repeated string bindingIDs = 3;
}
// ExtraValue masks the value so protobuf can generate
// +protobuf.nullable=true
// +protobuf.options.(gogoproto.goproto_stringer)=false
message ExtraValue {
// items, if empty, will result in an empty slice
repeated string items = 1;
}
// Parameter defines a name/value variable that is to be processed during
// the Template to Config transformation.
message Parameter {
// Name must be set and it can be referenced in Template
// Items using ${PARAMETER_NAME}. Required.
optional string name = 1;
// Optional: The name that will show in UI instead of parameter 'Name'
optional string displayName = 2;
// Description of a parameter. Optional.
optional string description = 3;
// Value holds the Parameter data. If specified, the generator will be
// ignored. The value replaces all occurrences of the Parameter ${Name}
// expression during the Template to Config transformation. Optional.
optional string value = 4;
// generate specifies the generator to be used to generate random string
// from an input value specified by From field. The result string is
// stored into Value field. If empty, no generator is being used, leaving
// the result Value untouched. Optional.
//
// The only supported generator is "expression", which accepts a "from"
// value in the form of a simple regular expression containing the
// range expression "[a-zA-Z0-9]", and the length expression "a{length}".
//
// Examples:
//
// from | value
// -----------------------------
// "test[0-9]{1}x" | "test7x"
// "[0-1]{8}" | "01001100"
// "0x[A-F0-9]{4}" | "0xB3AF"
// "[a-zA-Z0-9]{8}" | "hW4yQU5i"
optional string generate = 5;
// From is an input value for the generator. Optional.
optional string from = 6;
// Optional: Indicates the parameter must have a value. Defaults to false.
optional bool required = 7;
}
// Template contains the inputs needed to produce a Config.
message Template {
optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
// message is an optional instructional message that will
// be displayed when this template is instantiated.
// This field should inform the user how to utilize the newly created resources.
// Parameter substitution will be performed on the message before being
// displayed so that generated credentials and other parameters can be
// included in the output.
optional string message = 2;
// objects is an array of resources to include in this template.
// If a namespace value is hardcoded in the object, it will be removed
// during template instantiation, however if the namespace value
// is, or contains, a ${PARAMETER_REFERENCE}, the resolved
// value after parameter substitution will be respected and the object
// will be created in that namespace.
// +kubebuilder:pruning:PreserveUnknownFields
repeated k8s.io.apimachinery.pkg.runtime.RawExtension objects = 3;
// parameters is an optional array of Parameters used during the
// Template to Config transformation.
repeated Parameter parameters = 4;
// labels is a optional set of labels that are applied to every
// object during the Template to Config transformation.
map<string, string> labels = 5;
}
// TemplateInstance requests and records the instantiation of a Template.
// TemplateInstance is part of an experimental API.
message TemplateInstance {
optional k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta metadata = 1;
// spec describes the desired state of this TemplateInstance.
optional TemplateInstanceSpec spec = 2;
// status describes the current state of this TemplateInstance.
// +optional
optional TemplateInstanceStatus status = 3;
}
// TemplateInstanceCondition contains condition information for a
// TemplateInstance.
message TemplateInstanceCondition {
// Type of the condition, currently Ready or InstantiateFailure.
optional string type = 1;
// Status of the condition, one of True, False or Unknown.
optional string status = 2;
// LastTransitionTime is the last time a condition status transitioned from
// one state to another.
optional k8s.io.apimachinery.pkg.apis.meta.v1.Time lastTransitionTime = 3;
// Reason is a brief machine readable explanation for the condition's last
// transition.
optional string reason = 4;
// Message is a human readable description of the details of the last
// transition, complementing reason.
optional string message = 5;
}
// TemplateInstanceList is a list of TemplateInstance objects.
message TemplateInstanceList {
optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
// items is a list of Templateinstances
repeated TemplateInstance items = 2;
}
// TemplateInstanceObject references an object created by a TemplateInstance.
message TemplateInstanceObject {
// ref is a reference to the created object. When used under .spec, only
// name and namespace are used; these can contain references to parameters
// which will be substituted following the usual rules.
optional k8s.io.api.core.v1.ObjectReference ref = 1;
}
// TemplateInstanceRequester holds the identity of an agent requesting a
// template instantiation.
message TemplateInstanceRequester {
// username uniquely identifies this user among all active users.
optional string username = 1;
// uid is a unique value that identifies this user across time; if this user is
// deleted and another user by the same name is added, they will have
// different UIDs.
optional string uid = 2;
// groups represent the groups this user is a part of.
repeated string groups = 3;
// extra holds additional information provided by the authenticator.
map<string, ExtraValue> extra = 4;
}
// TemplateInstanceSpec describes the desired state of a TemplateInstance.
message TemplateInstanceSpec {
// template is a full copy of the template for instantiation.
optional Template template = 1;
// secret is a reference to a Secret object containing the necessary
// template parameters.
optional k8s.io.api.core.v1.LocalObjectReference secret = 2;
// requester holds the identity of the agent requesting the template
// instantiation.
// +optional
optional TemplateInstanceRequester requester = 3;
}
// TemplateInstanceStatus describes the current state of a TemplateInstance.
message TemplateInstanceStatus {
// conditions represent the latest available observations of a
// TemplateInstance's current state.
repeated TemplateInstanceCondition conditions = 1;
// Objects references the objects created by the TemplateInstance.
repeated TemplateInstanceObject objects = 2;
}
// TemplateList is a list of Template objects.
message TemplateList {
optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1;
// Items is a list of templates
repeated Template items = 2;
}