From e307961c12943391df27e3b03f294dea6acb10f8 Mon Sep 17 00:00:00 2001 From: Cappy Ishihara Date: Wed, 13 Dec 2023 22:46:40 +0700 Subject: [PATCH] update CRDs --- deploy/crd/exit-node-provisioner.yaml | 10 +- funny.yaml | 152 ++++++++++++++++++++++++++ 2 files changed, 160 insertions(+), 2 deletions(-) create mode 100644 funny.yaml diff --git a/deploy/crd/exit-node-provisioner.yaml b/deploy/crd/exit-node-provisioner.yaml index f9ecd02..681781a 100644 --- a/deploy/crd/exit-node-provisioner.yaml +++ b/deploy/crd/exit-node-provisioner.yaml @@ -41,11 +41,17 @@ spec: description: Reference to a secret containing the DigitalOcean API token, under the token key type: string region: - description: Region ID of the DigitalOcean datacenter to provision the exit node in + default: '' + description: Region ID of the DigitalOcean datacenter to provision the exit node in If empty, DigitalOcean will randomly select a region for you, which might not be what you want type: string + ssh_fingerprints: + default: [] + description: SSH key fingerprints to add to the exit node + items: + type: string + type: array required: - auth - - region type: object Linode: properties: diff --git a/funny.yaml b/funny.yaml new file mode 100644 index 0000000..0b9e003 --- /dev/null +++ b/funny.yaml @@ -0,0 +1,152 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: exitnodes.chisel-operator.io +spec: + group: chisel-operator.io + names: + categories: [] + kind: ExitNode + plural: exitnodes + shortNames: [] + singular: exitnode + scope: Namespaced + versions: + - additionalPrinterColumns: [] + name: v1 + schema: + openAPIV3Schema: + description: Auto-generated derived type for ExitNodeSpec via `CustomResource` + properties: + spec: + description: ExitNode is a custom resource that represents a Chisel exit node. It will be used as the reverse proxy for all services in the cluster. + properties: + auth: + description: Optional authentication secret name to connect to the control plane + nullable: true + type: string + default_route: + default: false + description: Optional boolean value for whether to make the exit node the default route for the cluster If true, the exit node will be the default route for the cluster default value is false + type: boolean + external_host: + description: Optional real external hostname/IP of exit node If not provided, the host field will be used + nullable: true + type: string + fingerprint: + description: Optional but highly recommended fingerprint to perform host-key validation against the server's public key + nullable: true + type: string + host: + description: Hostname or IP address of the chisel server + type: string + port: + description: Control plane port of the chisel server + format: uint16 + minimum: 0.0 + type: integer + required: + - host + - port + type: object + status: + nullable: true + properties: + id: + nullable: true + type: string + ip: + type: string + name: + type: string + provider: + type: string + required: + - ip + - name + - provider + type: object + required: + - spec + title: ExitNode + type: object + served: true + storage: true + subresources: + status: {} + +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + name: exitnodeprovisioners.chisel-operator.io +spec: + group: chisel-operator.io + names: + categories: [] + kind: ExitNodeProvisioner + plural: exitnodeprovisioners + shortNames: [] + singular: exitnodeprovisioner + scope: Namespaced + versions: + - additionalPrinterColumns: [] + name: v1 + schema: + openAPIV3Schema: + description: Auto-generated derived type for ExitNodeProvisionerSpec via `CustomResource` + properties: + spec: + description: ExitNodeProvisioner is a custom resource that represents a Chisel exit node provisioner on a cloud provider. + oneOf: + - required: + - DigitalOcean + - required: + - Linode + - required: + - AWS + properties: + AWS: + properties: + auth: + type: string + required: + - auth + type: object + DigitalOcean: + properties: + auth: + description: Reference to a secret containing the DigitalOcean API token, under the token key + type: string + region: + default: '' + description: Region ID of the DigitalOcean datacenter to provision the exit node in If empty, DigitalOcean will randomly select a region for you, which might not be what you want + type: string + ssh_fingerprints: + default: [] + description: SSH key fingerprints to add to the exit node + items: + type: string + type: array + required: + - auth + type: object + Linode: + properties: + auth: + type: string + region: + type: string + required: + - auth + - region + type: object + type: object + required: + - spec + title: ExitNodeProvisioner + type: object + served: true + storage: true + subresources: {} +