Skip to content

Instantly share code, notes, and snippets.

@HighonAces
Created December 8, 2024 20:48
Show Gist options
  • Select an option

  • Save HighonAces/bdfcc6c2ad46be4884627515caf51abf to your computer and use it in GitHub Desktop.

Select an option

Save HighonAces/bdfcc6c2ad46be4884627515caf51abf to your computer and use it in GitHub Desktop.
XRD to create network components
apiVersion: apiextensions.crossplane.io/v1
kind: CompositeResourceDefinition
metadata:
name: xdbnetworks.db.srujanpakanati.com
spec:
group: db.srujanpakanati.com
names:
kind: XDBNetwork
plural: xdbnetworks
claimNames:
kind: DBNetwork
plural: dbnetworks
versions:
- name: v1alpha1
served: true
referenceable: true
schema:
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
parameters:
description: Network Parameters
properties:
region:
type: string
description: Region is the region you'd like your resource to be created in.
deletionPolicy:
description: Delete the external resources when the Claim/XR is deleted. Defaults to Delete
enum:
- Delete
- Orphan
type: string
default: Delete
providerConfigName:
description: Crossplane ProviderConfig to use for provisioning this resources
type: string
default: default
vpcCidrBlock:
type: string
description: CIDR block for the VPC
default: 192.168.0.0/16
subnets:
type: array
items:
type: object
properties:
availabilityZone:
type: string
type:
type: string
enum:
- public
- private
cidrBlock:
type: string
description: Subnets to create in the VPC
required:
- availabilityZone
- type
- cidrBlock
required:
- deletionPolicy
- providerConfigName
- region
- subnets
- vpcCidrBlock
type: object
required:
- parameters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment