forked from keycloak/keycloak-operator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkeycloak.org_keycloakbackups_crd.yaml
106 lines (106 loc) · 4.86 KB
/
keycloak.org_keycloakbackups_crd.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: keycloakbackups.keycloak.org
spec:
group: keycloak.org
names:
kind: KeycloakBackup
listKind: KeycloakBackupList
plural: keycloakbackups
singular: keycloakbackup
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: KeycloakBackup is the Schema for the keycloakbackups 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 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
spec:
description: KeycloakBackupSpec defines the desired state of KeycloakBackup
properties:
aws:
description: If provided, an automatic database backup will be created
on AWS S3 instead of a local Persistent Volume. If this property is
not provided - a local Persistent Volume backup will be chosen.
properties:
credentialsSecretName:
description: "Provides a secret name used for connecting to AWS
S3 Service. The secret needs to be in the following form: \n apiVersion:
v1 kind: Secret metadata: name: <Secret name> type:
Opaque stringData: AWS_S3_BUCKET_NAME: <S3 Bucket Name>
\ AWS_ACCESS_KEY_ID: <AWS Access Key ID> AWS_SECRET_ACCESS_KEY:
<AWS Secret Key> \n For more information, please refer to the
Operator documentation."
type: string
encryptionKeySecretName:
description: "If provided, the database backup will be encrypted.
Provides a secret name used for encrypting database data. The
secret needs to be in the following form: \n apiVersion: v1
\ kind: Secret metadata: name: <Secret name> type:
Opaque stringData: GPG_PUBLIC_KEY: <GPG Public Key>
\ GPG_TRUST_MODEL: <GPG Trust Model> GPG_RECIPIENT:
<GPG Recipient> \n For more information, please refer to the Operator
documentation."
type: string
schedule:
description: If specified, it will be used as a schedule for creating
a CronJob
type: string
type: object
restore:
description: "Controls automatic restore behavior. Currently not implemented.
\n In the future this will be used to trigger automatic restore for
a given KeycloakBackup. Each backup will correspond to a single snapshot
of the database (stored either in a Persistent Volume or AWS). If
a user wants to restore it, all he/she needs to do is to change this
flag to true. Potentially, it will be possible to restore a single
backup multiple times."
type: boolean
type: object
status:
description: KeycloakBackupStatus defines the observed state of KeycloakBackup
properties:
message:
description: Human-readable message indicating details about current
operator phase or error.
type: string
phase:
description: Current phase of the operator.
type: string
ready:
description: True if all resources are in a ready state and all work
is done.
type: boolean
secondaryResources:
additionalProperties:
items:
type: string
type: array
description: 'A map of all the secondary resources types and names created
for this CR. e.g "Deployment": [ "DeploymentName1", "DeploymentName2"
]'
type: object
required:
- message
- phase
- ready
type: object
type: object
version: v1alpha1
versions:
- name: v1alpha1
served: true
storage: true