]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Use docker compose to start and stop containers which match directly to our command...
authorTrenton H <797416+stumpylog@users.noreply.github.com>
Tue, 29 Nov 2022 21:59:48 +0000 (13:59 -0800)
committerTrenton H <797416+stumpylog@users.noreply.github.com>
Wed, 30 Nov 2022 04:11:40 +0000 (20:11 -0800)
.github/workflows/ci.yml
docker/compose/docker-compose.ci-test.yml [new file with mode: 0644]

index 12d8708aca9340e79c586c143699de1160e01fb5..95efa31e37c3807e36c5bfb7855cef6b43f78926 100644 (file)
@@ -81,15 +81,6 @@ jobs:
       matrix:
         python-version: ['3.8', '3.9', '3.10']
       fail-fast: false
-    services:
-      tika:
-        image: ghcr.io/paperless-ngx/tika:latest
-        ports:
-          - "9998:9998/tcp"
-      gotenberg:
-        image: docker.io/gotenberg/gotenberg:7.6
-        ports:
-          - "3000:3000/tcp"
     env:
       # Enable Tika end to end testing
       TIKA_LIVE: 1
@@ -103,6 +94,11 @@ jobs:
         uses: actions/checkout@v3
         with:
           fetch-depth: 0
+      -
+        name: Start containers
+        run: |
+          docker compose --file ${GITHUB_WORKSPACE}/docker/compose/docker-compose.ci-test.yml pull --quiet
+          docker compose --file ${GITHUB_WORKSPACE}/docker/compose/docker-compose.ci-test.yml up --detach
       -
         name: Install pipenv
         run: |
@@ -154,6 +150,11 @@ jobs:
         run: |
           cd src/
           pipenv run coveralls --service=github
+      -
+        name: Stop containers
+        if: always()
+        run: |
+          docker compose --file ${GITHUB_WORKSPACE}/docker/compose/docker-compose.ci-test.yml down
 
   tests-frontend:
     name: "Tests Frontend"
diff --git a/docker/compose/docker-compose.ci-test.yml b/docker/compose/docker-compose.ci-test.yml
new file mode 100644 (file)
index 0000000..87bc8b7
--- /dev/null
@@ -0,0 +1,22 @@
+# docker-compose file for running paperless testing with actual gotenberg
+# and Tika containers for a more end to end test of the Tika related functionality
+# Can be used locally or by the CI to start the nessecary containers with the
+# correct networking for the tests
+
+version: "3.7"
+services:
+  gotenberg:
+    image: docker.io/gotenberg/gotenberg:7.6
+    hostname: gotenberg
+    container_name: gotenberg
+    network_mode: host
+    restart: unless-stopped
+    command:
+      - "gotenberg"
+      - "--chromium-disable-routes=true"
+  tika:
+    image: ghcr.io/paperless-ngx/tika:latest
+    hostname: tika
+    container_name: tika
+    network_mode: host
+    restart: unless-stopped