chore(deps): update docker.io/obiba/opal docker tag to v5 #2402
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci | |
on: | |
pull_request: | |
branches: | |
- master | |
push: | |
branches: | |
- master | |
release: | |
types: | |
- created | |
permissions: read-all | |
env: | |
ONCO_ANALYTICS_NAMESPACE_NAME: bzkf-onco-analytics | |
jobs: | |
build-decompose-xml-image: | |
name: build decompose-xmls container image | |
uses: miracum/.github/.github/workflows/standard-build.yaml@3a6d6e823363d6a7b39daaadc24566130bddef38 # v1.12.10 | |
permissions: | |
contents: write | |
id-token: write | |
packages: write | |
pull-requests: write | |
actions: read | |
security-events: write | |
with: | |
image: ghcr.io/${{ github.repository }}/decompose-xmls | |
build-context: src/decompose_xmls | |
enable-build-test-layer: false | |
secrets: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
build-obds-fhir-to-opal-image: | |
name: build obds-fhir-to-opal container image | |
uses: miracum/.github/.github/workflows/standard-build.yaml@3a6d6e823363d6a7b39daaadc24566130bddef38 # v1.12.10 | |
permissions: | |
contents: write | |
id-token: write | |
packages: write | |
pull-requests: write | |
actions: read | |
security-events: write | |
with: | |
image: ghcr.io/${{ github.repository }}/obds-fhir-to-opal | |
build-context: src/obds_fhir_to_opal | |
enable-build-test-layer: false | |
secrets: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
lint: | |
uses: miracum/.github/.github/workflows/standard-lint.yaml@3a6d6e823363d6a7b39daaadc24566130bddef38 # v1.12.10 | |
permissions: | |
contents: read | |
pull-requests: write | |
issues: write | |
security-events: write | |
actions: read | |
with: | |
enable-validate-gradle-wrapper: false | |
codeql-languages: '["python"]' | |
enable-codeql: false | |
enable-verify-base-image-signature: false | |
secrets: | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
tests: | |
strategy: | |
matrix: | |
# Python versions to run tests for | |
python-version: ["3.11"] | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
cd src/decompose_xmls | |
pip install pytest | |
pip install -r requirements.txt | |
pip install -r requirements-test.txt | |
- name: Run decompose_xmls tests | |
run: | | |
cd src/decompose_xmls | |
pytest | |
test-k8s: | |
runs-on: ubuntu-22.04 | |
# disabled since the major deployment platform is currently | |
# docker compose anyways | |
if: ${{ false }} | |
# run tests only on PRs | |
# ${{ github.event_name == 'pull_request' }} | |
needs: | |
- build-decompose-xml-image | |
- build-obds-fhir-to-opal-image | |
steps: | |
- name: install k3s | |
run: | | |
curl -sfL https://get.k3s.io | INSTALL_K3S_VERSION=v1.28.3+k3s2 sh - | |
- name: setup .kube/config | |
run: | | |
mkdir ~/.kube | |
sudo k3s kubectl config view --raw | tee ~/.kube/config > /dev/null | |
chmod 600 ~/.kube/config | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- name: install dependencies | |
run: | | |
kubectl get node | |
# via <https://stackoverflow.com/a/65411733> | |
kubectl create namespace "${ONCO_ANALYTICS_NAMESPACE_NAME}" --dry-run=client -o yaml | kubectl apply -f - | |
kubectl config set-context --current --namespace="${ONCO_ANALYTICS_NAMESPACE_NAME}" | |
kubectl config view | |
helm dependency build charts/prerequisites | |
helm upgrade --install --wait --timeout=10m --set strimzi-kafka-operator.generateNetworkPolicy=false onco-analytics-on-fhir-prerequisites charts/prerequisites | |
kubectl apply -f k8s/ | |
kubectl wait kafka/bzkf-dizbox-cluster --for=condition=Ready --timeout=600s | |
kubectl apply -f k8s/kafka-bridge.yaml | |
kubectl wait kafkabridge/bzkf-dizbox-bridge --for=condition=Ready --timeout=600s | |
kubectl get all -A | |
- name: install onco-analytics-on-fhir | |
run: | | |
helm repo add miracum https://miracum.github.io/charts | |
helm repo add akhq https://akhq.io/ | |
helm repo add hapi-fhir-jpaserver-starter https://hapifhir.github.io/hapi-fhir-jpaserver-starter | |
helm dependency build charts/onco-analytics-on-fhir | |
helm upgrade --install --wait --timeout=10m onco-analytics-on-fhir charts/onco-analytics-on-fhir | |
kubectl get all -A | |
- name: test deployments | |
run: | | |
helm test onco-analytics-on-fhir | |
kubectl wait deployment/onco-analytics-on-fhir-stream-processors-obds-to-fhir --for=condition=Available --timeout=300s | |
kubectl wait deployment/onco-analytics-on-fhir-stream-processors-fhir-to-server --for=condition=Available --timeout=300s | |
- name: Print cluster logs | |
if: always() | |
run: | | |
kubectl cluster-info dump -o yaml | tee kind-cluster-dump.txt | |
- name: Upload cluster dump | |
if: always() | |
uses: actions/upload-artifact@ff15f0306b3f739f7b6fd43fb5d26cd321bd4de5 # v3.2.1 | |
with: | |
name: kind-cluster-dump.txt | |
path: | | |
kind-cluster-dump.txt | |
build-air-gapped-installer: | |
runs-on: ubuntu-22.04 | |
if: ${{ github.event_name == 'pull_request' }} | |
steps: | |
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
- run: | | |
./build-air-gapped-installer.sh | |
release: | |
if: ${{ startsWith(github.ref, 'refs/tags/') }} | |
permissions: | |
actions: read | |
contents: write | |
id-token: write | |
packages: write | |
needs: | |
- build-decompose-xml-image | |
- build-obds-fhir-to-opal-image | |
uses: ./.github/workflows/release.yaml |