From 6687fd02260466dae620f7cca816e7771fe2a83b Mon Sep 17 00:00:00 2001
From: Vincent SELLIER <vincent.sellier@softwareheritage.org>
Date: Thu, 21 Jan 2021 11:42:08 +0100
Subject: [PATCH] scheduler: deploy journal client service

Related to T2978
---
 docker/conf/scheduler_journal_client.yml        |  7 +++++++
 docker/docker-compose.yml                       | 14 +++++++++++++-
 .../swh-scheduler-journal-client/entrypoint.sh  | 17 +++++++++++++++++
 3 files changed, 37 insertions(+), 1 deletion(-)
 create mode 100644 docker/conf/scheduler_journal_client.yml
 create mode 100755 docker/services/swh-scheduler-journal-client/entrypoint.sh

diff --git a/docker/conf/scheduler_journal_client.yml b/docker/conf/scheduler_journal_client.yml
new file mode 100644
index 0000000..ceb91a4
--- /dev/null
+++ b/docker/conf/scheduler_journal_client.yml
@@ -0,0 +1,7 @@
+journal:
+  brokers:
+    - kafka
+  group_id: swh.scheduler.journal_client
+scheduler:
+  cls: remote
+  url: http://swh-scheduler:5008/
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index f21aa79..1a3cc06 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -391,7 +391,6 @@ services:
       - "./services/swh-indexer-worker/entrypoint.sh:/entrypoint.sh:ro"
 
 # Journal related
-
   swh-indexer-journal-client:
     image: swh/stack
     build: ./
@@ -405,3 +404,16 @@ services:
     volumes:
       - "./conf/indexer_journal_client.yml:/etc/softwareheritage/indexer/journal_client.yml:ro"
       - "./services/swh-indexer-journal-client/entrypoint.sh:/entrypoint.sh:ro"
+
+  swh-scheduler-journal-client:
+    image: swh/stack
+    build: ./
+    entrypoint: /entrypoint.sh
+    env_file:
+      - ./env/common_python.env
+    depends_on:
+      - kafka
+      - swh-scheduler
+    volumes:
+      - "./conf/scheduler_journal_client.yml:/etc/softwareheritage/scheduler/journal_client.yml:ro"
+      - "./services/swh-scheduler-journal-client/entrypoint.sh:/entrypoint.sh:ro"
diff --git a/docker/services/swh-scheduler-journal-client/entrypoint.sh b/docker/services/swh-scheduler-journal-client/entrypoint.sh
new file mode 100755
index 0000000..53249d2
--- /dev/null
+++ b/docker/services/swh-scheduler-journal-client/entrypoint.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+set -e
+
+source /srv/softwareheritage/utils/pyutils.sh
+setup_pip
+
+case "$1" in
+    "shell")
+      exec bash -i
+      ;;
+    *)
+      echo "Starting swh-scheduler-journal client"
+      exec wait-for-it kafka:9092 -s --timeout=0 -- \
+          swh --log-level DEBUG scheduler --config-file /etc/softwareheritage/scheduler/journal_client.yml journal-client
+      ;;
+esac
-- 
GitLab