Files
Sankofa/gitops/infrastructure/compositions/vm-ubuntu.yaml
defiQUG 7cd7022f6e Update .gitignore, remove package-lock.json, and enhance Cloudflare and Proxmox adapters
- Added lock file exclusions for pnpm in .gitignore.
- Removed obsolete package-lock.json from the api and portal directories.
- Enhanced Cloudflare adapter with additional interfaces for zones and tunnels.
- Improved Proxmox adapter error handling and logging for API requests.
- Updated Proxmox VM parameters with validation rules in the API schema.
- Enhanced documentation for Proxmox VM specifications and examples.
2025-12-12 19:29:01 -08:00

56 lines
1.7 KiB
YAML

apiVersion: apiextensions.crossplane.io/v1
kind: Composition
metadata:
name: vm-ubuntu
labels:
provider: proxmox
spec:
writeConnectionSecretsToRef:
name: vm-connection-secret
namespace: crossplane-system
compositeTypeRef:
apiVersion: proxmox.sankofa.nexus/v1alpha1
kind: VirtualMachine
resources:
- name: proxmox-vm
base:
apiVersion: proxmox.sankofa.nexus/v1alpha1
kind: ProxmoxVM
metadata:
labels:
tenant-id: "TENANT_ID_PLACEHOLDER"
managed-by: sankofa-phoenix
spec:
forProvider:
node: ML110-01
cpu: 2
memory: 4Gi
disk: 50Gi
storage: local-lvm
network: vmbr0
image: ubuntu-22.04-cloud
site: us-sfvalley
patches:
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.name
toFieldPath: spec.forProvider.name
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.cpu
toFieldPath: spec.forProvider.cpu
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.memory
toFieldPath: spec.forProvider.memory
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.disk
toFieldPath: spec.forProvider.disk
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.site
toFieldPath: spec.forProvider.site
- type: FromCompositeFieldPath
fromFieldPath: spec.parameters.node
toFieldPath: spec.forProvider.node
optional: true
- type: FromCompositeFieldPath
fromFieldPath: metadata.labels['tenant-id']
toFieldPath: metadata.labels['tenant-id']