github.com/verrazzano/verrazzano@v1.7.0/platform-operator/thirdparty/charts/mysql-operator/crds/crd.yaml (about) 1 apiVersion: apiextensions.k8s.io/v1 2 kind: CustomResourceDefinition 3 metadata: 4 name: innodbclusters.mysql.oracle.com 5 spec: 6 group: mysql.oracle.com 7 versions: 8 - name: v2 9 served: true 10 storage: true 11 schema: 12 openAPIV3Schema: 13 type: object 14 required: ["spec"] 15 properties: 16 metadata: 17 type: object 18 properties: 19 name: 20 type: string 21 maxLength: 40 22 spec: 23 type: object 24 required: ["secretName"] 25 properties: 26 secretName: 27 type: string 28 description: "Name of a generic type Secret containing root/default account password" 29 tlsCASecretName: 30 type: string 31 description: "Name of a generic type Secret containing CA (ca.pem) and optional CRL (crl.pem) for SSL" 32 tlsSecretName: 33 type: string 34 description: "Name of a TLS type Secret containing Server certificate and private key for SSL" 35 tlsUseSelfSigned: 36 type: boolean 37 default: false 38 description: "Enables use of self-signed TLS certificates, reducing or disabling TLS based security verifications" 39 version: 40 type: string 41 pattern: '^\d+\.\d+\.\d+(-.+)?' 42 description: "MySQL Server version" 43 edition: 44 type: string 45 pattern: "^(community|enterprise)$" 46 description: "MySQL Server Edition (community or enterprise)" 47 imageRepository: 48 type: string 49 description: "Repository from where images must be pulled from; defaults to mysql for community and container-registry.oracle.com/mysql for enterprise" 50 imagePullPolicy: 51 type: string 52 description: "Defaults to Always, but set to IfNotPresent in deploy-operator.yaml when deploying Operator" 53 imagePullSecrets: 54 type: array 55 items: 56 type: object 57 properties: 58 name: 59 type: string 60 serviceAccountName: 61 type: string 62 baseServerId: 63 type: integer 64 minimum: 0 65 maximum: 4294967195 66 default: 1000 67 description: "Base value for MySQL server_id for instances in the cluster" 68 datadirVolumeClaimTemplate: 69 type: object 70 x-kubernetes-preserve-unknown-fields: true 71 description: "Template for a PersistentVolumeClaim, to be used as datadir" 72 mycnf: 73 type: string 74 description: "Custom configuration additions for my.cnf" 75 instances: 76 type: integer 77 minimum: 1 78 maximum: 9 79 default: 1 80 description: "Number of MySQL replica instances for the cluster" 81 podSpec: 82 type: object 83 x-kubernetes-preserve-unknown-fields: true 84 podAnnotations: 85 type: object 86 x-kubernetes-preserve-unknown-fields: true 87 podLabels: 88 type: object 89 x-kubernetes-preserve-unknown-fields: true 90 keyring: 91 type: object 92 description: "Keyring specification" 93 properties: 94 file: 95 type: object 96 description: "Keyring 'File' specification" 97 required: ["fileName", "storage"] 98 properties: 99 fileName: 100 type: string 101 description: "Full path to the keyring file name inside the storage volume" 102 readOnly: 103 type: boolean 104 default: false 105 description: "Whether to open the keyring file in read-only mode" 106 storage: 107 type: object 108 description : "Specification of the volume to be mounted where the keyring file resides" 109 x-kubernetes-preserve-unknown-fields: true 110 encryptedFile: 111 type: object 112 description: "Keyring 'Encrypted File' specification" 113 required: ["fileName", "storage", "password"] 114 properties: 115 fileName: 116 type: string 117 description: "Full path to the keyring file name inside the storage volume" 118 readOnly: 119 type: boolean 120 default: false 121 description: "Whether to open the keyring file in read-only mode" 122 password: 123 type: string 124 description: "Name of a secret that contains password for the keyring in the key 'keyring_password'" 125 storage: 126 type: object 127 description : "Specification of the volume to be mounted where the keyring file resides" 128 x-kubernetes-preserve-unknown-fields: true 129 oci: 130 type: object 131 description: "Keyring 'OCI' specification" 132 required: ["user", "keySecret", "keyFingerprint", "tenancy"] 133 properties: 134 user: 135 type: string 136 description: "User identifier in the form of ocid1.user.oc1..." 137 pattern: '^ocid1\.user\.' 138 keySecret: 139 type: string 140 description: "A secret that contains the private key under the field 'privatekey'" 141 keyFingerprint: 142 type: string 143 description: "Private key fingerprint" 144 pattern: '([0-9a-f]{2}:){15}[0-9a-f]{2}$' 145 tenancy: 146 type: string 147 description: "Tenancy identifier in the form ocid1.tenancy.oc1..." 148 pattern: '^ocid1\.tenancy\.' 149 compartment: 150 type: string 151 description: "Compartment identifier in the form ocid1.compartment.oc1..." 152 pattern: '^ocid1\.compartment\.' 153 virtualVault: 154 type: string 155 description: "Vault identifier in the form ocid1.vault.oc1..." 156 pattern: '^ocid1\.vault\.' 157 masterKey: 158 type: string 159 description: "Master key identified in the form ocid1.key.oc1..." 160 pattern: '^ocid1\.key\.' 161 endpoints: 162 type: object 163 description: "" 164 properties: 165 encryption: 166 type: string 167 description: "Encryption endpoint URI like <identifier>-crypto.kms.<region>.oraclecloud.com" 168 management: 169 type: string 170 description: "Management endpoint URI like <identifier>-management.kms.<region>.oraclecloud.com" 171 vaults: 172 type: string 173 description: "Vaults endpoint URI like vaults.<region>.oci.oraclecloud.com" 174 secrets: 175 type: string 176 description: "Secrets endpoint URI like secrets.vaults.<region>.oci.oraclecloud.com" 177 caCertificate: 178 type: string 179 description: "Secret that contains ca.crt field with CA certificate bundle file that the keyring_oci plugin uses for Oracle Cloud Infrastructure certificate verification" 180 initDB: 181 type: object 182 properties: 183 clone: 184 type: object 185 required: ["donorUrl", "secretKeyRef"] 186 properties: 187 donorUrl: 188 type: string 189 description: "URL of the cluster to clone from" 190 rootUser: 191 type: string 192 default: "root" 193 description: "User name used for cloning" 194 secretKeyRef: 195 type: object 196 required: ["name"] 197 properties: 198 name: 199 type: string 200 description: "Secret name with key 'rootPassword' storing the password for the user specified in rootUser" 201 dump: 202 type: object 203 required: ["storage"] 204 properties: 205 name: 206 type: string 207 description: "Name of the dump. Not used by the operator, but a descriptive hint for the cluster administrator" 208 path: 209 type: string 210 description: "Path to the dump in the PVC. Use when specifying persistentVolumeClaim. Omit for ociObjectStorage or S3." 211 options: 212 type: object 213 description: "A dictionary of key-value pairs passed directly to MySQL Shell's loadDump()" 214 x-kubernetes-preserve-unknown-fields: true 215 storage: 216 type: object 217 properties: 218 ociObjectStorage: 219 type: object 220 required: ["bucketName", "prefix", "credentials"] 221 properties: 222 bucketName: 223 type: string 224 description: "Name of the bucket where the dump is stored" 225 prefix: 226 type: string 227 description: "Path in the bucket where the dump files are stored" 228 credentials: 229 type: string 230 description: "Secret name with data for accessing the bucket" 231 s3: 232 type: object 233 required: ["bucketName", "prefix", "config"] 234 properties: 235 bucketName: 236 type: string 237 description: "Name of the bucket where the dump is stored" 238 prefix: 239 type: string 240 description: "Path in the bucket where the dump files are stored" 241 config: 242 type: string 243 description: "Secret name with S3 configuration and credentials" 244 profile: 245 type: string 246 default: "" 247 description: "Profile being used in configuration files" 248 endpoint: 249 type: string 250 description: "Override endpoint URL" 251 persistentVolumeClaim: 252 type: object 253 description : "Specification of the PVC to be used. Used 'as is' in the cloning pod." 254 x-kubernetes-preserve-unknown-fields: true 255 x-kubernetes-preserve-unknown-fields: true 256 x-kubernetes-preserve-unknown-fields: true 257 router: 258 type: object 259 description: "MySQL Router specification" 260 properties: 261 instances: 262 type: integer 263 minimum: 0 264 default: 1 265 description: "Number of MySQL Router instances to deploy" 266 tlsSecretName: 267 type: string 268 description: "Name of a TLS type Secret containing MySQL Router certificate and private key used for SSL" 269 version: 270 type: string 271 pattern: '^\d+\.\d+\.\d+(-.+)?' 272 description: "Override MySQL Router version" 273 podSpec: 274 type: object 275 x-kubernetes-preserve-unknown-fields: true 276 podAnnotations: 277 type: object 278 x-kubernetes-preserve-unknown-fields: true 279 podLabels: 280 type: object 281 x-kubernetes-preserve-unknown-fields: true 282 backupProfiles: 283 type: array 284 description: "Backup profile specifications for the cluster, which can be referenced from backup schedules and one-off backup jobs" 285 items: 286 type: object 287 required: ["name"] 288 properties: 289 name: 290 type: string 291 description: "Embedded backup profile, referenced as backupProfileName elsewhere" 292 podAnnotations: 293 type: object 294 x-kubernetes-preserve-unknown-fields: true 295 podLabels: 296 type: object 297 x-kubernetes-preserve-unknown-fields: true 298 dumpInstance: 299 type: object 300 properties: 301 dumpOptions: 302 type: object 303 description: "A dictionary of key-value pairs passed directly to MySQL Shell's DumpInstance()" 304 x-kubernetes-preserve-unknown-fields: true 305 storage: 306 type: object 307 properties: 308 ociObjectStorage: 309 type: object 310 required: ["bucketName", "credentials"] 311 properties: 312 bucketName: 313 type: string 314 description: "Bucket name where backup is stored" 315 prefix: 316 type: string 317 description: "Path in bucket where backup is stored" 318 credentials: 319 type: string 320 description: "Secret name with data for accessing the bucket" 321 s3: 322 type: object 323 required: ["bucketName", "config"] 324 properties: 325 bucketName: 326 type: string 327 description: "Name of the bucket where the dump is stored" 328 prefix: 329 type: string 330 description: "Path in the bucket where the dump files are stored" 331 config: 332 type: string 333 description: "Secret name with S3 configuration and credentials" 334 profile: 335 type: string 336 default: "" 337 description: "Profile being used in configuration files" 338 endpoint: 339 type: string 340 description: "Override endpoint URL" 341 persistentVolumeClaim: 342 type: object 343 description : "Specification of the PVC to be used. Used 'as is' in pod executing the backup." 344 x-kubernetes-preserve-unknown-fields: true 345 x-kubernetes-preserve-unknown-fields: true 346 snapshot: 347 type: object 348 properties: 349 storage: 350 type: object 351 properties: 352 ociObjectStorage: 353 type: object 354 required: ["bucketName", "credentials"] 355 properties: 356 bucketName: 357 type: string 358 description: "Bucket name where backup is stored" 359 prefix: 360 type: string 361 description: "Path in bucket where backup is stored" 362 credentials: 363 type: string 364 description: "Secret name with data for accessing the bucket" 365 s3: 366 type: object 367 required: ["bucketName", "config"] 368 properties: 369 bucketName: 370 type: string 371 description: "Name of the bucket where the dump is stored" 372 prefix: 373 type: string 374 description: "Path in the bucket where the dump files are stored" 375 config: 376 type: string 377 description: "Secret name with S3 configuration and credentials" 378 profile: 379 type: string 380 default: "" 381 description: "Profile being used in configuration files" 382 endpoint: 383 type: string 384 description: "Override endpoint URL" 385 persistentVolumeClaim: 386 type: object 387 description : "Specification of the PVC to be used. Used 'as is' in pod executing the backup." 388 x-kubernetes-preserve-unknown-fields: true 389 x-kubernetes-preserve-unknown-fields: true 390 x-kubernetes-preserve-unknown-fields: true 391 backupSchedules: 392 type: array 393 description: "Schedules for periodically executed backups" 394 items: 395 type: object 396 required: ["name", "schedule"] 397 x-kubernetes-preserve-unknown-fields: true 398 properties: 399 name: 400 type: string 401 description: "Name of the backup schedule" 402 schedule: 403 type: string 404 description: "The schedule of the job, syntax as a cron expression" 405 backupProfileName: 406 type: string 407 description: "Name of the backupProfile to be used" 408 backupProfile: 409 type: object 410 description: "backupProfile specification if backupProfileName is not specified" 411 x-kubernetes-preserve-unknown-fields: true 412 properties: 413 podAnnotations: 414 type: object 415 x-kubernetes-preserve-unknown-fields: true 416 podLabels: 417 type: object 418 x-kubernetes-preserve-unknown-fields: true 419 dumpInstance: 420 type: object 421 properties: 422 dumpOptions: 423 type: object 424 description: "A dictionary of key-value pairs passed directly to MySQL Shell's DumpInstance()" 425 x-kubernetes-preserve-unknown-fields: true 426 storage: 427 type: object 428 properties: 429 ociObjectStorage: 430 type: object 431 required: ["bucketName", "credentials"] 432 properties: 433 bucketName: 434 type: string 435 description: "Bucket name where backup is stored" 436 prefix: 437 type: string 438 description: "Path in bucket where backup is stored" 439 credentials: 440 type: string 441 description: "Secret name with data for accessing the bucket" 442 s3: 443 type: object 444 required: ["bucketName", "config"] 445 properties: 446 bucketName: 447 type: string 448 description: "Name of the bucket where the dump is stored" 449 prefix: 450 type: string 451 description: "Path in the bucket where the dump files are stored" 452 config: 453 type: string 454 description: "Secret name with S3 configuration and credentials" 455 profile: 456 type: string 457 default: "" 458 description: "Profile being used in configuration files" 459 endpoint: 460 type: string 461 description: "Override endpoint URL" 462 persistentVolumeClaim: 463 type: object 464 description : "Specification of the PVC to be used. Used 'as is' in pod executing the backup." 465 x-kubernetes-preserve-unknown-fields: true 466 x-kubernetes-preserve-unknown-fields: true 467 deleteBackupData: 468 type: boolean 469 default: false 470 description: "Whether to delete the backup data in case the MySQLBackup object created by the job is deleted" 471 enabled: 472 type: boolean 473 default: true 474 description: "Whether the schedule is enabled or not" 475 status: 476 type: object 477 x-kubernetes-preserve-unknown-fields: true 478 subresources: 479 status: {} 480 additionalPrinterColumns: 481 - name: Status 482 type: string 483 description: Status of the InnoDB Cluster 484 jsonPath: .status.cluster.status 485 - name: Online 486 type: integer 487 description: Number of ONLINE InnoDB Cluster instances 488 jsonPath: .status.cluster.onlineInstances 489 - name: Instances 490 type: integer 491 description: Number of InnoDB Cluster instances configured 492 jsonPath: .spec.instances 493 - name: Routers 494 type: integer 495 description: Number of Router instances configured for the InnoDB Cluster 496 jsonPath: .spec.router.instances 497 - name: Age 498 type: date 499 jsonPath: .metadata.creationTimestamp 500 scope: Namespaced 501 names: 502 kind: InnoDBCluster 503 listKind: InnoDBClusterList 504 singular: innodbcluster 505 plural: innodbclusters 506 shortNames: 507 - ic 508 - ics 509 --- 510 apiVersion: apiextensions.k8s.io/v1 511 kind: CustomResourceDefinition 512 metadata: 513 name: mysqlbackups.mysql.oracle.com 514 spec: 515 group: mysql.oracle.com 516 scope: Namespaced 517 names: 518 kind: MySQLBackup 519 listKind: MySQLBackupList 520 singular: mysqlbackup 521 plural: mysqlbackups 522 shortNames: 523 - mbk 524 versions: 525 - name: v2 526 served: true 527 storage: true 528 schema: 529 openAPIV3Schema: 530 type: object 531 properties: 532 spec: 533 type: object 534 required: ["clusterName"] 535 properties: 536 clusterName: 537 type: string 538 backupProfileName: 539 type: string 540 backupProfile: 541 type: object 542 description: "backupProfile specification if backupProfileName is not specified" 543 x-kubernetes-preserve-unknown-fields: true 544 properties: 545 podAnnotations: 546 type: object 547 x-kubernetes-preserve-unknown-fields: true 548 podLabels: 549 type: object 550 x-kubernetes-preserve-unknown-fields: true 551 dumpInstance: 552 type: object 553 properties: 554 dumpOptions: 555 type: object 556 description: "A dictionary of key-value pairs passed directly to MySQL Shell's DumpInstance()" 557 x-kubernetes-preserve-unknown-fields: true 558 storage: 559 type: object 560 properties: 561 ociObjectStorage: 562 type: object 563 required: ["bucketName", "credentials"] 564 properties: 565 bucketName: 566 type: string 567 description: "Bucket name where backup is stored" 568 prefix: 569 type: string 570 description: "Path in bucket where backup is stored" 571 credentials: 572 type: string 573 description: "Secret name with data for accessing the bucket" 574 s3: 575 type: object 576 required: ["bucketName", "config"] 577 properties: 578 bucketName: 579 type: string 580 description: "Name of the bucket where the dump is stored" 581 prefix: 582 type: string 583 description: "Path in the bucket where the dump files are stored" 584 config: 585 type: string 586 description: "Secret name with S3 configuration and credentials" 587 profile: 588 type: string 589 default: "" 590 description: "Profile being used in configuration files" 591 endpoint: 592 type: string 593 description: "Override endpoint URL" 594 persistentVolumeClaim: 595 type: object 596 description : "Specification of the PVC to be used. Used 'as is' in pod executing the backup." 597 x-kubernetes-preserve-unknown-fields: true 598 x-kubernetes-preserve-unknown-fields: true 599 addTimestampToBackupDirectory: 600 type: boolean 601 default: true 602 deleteBackupData: 603 type: boolean 604 default: false 605 status: 606 type: object 607 properties: 608 status: 609 type: string 610 startTime: 611 type: string 612 completionTime: 613 type: string 614 elapsedTime: 615 type: string 616 output: 617 type: string 618 method: 619 type: string 620 source: 621 type: string 622 bucket: 623 type: string 624 ociTenancy: 625 type: string 626 spaceAvailable: 627 type: string 628 size: 629 type: string 630 subresources: 631 status: {} 632 additionalPrinterColumns: 633 - name: Cluster 634 type: string 635 description: Name of the target cluster 636 jsonPath: .spec.clusterName 637 - name: Status 638 type: string 639 description: Status of the Backup 640 jsonPath: .status.status 641 - name: Output 642 type: string 643 description: Name of the produced file/directory 644 jsonPath: .status.output 645 - name: Age 646 type: date 647 jsonPath: .metadata.creationTimestamp 648 --- 649 apiVersion: apiextensions.k8s.io/v1 650 kind: CustomResourceDefinition 651 metadata: 652 name: clusterkopfpeerings.zalando.org 653 spec: 654 scope: Cluster 655 group: zalando.org 656 names: 657 kind: ClusterKopfPeering 658 plural: clusterkopfpeerings 659 singular: clusterkopfpeering 660 versions: 661 - name: v1 662 served: true 663 storage: true 664 schema: 665 openAPIV3Schema: 666 type: object 667 properties: 668 status: 669 type: object 670 x-kubernetes-preserve-unknown-fields: true 671 --- 672 apiVersion: apiextensions.k8s.io/v1 673 kind: CustomResourceDefinition 674 metadata: 675 name: kopfpeerings.zalando.org 676 spec: 677 scope: Namespaced 678 group: zalando.org 679 names: 680 kind: KopfPeering 681 plural: kopfpeerings 682 singular: kopfpeering 683 versions: 684 - name: v1 685 served: true 686 storage: true 687 schema: 688 openAPIV3Schema: 689 type: object 690 properties: 691 status: 692 type: object 693 x-kubernetes-preserve-unknown-fields: true