Skip to content

stuttgart-things/crossplane

Repository files navigation

stuttart-things/crossplane

crossplane configurations, apis and examples

DEV KIND CLUSTER DEPLOYMENT & CONFIGURATION OF CROSSPLANE

CREATE KIND CLUSTER w/ DAGGER (DOCKER+KIND ARE REQUIRED)
export TASK_X_REMOTE_TASKFILES=1
task --taskfile https://raw.githubusercontent.com/stuttgart-things/tasks/refs/heads/main/kubernetes/kind.yaml create-kind-cluster

export KUBECONFIG=/home/sthings/.kube/<CLUSTER-NAME>
task --taskfile https://raw.githubusercontent.com/stuttgart-things/tasks/refs/heads/main/kubernetes/crds.yaml kubectl-kustomize #apply+cilium
task --taskfile https://raw.githubusercontent.com/stuttgart-things/tasks/refs/heads/main/kubernetes/helm.yaml helmfile-operation #apply+cilium
CREATE KIND CLUSTER w/ DAGGER+ANSIBLE
dagger call -m github.com/stuttgart-things/blueprints/vm \
execute-ansible \
--playbooks "sthings.baseos.setup,sthings.container.kind_xplane" \
--hosts "10.31.103.23" \
--ssh-user=env:SSH_USER \
--ssh-password=env:SSH_PASSWORD \
--requirements /tmp/requirements.yaml \
--progress plain -vv
CROSSPLANE DEPLOYMENT w/ DAGGER/HELMFILE
kubectl apply --server-side -k https://github.com/stuttgart-things/helm/cicd/crds/crossplane

# BY TASKFILE (IS USING GUM+DAGGER)
export TASK_X_REMOTE_TASKFILES=1
task --taskfile https://raw.githubusercontent.com/stuttgart-things/tasks/refs/heads/main/kubernetes/helm.yaml helmfile-operation #apply+crossplane
# OR BY DIRECT DAGGER CALL
dagger call -m github.com/stuttgart-things/dagger/[email protected] helmfile-operation \
  --helmfile-ref "git::https://github.com/stuttgart-things/helm.git@cicd/crossplane.yaml.gotmpl" \
  --operation apply \
  --state-values "version=2.1.3" \
  --kube-config file:///home/sthings/.kube/config \
  --progress plain -vv
CROSSPLANE DEPLOYMENT w/ DAGGER/HELMFILE
kubectl apply -k https://github.com/stuttgart-things/helm/cicd/crds/tekton
dagger call -m github.com/stuttgart-things/dagger/[email protected] \
  helmfile-operation \
  --helmfile-ref "git::https://github.com/stuttgart-things/helm.git@infra/openebs.yaml.gotmpl" \
  --operation apply \
  --state-values "namespace=openebs-system,profile=localpv,openebs_volumesnapshots_enabled=false,openebs_csi_node_init_containers_enabled=false,openebs_local_lvm_enabled=false,openebs_local_zfs_enabled=false,openebs_replicated_mayastor_enabled=false" \
  --kube-config file://~/.kube/config \
  --progress plain -vv
# DEPLOY TEKTON w/ DAGGER
dagger call -m github.com/stuttgart-things/dagger/[email protected] \
  helmfile-operation \
  --helmfile-ref "git::https://github.com/stuttgart-things/helm.git@cicd/tekton.yaml.gotmpl" \
  --operation apply \
  --state-values "namespace=tekton-operator,pipelineNamespace=tekton-pipelines,version=0.77.5" \
  --kube-config file://~/.kube/config \
  --progress plain -vv
ADD LOCAL CLUSTER AS KUBERNETES PROVIDER (FILEBASED)
dagger call -m github.com/stuttgart-things/blueprints/crossplane-configuration add-cluster \
--clusterName=in-cluster \
--kubeconfig-cluster file:///home/sthings/.kube/xplane \ --kubeconfig-crossplane-cluster file:///home/sthings/.kube/xplane \
--deploy-to-cluster=false \
--progress plain \
-vv export \
--path=/tmp/xplane
APPLY CROSSPLANE PACKAGES
# BY TASKFILE
export TASK_X_REMOTE_TASKFILES=1
task --taskfile https://raw.githubusercontent.com/stuttgart-things/crossplane/refs/heads/main/Taskfile.yaml apply-crossplane-packages
APPLY CROSSPLANE PACKAGES
# BY TASKFILE
export TASK_X_REMOTE_TASKFILES=1
task --taskfile https://raw.githubusercontent.com/stuttgart-things/crossplane/refs/heads/main/Taskfile.yaml apply-crossplane-packages

CONFIGURATIONS

APPLY CROSSPLANE PACKAGES
export TASK_X_REMOTE_TASKFILES=1
task --taskfile https://raw.githubusercontent.com/stuttgart-things/crossplane/refs/heads/main/Taskfile.yaml create-new-configuration

DEVELOPMENT

Quick Start

# Setup standardized development environment
source .container-use/container-use.sh
cu-setup

# Access development environment
container-use checkout crossplane-development

# Test existing configurations
cu-test-vcluster
cu-test-ansible-run
cu-test-all

Development Standards

This repository follows structured development specifications:

Workflow Automation

Standardized tasks for environment management:

# Interactive environment merge
task merge-environment

# Direct environment merge
task merge-environment-auto ENV_ID=your-env-id

# Pull request workflow
task merge-environment-pr

# View all available tasks
task do

Quick Specification Access

# Load helper functions
source .container-use/container-use.sh

# View specifications
cu-spec                           # Show available specs
cu-new my-config apps            # Create new config with guidance

Available Tasks

task: Available tasks for this project:
* branch:                    Create branch from main
* check:                     Run pre-commit hooks
* commit:                    Commit + push code into branch
* do:                        Select a task to run
* pr:                        Create pull request into main
* run-pre-commit-hook:       Run the pre-commit hook script to replace .example.com with .example.com
* xplane-push:               Push crossplane package

About

crossplane configurations, apis and examples

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages