// 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 = "github.com/openshift/api/template/v1"; // BrokerTemplateInstance holds the service broker-related state associated with // a TemplateInstance. BrokerTemplateInstance is part of an experimental API. // // Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). // +openshift:compatibility-gen:level=1 message BrokerTemplateInstance { // metadata is the standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 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. // // Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). // +openshift:compatibility-gen:level=1 message BrokerTemplateInstanceList { // metadata is the standard list's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 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. // // Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). // +openshift:compatibility-gen:level=1 message Template { // metadata is the standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 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 labels = 5; } // TemplateInstance requests and records the instantiation of a Template. // TemplateInstance is part of an experimental API. // // Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). // +openshift:compatibility-gen:level=1 message TemplateInstance { // metadata is the standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 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. // // Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). // +openshift:compatibility-gen:level=1 message TemplateInstanceList { // metadata is the standard list's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata 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 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. // // Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). // +openshift:compatibility-gen:level=1 message TemplateList { // metadata is the standard list's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata optional k8s.io.apimachinery.pkg.apis.meta.v1.ListMeta metadata = 1; // Items is a list of templates repeated Template items = 2; }