* scheme update

This commit is contained in:
2025-11-26 06:47:28 +01:00
parent 8cfdb02186
commit 49f0002fc6
52 changed files with 186 additions and 24 deletions

View File

@@ -0,0 +1,82 @@
apiVersion: apiextensions.crossplane.io/v1
kind: Composition
metadata:
name: awscert-composition
labels:
crossplane/provider: default
crossplane/xrd: xawscerts.crossplane.evina
spec:
compositeTypeRef:
apiVersion: crossplane.evina/v1alpha1
kind: XAWSCert
patchSets:
- name: region
patches:
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.region
toFieldPath: spec.forProvider.region
- name: providerConfigRef
patches:
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.providerConfigRef
toFieldPath: spec.providerConfigRef.name
writeConnectionSecretsToNamespace: crossplane
resources:
- name: Certificate
base:
apiVersion: acm.aws.upbound.io/v1beta1
kind: Certificate
metadata:
labels:
resource: Certificate
spec:
forProvider:
validationMethod: DNS
tags:
Environment: #Environment
Project: #NomDuProject
CreatedBy: Crossplane
Team: infra
Region: eu-west-1
Service: ACM
patches:
- type: PatchSet
patchSetName: region
- type: PatchSet
patchSetName: providerConfigRef
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.domainName
toFieldPath: spec.forProvider.domainName
- type: ToCompositeFieldPath
fromFieldPath: status.atProvider.arn
toFieldPath: status.certificate.arn
- type: ToCompositeFieldPath
fromFieldPath: status.atProvider.domainValidationOptions
toFieldPath: status.certificate.domainValidationOptions
- name: Record
base:
apiVersion: route53.aws.upbound.io/v1beta1
kind: Record
metadata:
labels:
resource: Record
spec:
forProvider:
ttl: 300
patches:
- type: PatchSet
patchSetName: region
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.zoneId
toFieldPath: spec.forProvider.zoneId
- type: FromCompositeFieldPath
fromFieldPath: status.certificate.domainValidationOptions[0].resourceRecordName
toFieldPath: spec.forProvider.name
- type: FromCompositeFieldPath
fromFieldPath: status.certificate.domainValidationOptions[0].resourceRecordValue
toFieldPath: spec.forProvider.records[0]
- type: FromCompositeFieldPath
fromFieldPath: status.certificate.domainValidationOptions[0].resourceRecordType
toFieldPath: spec.forProvider.type
policy:
fromFieldPath: Required

View File

@@ -0,0 +1,55 @@
apiVersion: apiextensions.crossplane.io/v1
kind: CompositeResourceDefinition
metadata:
name: xawscerts.crossplane.evina
spec:
group: crossplane.evina
names:
kind: XAWSCert
plural: xawscerts
claimNames:
kind: AWSCert
plural: awscerts
defaultCompositionRef:
name: awscert-composition
versions:
- name: v1alpha1
served: true
referenceable: true
schema:
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
parameters:
type: object
properties:
region:
description: Region where you want to deploy your serviceLoadBalancer
type: string
domainName:
description: Name of the domain to use
type: string
zoneId:
description: Name of the hosted zone to use
type: string
providerConfigRef:
description: Name of the Kubernetes provider config
type: string
required:
- region
- domainName
- zoneId
- providerConfigRef
status:
type: object
properties:
name:
description: name managed
type: string
certificate:
description: Values generated from the ACM API.
type: object
x-kubernetes-preserve-unknown-fields: true