diff --git a/.circleci/config.yml b/.circleci/config.yml index 67efefe..822630d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,18 +1,113 @@ version: 2.1 -setup: true -orbs: - test-harness: govstack-working-group/testutils@1.0.6 +jobs: + build: + docker: + - image: openjdk:11 + resource_class: arm.large + steps: + - checkout + - run: + name: Install Minikube + command: | + curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 + chmod +x minikube + sudo mv minikube /usr/local/bin/ + - run: + name: Start Minikube + command: minikube start --memory 16384 + - run: + name: Install Helm + command: | + curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash + - run: + name: Deploy Helm Charts + command: | + sudo apt-get update + sudo apt-get install -y apt-transport-https ca-certificates curl gpg + sudo mkdir -p /etc/apt/keyrings + sudo touch -y /etc/apt/keyrings/kubernetes-apt-keyring.gpg + curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.28/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg + echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list + sudo apt-get update + kubectl version + + curl https://baltocdn.com/helm/signing.asc | gpg --dearmor | sudo tee /usr/share/keyrings/helm.gpg > /dev/null + sudo apt-get install apt-transport-https --yes + echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/helm.gpg] https://baltocdn.com/helm/stable/debian/ all main" | sudo tee /etc/apt/sources.list.d/helm-stable-debian.list + #helm install + sudo apt-get update + sudo apt-get install helm + #payment install + kubectl apply -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/main/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml #Install ServiceMonitor + kubectl create namespace paymenthub + kubectl get -A namespace + helm repo add g2p-sandbox-1-3-1 https://fynarfin.io/images/ph-ee-g2psandbox-1.3.1/ + helm install ph-ee-g2psandbox g2p-sandbox-1-3-1/ph-ee-g2psandbox --version 1.3.1 -n paymenthub + + git clone -b 7.17 https://github.com/elastic/helm-charts.git elastic/helm-charts + # sleep 300 + cd elastic/helm-charts/elasticsearch/examples/security/ + make secrets || echo "elastic-secrets" already exists + git clone -b 7.17 https://github.com/elastic/helm-charts.git elastic/helm-charts + cd elastic/helm-charts/kibana/examples/security/ + make secrets || echo "kibana-secrets" already exists + kubectl get secret elastic-certificate-crt -n default -o yaml | sed 's/namespace: default/namespace: paymenthub/' | kubectl create -f - + kubectl get secret elastic-certificate-pem -n default -o yaml | sed 's/namespace: default/namespace: paymenthub/' | kubectl create -f - + kubectl get secret elastic-certificates -n default -o yaml | sed 's/namespace: default/namespace: paymenthub/' | kubectl create -f - + kubectl get secret elastic-credentials -n default -o yaml | sed 's/namespace: default/namespace: paymenthub/' | kubectl create -f - + kubectl get secret kibana -n default -o yaml | sed 's/namespace: default/namespace: paymenthub/' | kubectl create -f - + kubectl get secrets -n paymenthub + kubectl get configmap -n paymenthub + + # sleep 5m + kubectl get pods -n paymenthub + #insatll netcat + apt install -y netcat + # until nc -vz ph-ee-zeebe-ops 80; do echo "Waiting for zeebe-ops service"; sleep 2; done; + #Deploy BPMN + kubectl port-forward service/ph-ee-zeebe-ops 5000:80 -n paymenthub & #portforward zeebe-ops &' + git clone https://github.com/openMF/ph-ee-env-labs.git openMF/ph-ee-env-labs + cd openMF/ph-ee-env-labs/orchestration + ls + sed -i "/HOST=/c\HOST=http://localhost:5000/zeebe/upload" deployBpmn.sh + cat deployBpmn.sh + cd .. + sh orchestration/deployBpmn.sh + + kubectl get pods -n paymenthub + kubectl describe po -n paymenthub `kubectl get pods -n paymenthub | grep ph-ee-zeebe-ops |cut -d ' ' -f1` || echo ' ' + # helm list -n paymenthub + # sleep 10m + # kubectl get -A namespace paymenthub + kubectl get pods -n paymenthub + - run: + name: helm test + command: | + helm test ph-ee-g2psandbox -n paymenthub --timeout 5m + workflows: - test_everything: + version: 2 + build-and-deploy: jobs: - - test-harness/create-config: - post-steps: # Persist to workspace has to be defined in main workflow - - persist_to_workspace: - root: workspace - paths: - - generated.yml - - test-harness/execute-tests: - requires: - - test-harness/create-config + - build + +# version: 2.1 +# setup: true + +# orbs: +# test-harness: govstack-working-group/testutils@1.0.6 + +# workflows: +# test_everything: +# jobs: +# - test-harness/create-config: +# post-steps: # Persist to workspace has to be defined in main workflow +# - persist_to_workspace: +# root: workspace +# paths: +# - generated.yml +# - test-harness/execute-tests: +# requires: +# - test-harness/create-config