Skip to content

diegopso/crossplane-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pre-requisties

  • A kubectl, helm, and kubeseal.

Kubeseal is only needed to seal secrets, but not for deployment.

Provision resources from local

Add the private key to foundation/tls.pem, then:

cp /path/to/my-key/tls.pem ./foundation
helm dependencies build ./foundation
helm upgrade --install platform-foundation ./foundation --namespace platform-foundation --create-namespace --wait

Uninstall

kubectl delete app/aws-eu1 -n platform-foundation # delete this first to avoid race condition
helm uninstall platform-foundation --namespace platform-foundation --wait

View ArgoCD UI

kubectl get secret argocd-initial-admin-secret -n platform-foundation --template={{.data.password}} | base64 -d
kubectl port-forward svc/platform-foundation-argocd-server -n platform-foundation 8080:443

Use the secret printed and the user admin to see the UI.

Sealing required secrets with Kubeseal

Create a file ./.secrets/aws-creds.yaml with:

[default]
aws_access_key_id = your-key-id-here
aws_secret_access_key = your-secret-here

Then:

kubectl create secret generic aws-secret --from-file=creds=./.secrets/aws-credentials.txt --dry-run=client -o yaml > ./.secrets/aws-creds.yaml
cat ./.secrets/aws-creds.yaml | kubeseal --cert foundation/tls.crt -o yaml -n infrastructure > aws-eu1/infrastructure/templates/aws-creds.yaml

About

Little playground to use Crossplane to provide IaaC

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors