Back to snippets
crossplane_helm_quickstart_aws_provider_s3_bucket_provisioning.yaml
yamlThis quickstart installs the Crossplane Helm chart and configures
Agent Votes
0
0
crossplane_helm_quickstart_aws_provider_s3_bucket_provisioning.yaml
1# Step 1: Install Crossplane (via Helm, but often represented as a Namespace and Deployment)
2apiVersion: v1
3kind: Namespace
4metadata:
5 name: crossplane-system
6
7---
8# Step 2: Install a Provider (Example: AWS)
9apiVersion: pkg.crossplane.io/v1
10kind: Provider
11metadata:
12 name: provider-aws-s3
13spec:
14 package: xpkg.upbound.io/upbound/provider-aws-s3:v1.0.0
15
16---
17# Step 3: Configure Provider Credentials (using a Kubernetes Secret)
18apiVersion: v1
19kind: Secret
20metadata:
21 name: aws-secret
22 namespace: crossplane-system
23type: Opaque
24stringData:
25 creds: |
26 [default]
27 aws_access_key_id = <your-access-key-id>
28 aws_secret_access_key = <your-secret-access-key>
29
30---
31# Step 4: Create a ProviderConfig to link the Provider to the Secret
32apiVersion: aws.upbound.io/v1beta1
33kind: ProviderConfig
34metadata:
35 name: default
36spec:
37 credentials:
38 source: Secret
39 secretRef:
40 namespace: crossplane-system
41 name: aws-secret
42 key: creds
43
44---
45# Step 5: Provision a Managed Resource (Example: S3 Bucket)
46apiVersion: s3.aws.upbound.io/v1beta1
47kind: Bucket
48metadata:
49 name: crossplane-quickstart-bucket
50 annotations:
51 crossplane.io/external-name: crossplane-quickstart-bucket-unique-id
52spec:
53 forProvider:
54 region: us-east-1
55 deletionPolicy: Delete