# Copyright (C) 2015 The Gravitee team (http://gravitee.io) # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.18.0 gravitee.io/operator.version: 4.12.0-rc name: sharedpolicygroups.gravitee.io spec: group: gravitee.io names: kind: SharedPolicyGroup listKind: SharedPolicyGroupList plural: sharedpolicygroups shortNames: - sharedpolicygroups singular: sharedpolicygroup scope: Namespaced versions: - additionalPrinterColumns: - jsonPath: .spec.name name: name type: string - jsonPath: .spec.description name: description type: string - jsonPath: .spec.apiType name: apiType type: string name: v1alpha1 schema: openAPIV3Schema: description: SharedPolicyGroup properties: apiVersion: description: APIVersion defines the versioned schema of this representation of an object. type: string kind: description: Kind is a string value representing the REST resource this object represents. type: string metadata: type: object spec: description: SharedPolicyGroupSpec properties: apiType: description: Specify the SharedPolicyGroup ApiType enum: - MESSAGE - PROXY - NATIVE type: string contextRef: properties: kind: type: string name: type: string namespace: type: string required: - name type: object crossId: description: CrossID to export SharedPolicyGroup into different environments type: string description: description: SharedPolicyGroup description type: string hrid: type: string name: description: SharedPolicyGroup name type: string phase: description: SharedPolicyGroup phase (REQUEST;RESPONSE;INTERACT;CONNECT;PUBLISH;SUBSCRIBE) enum: - REQUEST - RESPONSE - INTERACT - CONNECT - PUBLISH - SUBSCRIBE type: string prerequisiteMessage: description: SharedPolicyGroup prerequisite Message type: string steps: description: SharedPolicyGroup Steps items: properties: condition: description: FlowStep condition type: string configuration: description: FlowStep configuration is a map of arbitrary key-values type: object x-kubernetes-preserve-unknown-fields: true description: description: FlowStep description type: string enabled: default: true description: Indicate if this FlowStep is enabled or not type: boolean name: description: FlowStep name type: string policy: description: FlowStep policy type: string required: - enabled type: object type: array required: - apiType - contextRef - name - phase type: object status: description: SharedPolicyGroupSpecStatus defines the observed state of an API Context. properties: conditions: default: [] description: Conditions describe the current conditions of the SharedPolicyGroup. items: description: Condition contains details for one aspect of the current state of this API Resource. properties: lastTransitionTime: description: lastTransitionTime is the last time the condition transitioned from one status to another. format: date-time type: string message: description: message is a human readable message indicating details about the transition. maxLength: 32768 type: string observedGeneration: description: observedGeneration represents the .metadata.generation that the condition was set based upon. format: int64 minimum: 0 type: integer reason: description: reason contains a programmatic identifier indicating the reason for the condition's last transition. maxLength: 1024 minLength: 1 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ type: string status: description: status of the condition, one of True, False, Unknown. enum: - "True" - "False" - Unknown type: string type: description: type of condition in CamelCase or in foo.example.com/CamelCase. maxLength: 316 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ type: string required: - lastTransitionTime - message - reason - status - type type: object maxItems: 8 type: array x-kubernetes-list-map-keys: - type x-kubernetes-list-type: map crossId: description: The Cross ID is used to identify an SharedPolicyGroup that has been promoted from one environment... type: string environmentId: description: The environment ID, if a management context has been defined to sync with an APIM instance type: string errors: description: >- When SharedPolicyGroup has been created regardless of errors, this field is used to persist the... properties: severe: description: >- severe errors do not pass admission and will block reconcile hence, this field should always be... items: type: string type: array warning: description: |- warning errors do not block object reconciliation, most of the time because the value is ignored or... items: type: string type: array type: object id: description: The ID is used to identify an SharedPolicyGroup which is unique in any environment. type: string organizationId: description: The organization ID, if a management context has been defined to sync with an APIM instance type: string processingStatus: description: The processing status of the SharedPolicyGroup. type: string type: object type: object served: true storage: true subresources: status: {}