blob: 2501a7acd051f036c5a73278e9886477b04a78fa [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You 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.11.3
creationTimestamp: null
name: dynamicconfigs.dubbo.apache.org
spec:
group: dubbo.apache.org
names:
kind: DynamicConfig
listKind: DynamicConfigList
plural: dynamicconfigs
shortNames:
- dc
singular: dynamicconfig
scope: Namespaced
versions:
- name: v1alpha1
schema:
openAPIV3Schema:
description: DynamicConfig is the Schema for the dynamicconfigs API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the clientgen
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: DynamicConfigSpec defines the desired state of DynamicConfig
properties:
configVersion:
description: The version of the tag rule definition, currently available
version is v3.0
enum:
- v3.0
type: string
configs:
description: The match condition and configuration of this rule.
items:
properties:
addresses:
description: replaced with address in MatchCondition
items:
type: string
type: array
applications:
description: replaced with application in MatchCondition
items:
type: string
type: array
enabled:
type: boolean
match:
description: A set of criterion to be met in order for the rule/config
to be applied to the Dubbo instance.
properties:
address:
description: 'The instance address matching condition for
this config rule to take effect. xact: “value” for exact
string match prefix: “value” for prefix-based match regex:
“value” for RE2 style regex-based match (https://github.com/google/re2/wiki/Syntax)).'
properties:
cird:
type: string
exact:
type: string
wildcard:
type: string
type: object
application:
description: "The application matching condition for this
config rule to take effect. Effective when scope: service
is set. \n exact: “value” for exact string match prefix:
“value” for prefix-based match regex: “value” for RE2
style regex-based match (https://github.com/google/re2/wiki/Syntax))."
properties:
oneof:
items:
properties:
empty:
type: string
exact:
type: string
noempty:
type: string
prefix:
type: string
regex:
type: string
wildcard:
type: string
type: object
type: array
type: object
param:
description: The Dubbo url keys and values matching condition
for this config rule to take effect.
items:
properties:
key:
description: The name of the key in the Dubbo url
address.
type: string
value:
description: The matching condition for the value
in the Dubbo url address.
properties:
empty:
type: string
exact:
type: string
noempty:
type: string
prefix:
type: string
regex:
type: string
wildcard:
type: string
type: object
type: object
type: array
service:
description: 'The service matching condition for this config
rule to take effect. Effective when scope: application
is set. exact: “value” for exact string match prefix:
“value” for prefix-based match regex: “value” for RE2
style regex-based match (https://github.com/google/re2/wiki/Syntax)).'
properties:
oneof:
items:
properties:
empty:
type: string
exact:
type: string
noempty:
type: string
prefix:
type: string
regex:
type: string
wildcard:
type: string
type: object
type: array
type: object
type: object
parameters:
additionalProperties:
type: string
type: object
providerAddresses:
description: not supported anymore
items:
type: string
type: array
services:
description: replaced with service in MatchCondition
items:
type: string
type: array
side:
description: 'Especially useful when scope:service is set. side:
providermeans this Config will only take effect on the provider
instances of the service key. side: consumermeans this Config
will only take effect on the consumer instances of the service
key'
type: string
type:
type: string
type: object
type: array
enabled:
default: true
description: Whether enable this rule or not, set enabled:false to
disable this rule.
type: boolean
key:
description: The identifier of the target service or application that
this rule is about to apply to. If scope:serviceis set, then keyshould
be specified as the Dubbo service key that this rule targets to
control. If scope:application is set, then keyshould be specified
as the name of the application that this rule targets to control,
application should always be a Dubbo Consumer.
type: string
scope:
description: Supports service and application scope rules.
enum:
- service
- application
type: string
type: object
type: object
served: true
storage: true