From 8a0e50bbd6fc85c114fd29c7d645cd6810ac1bfe Mon Sep 17 00:00:00 2001 From: Loxeris <30194187+Loxeris@users.noreply.github.com> Date: Wed, 28 Aug 2024 15:16:30 +0200 Subject: [PATCH] ci(Gubbins): add extension workflow --- .github/workflows/extension.yml | 60 +++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/extension.yml diff --git a/.github/workflows/extension.yml b/.github/workflows/extension.yml new file mode 100644 index 00000000..6f5a197d --- /dev/null +++ b/.github/workflows/extension.yml @@ -0,0 +1,60 @@ +name: Gubbins extension + +on: + push: + branches-ignore: + - dependabot/** + - release-please-** + pull_request: + branches-ignore: + - release-please-** + +defaults: + run: + shell: bash -el {0} + +jobs: + run-demo: + runs-on: ubuntu-latest + if: github.event_name != 'push' || github.repository == 'DIRACGrid/diracx-web' + steps: + - uses: actions/checkout@v4 + + - name: Clone source + run: | + cd .. + git clone https://github.com/DIRACGrid/diracx-charts.git + - name: Start demo + run: | + cd .. + diracx-charts/run_demo.sh --exit-when-done diracx-web/packages/extensions + - name: Debugging information + run: | + cd ../diracx-charts + export KUBECONFIG=$PWD/.demo/kube.conf + .demo/kubectl get pods + for pod_name in $(.demo/kubectl get pods -o json | jq -r '.items[] | .metadata.name' | grep -vE '(dex|minio|mysql|rabbitmq|opensearch)'); do + echo "${pod_name}" + .demo/kubectl describe pod/"${pod_name}" || true + for container_name in $(.demo/kubectl get pods $pod_name -o jsonpath='{.spec.initContainers[*].name} {.spec.containers[*].name}'); do + echo $pod_name $container_name + .demo/kubectl logs "${pod_name}" -c "${container_name}" || true + done + done + - name: Check for success + run: | + cd ../diracx-charts + if [ ! -f ".demo/.success" ]; then + echo "Demo failed" + cat ".demo/.failed" + exit 1 + fi + + - name: Set DIRACX_URL + run: echo "DIRACX_URL=https://$(ifconfig | grep 'inet ' | awk '{ print $2 }' | grep -v '^127' | head -n 1 | cut -d '/' -f 1).nip.io:8000" >> $GITHUB_ENV + + - name: Start Cypress + uses: cypress-io/github-action@v6 + with: + browser: chrome + config: baseUrl=${{ env.DIRACX_URL }} \ No newline at end of file