blob: 0bc24afe868acc0a71e607342bc2227c7cd0428e [file] [log] [blame]
Jan Malkiewicz741fb0b2020-11-18 11:31:06 +01001# ============LICENSE_START=======================================================
2# Copyright (c) 2020 Nokia
3# ================================================================================
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15# ============LICENSE_END=========================================================
16
17apiVersion: apiextensions.k8s.io/v1
18kind: CustomResourceDefinition
19metadata:
20 name: cmpv2issuers.certmanager.onap.org
21spec:
22 group: certmanager.onap.org
23 names:
24 kind: CMPv2Issuer
25 listKind: CMPv2IssuerList
26 plural: cmpv2issuers
27 singular: cmpv2issuer
28 scope: Namespaced
29 versions:
30 - name: v1
31 served: true
32 storage: true
33 schema:
34 openAPIV3Schema:
35 description: CMPv2Issuer is the Schema for the cmpv2issuers API
36 properties:
37 apiVersion:
38 description: 'APIVersion defines the versioned schema of this representation
39 of an object. Servers should convert recognized schemas to the latest
40 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/cmpv2api-conventions.md#resources'
41 type: string
42 kind:
43 description: 'Kind is a string value representing the REST resource this
44 object represents. Servers may infer this from the endpoint the client
45 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/cmpv2api-conventions.md#types-kinds'
46 type: string
47 metadata:
48 type: object
49 spec:
50 description: CMPv2IssuerSpec defines the desired state of CMPv2Issuer
51 properties:
52 url:
53 description: URL to CertService API.
54 type: string
55 healthEndpoint:
56 description: Path of health check endpoint.
57 type: string
58 certEndpoint:
59 description: Path of cerfificate signing enpoint.
60 type: string
61 caName:
62 description: Name of the external CA server configured on CertService API side.
63 type: string
64 certSecretRef:
65 description: Reference to K8s secret which contains certificate, private key and CA certificate
66 needed to connect to CertService API (which requires client certificate authentication)
67 properties:
68 name:
69 description: The name of K8s secret to select certificates from. Secret must be in the same
70 namespace as CMPv2Issuer.
71 type: string
72 keyRef:
73 description: The key of the secret to select private key from. Must be a
74 valid secret key.
75 type: string
76 certRef:
77 description: The key of the secret to select cert from. Must be a
78 valid secret key.
79 type: string
80 cacertRef:
81 description: The key of the secret to select cacert from. Must be a
82 valid secret key.
83 type: string
84 required:
85 - name
86 - keyRef
87 - certRef
88 - cacertRef
89 type: object
90 required:
91 - url
92 - healthEndpoint
93 - certEndpoint
94 - caName
95 - certSecretRef
96 type: object
97 status:
98 description: CMPv2IssuerStatus defines the observed state of CMPv2Issuer
99 properties:
100 conditions:
101 items:
102 description: CMPv2IssuerCondition contains condition information for
103 the certservice issuer.
104 properties:
105 lastTransitionTime:
106 description: LastTransitionTime is the timestamp corresponding
107 to the last status change of this condition.
108 format: date-time
109 type: string
110 message:
111 description: Message is a human readable description of the details
112 of the last transition, complementing reason.
113 type: string
114 reason:
115 description: Reason is a brief machine readable explanation for
116 the condition's last transition.
117 type: string
118 status:
119 allOf:
120 - enum:
121 - "True"
122 - "False"
123 - Unknown
124 description: Status of the condition, one of ('True', 'False',
125 'Unknown').
126 type: string
127 type:
128 description: Type of the condition, currently ('Ready').
129 enum:
130 - Ready
131 type: string
132 required:
133 - status
134 - type
135 type: object
136 type: array
137 type: object
138 type: object