]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
.gitlab-ci.yml: added docker image test
authorAleš Mrázek <ales.mrazek@nic.cz>
Wed, 13 Nov 2024 08:46:39 +0000 (09:46 +0100)
committerAleš Mrázek <ales.mrazek@nic.cz>
Fri, 15 Nov 2024 09:56:20 +0000 (10:56 +0100)
.gitlab-ci.yml

index 882c90f0d92761d80bb12ce57ec2f297be32af17..f6b3134495827a5ac1e903b80728e3b1f671c46e 100644 (file)
@@ -220,12 +220,12 @@ docker:build:native:
     - ${PLATFORM}
     - dind
 
-docker:build:cross-platform:
+docker:build:
   <<: *docker
   stage: build  
-  only:
-    - tags
-    - master@knot/knot-resolver
+  only:
+    - tags
+    - master@knot/knot-resolver
   before_script:
     - >
       docker buildx create
@@ -243,6 +243,42 @@ docker:build:cross-platform:
       --push
       --tag ${GITLAB_REGISTRY}:${CI_COMMIT_REF_NAME}
       .
+
+docker:test:
+  <<: *docker
+  <<: *multi_platform
+  # needs:
+  #   - docker:build
+  image:
+    name: ${GITLAB_REGISTRY}:${CI_COMMIT_REF_NAME}
+    entrypoint: [""]
+  before_script:
+    - apt-get update
+    - apt-get -y install knot-dnsutils curl git
+    - /usr/bin/knot-resolver -c /etc/knot-resolver/config.yaml > knot-resolver.log &
+  script:
+    # check that the resolver responds to queries
+    - kdig nic.cz @localhost#53
+    - kdig +tcp nic.cz @localhost#53
+    - kdig +tls nic.cz @localhost#853
+    - kdig +https nic.cz @localhost#443
+    # run some packaging tests
+    - tests/packaging/kresctl.sh
+    - tests/packaging/interactive/etag.sh
+    - tests/packaging/interactive/schema.sh
+    - tests/packaging/interactive/reload.sh
+    - tests/packaging/interactive/metrics.sh
+    - tests/packaging/interactive/cache-clear.sh
+    - tests/packaging/interactive/workers.sh
+    - kresctl stop
+  artifacts:
+    when: always
+    paths:
+      - knot-resolver.log
+  tags:
+    - docker
+    - ${PLATFORM}
+
   
 docker:deploy:
   <<: *docker
@@ -251,7 +287,7 @@ docker:deploy:
   only:
     - tags
   needs:
-    - docker:build:cross-platform
+    - docker:test
   before_script:
     - echo "$DOCKER_HUB_TOKEN" | docker login -u $DOCKER_HUB_USER --password-stdin
   script: