mirror of
https://github.com/vmware-tanzu/pinniped.git
synced 2026-09-20 23:14:17 +00:00
Generate CRD YAML using controller-tools, update doc strings.
Signed-off-by: Matt Moyer <moyerm@vmware.com>
This commit is contained in:
+99
-74
@@ -1,85 +1,110 @@
|
||||
#! Copyright 2020 VMware, Inc.
|
||||
#! SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
#! Example of valid CredentialIssuerConfig object:
|
||||
#! ---
|
||||
#! apiVersion: crd.pinniped.dev/v1alpha1
|
||||
#! kind: CredentialIssuerConfig
|
||||
#! metadata:
|
||||
#! name: credential-issuer-config
|
||||
#! namespace: integration
|
||||
#! status:
|
||||
#! kubeConfigInfo:
|
||||
#! server: https://foo
|
||||
#! certificateAuthorityData: bar
|
||||
#! strategies:
|
||||
#! - type: KubeClusterSigningCertificate
|
||||
#! status: Error
|
||||
#! reason: CouldNotFetchKey
|
||||
#! message: "There was an error getting the signing cert"
|
||||
#! lastUpdateTime: 2020-08-21T20:08:18Z
|
||||
|
||||
#@ load("@ytt:data", "data")
|
||||
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: v0.4.0
|
||||
creationTimestamp: null
|
||||
name: credentialissuerconfigs.crd.pinniped.dev
|
||||
spec:
|
||||
group: crd.pinniped.dev
|
||||
versions:
|
||||
#! Any changes to these schemas should also be reflected in the types.go file(s)
|
||||
- name: v1alpha1
|
||||
served: true
|
||||
storage: true
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
type: object
|
||||
properties:
|
||||
status:
|
||||
type: object
|
||||
properties:
|
||||
strategies:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
required: [ type, status, reason, message, lastUpdateTime ]
|
||||
properties:
|
||||
type: #! this property is called "type"
|
||||
type: string
|
||||
minLength: 1
|
||||
pattern: '^KubeClusterSigningCertificate$'
|
||||
status:
|
||||
type: string
|
||||
minLength: 1
|
||||
pattern: '^Success$|^Error$'
|
||||
reason:
|
||||
type: string
|
||||
minLength: 1
|
||||
pattern: '^CouldNotFetchKey$|^FetchedKey$'
|
||||
message:
|
||||
type: string
|
||||
minLength: 1
|
||||
lastUpdateTime:
|
||||
type: string
|
||||
format: date-time
|
||||
minLength: 1
|
||||
kubeConfigInfo:
|
||||
type: object
|
||||
required: [ server, certificateAuthorityData ]
|
||||
properties:
|
||||
server:
|
||||
type: string
|
||||
minLength: 1
|
||||
pattern: '^https://|^http://'
|
||||
certificateAuthorityData:
|
||||
type: string
|
||||
minLength: 1
|
||||
scope: Namespaced
|
||||
names:
|
||||
plural: credentialissuerconfigs
|
||||
singular: credentialissuerconfig
|
||||
kind: CredentialIssuerConfig
|
||||
listKind: CredentialIssuerConfigList
|
||||
plural: credentialissuerconfigs
|
||||
shortNames:
|
||||
- cic
|
||||
- cic
|
||||
singular: credentialissuerconfig
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
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 client
|
||||
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
|
||||
status:
|
||||
description: Status of the credential issuer.
|
||||
properties:
|
||||
kubeConfigInfo:
|
||||
description: Information needed to form a valid Pinniped-based kubeconfig
|
||||
using this credential issuer.
|
||||
properties:
|
||||
certificateAuthorityData:
|
||||
description: The K8s API server CA bundle.
|
||||
minLength: 1
|
||||
type: string
|
||||
server:
|
||||
description: The K8s API server URL.
|
||||
minLength: 1
|
||||
pattern: ^https://|^http://
|
||||
type: string
|
||||
required:
|
||||
- certificateAuthorityData
|
||||
- server
|
||||
type: object
|
||||
strategies:
|
||||
description: List of integration strategies that were attempted by
|
||||
Pinniped.
|
||||
items:
|
||||
description: Status of an integration strategy that was attempted
|
||||
by Pinniped.
|
||||
properties:
|
||||
lastUpdateTime:
|
||||
description: When the status was last checked.
|
||||
format: date-time
|
||||
type: string
|
||||
message:
|
||||
description: Human-readable description of the current status.
|
||||
minLength: 1
|
||||
type: string
|
||||
reason:
|
||||
description: Reason for the current status.
|
||||
enum:
|
||||
- FetchedKey
|
||||
- CouldNotFetchKey
|
||||
type: string
|
||||
status:
|
||||
description: Status of the attempted integration strategy.
|
||||
enum:
|
||||
- Success
|
||||
- Error
|
||||
type: string
|
||||
type:
|
||||
description: Type of integration attempted.
|
||||
enum:
|
||||
- KubeClusterSigningCertificate
|
||||
type: string
|
||||
required:
|
||||
- lastUpdateTime
|
||||
- message
|
||||
- reason
|
||||
- status
|
||||
- type
|
||||
type: object
|
||||
type: array
|
||||
required:
|
||||
- strategies
|
||||
type: object
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
|
||||
Reference in New Issue
Block a user