]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
manager: ci: interactive tests docs-develop-ci-m-p8cie3/deployments/4599
authorAleš Mrázek <ales.mrazek@nic.cz>
Mon, 22 Jul 2024 08:47:38 +0000 (10:47 +0200)
committerAleš Mrázek <ales.mrazek@nic.cz>
Mon, 22 Jul 2024 08:47:38 +0000 (10:47 +0200)
manager/.gitlab-ci.yml
manager/etc/knot-resolver/config.ci.yaml [new file with mode: 0644]
manager/scripts/run

index 369035c8b0f6eb3d7e3561bad90f6bda9c9b3426..022967b0d0af39145dd9d68f2a335977242a078b 100644 (file)
@@ -1,5 +1,6 @@
 stages:
   - check
+  - test
 
 default:
   image: $IMAGE_PREFIX/manager:$IMAGE_TAG
@@ -70,3 +71,24 @@ unit:py3.12:
   <<: *unit
   variables:
     PYTHON_INTERPRETER: python3.12
+
+.interactive: &interactive
+  stage: test
+  script:
+    - poetry install --only main,dev,test --all-extras
+    - poe run config.ci.yaml
+    # the following command makes sure that the source root of the coverage file is at $gitroot
+    - poetry run bash -c "cd ..; coverage combine manager/.coverage; coverage xml"
+  artifacts:
+    reports:
+      coverage_report:
+        coverage_format: cobertura
+        path: coverage.xml
+      junit: manager/unit.junit.xml
+    paths:
+      - manager/unit.junit.xml
+
+interactive:py3.8:
+  <<: *interactive
+  variables:
+    PYTHON_INTERPRETER: python3.8
\ No newline at end of file
diff --git a/manager/etc/knot-resolver/config.ci.yaml b/manager/etc/knot-resolver/config.ci.yaml
new file mode 100644 (file)
index 0000000..d3dfa4c
--- /dev/null
@@ -0,0 +1,9 @@
+rundir: ./runtime
+workers: 2
+management:
+  unix-socket: ./runtime/manager.sock
+cache:
+  storage: ./cache
+network:
+  listen:
+    - interface: 127.0.0.1@5353
index 2080ce2a2776ea3e1df4b405f5fc0da1e3ea089f..dc3f170e268c841c07a306f4dc7b8fac81505d8a 100755 (executable)
@@ -25,6 +25,13 @@ echo
 echo Knot Manager API is accessible on http://localhost:5000
 echo -------------------------------------------------------
 
+if [ -z "$1" ]
+  then
+    CONFIG_FILE="config.dev.yaml" 
+else
+    CONFIG_FILE="$1"
+fi
+
 # create runtime directories
 if [ -z "${KRES_MANAGER_RUNTIME:-}" ]; then
     KRES_MANAGER_RUNTIME="etc/knot-resolver"
@@ -32,7 +39,7 @@ fi
 mkdir -p "$KRES_MANAGER_RUNTIME/runtime" "$KRES_MANAGER_RUNTIME/cache"
 
 if [ -z "${KRES_MANAGER_CONFIG:-}" ]; then
-    KRES_MANAGER_CONFIG="$KRES_MANAGER_RUNTIME/config.dev.yaml"
+    KRES_MANAGER_CONFIG="$KRES_MANAGER_RUNTIME/$CONFIG_FILE"
 fi
 
 if [ -z "${KRES_MANAGER_API_SOCK:-}" ]; then