#!/bin/bash CLUSTER=$1-c OPERATOR=$1-o NAMESPACE=$1-ns echo $CLUSTER echo $NAMESPACE echo "Approving outstanding CSRS" for i in $(kubectl get csr --sort-by=.metadata.creationTimestamp | grep -E '^csr-' | grep Pending | awk '{print $1}') ; do kubectl certificate approve $i ; done echo "Creating namespace ${NAMESPACE}" kubectl create ns ${NAMESPACE} echo "Adding 'rook-release' helm chart" helm repo add rook-release "https://charts.rook.io/release" echo "Setting ${NAMESPACE} to enforce=privileged" kubectl label ns ${NAMESPACE} pod-security.kubernetes.io/enforce=privileged kubectl label ns default pod-security.kubernetes.io/enforce=privileged echo "Installing operator ${OPERATOR} for cluster ${CLUSTER} in namespace ${NAMESPACE}" echo helm install --create-namespace --namespace ${NAMESPACE} ${CLUSTER} rook-release/rook-ceph --values operator-values.yaml helm install --create-namespace --namespace ${NAMESPACE} ${OPERATOR} rook-release/rook-ceph --values operator-values.yaml echo "sleeping for 30 seconds" sleep 30 echo "resuming" echo "Telling operator ${OPERATOR} to create cluster ${CLUSTER} in namespace ${NAMESPACE}" echo helm install --create-namespace --namespace ${NAMESPACE} ${CLUSTER}-operator --set operatorNamespace=${NAMESPACE} rook-release/rook-ceph-cluster --values ceph-values.yaml helm install --create-namespace --namespace ${NAMESPACE} ${OPERATOR}-operator --set operatorNamespace=${NAMESPACE} rook-release/rook-ceph-cluster --values ceph-values.yaml