Playbook for deploying Kalamar-Plugin-ExternalResources

Change-Id: Ia6b570af174990bd5d2f173d6769743aaa1fccd0
diff --git a/deploy-kalamar-plugin-externalresources.yml b/deploy-kalamar-plugin-externalresources.yml
new file mode 100644
index 0000000..549607e
--- /dev/null
+++ b/deploy-kalamar-plugin-externalresources.yml
@@ -0,0 +1,47 @@
+- name: Deploy Kalamar-Plugin-ExternalResources to Test instance
+  hosts:
+    test-instance
+  user: korap
+  serial: 1
+  tasks:
+    - name: Save docker image
+      local_action: ansible.builtin.command docker save korap/kalamar-plugin-externalresources:latest -o ./kalamar-plugin-externalresources-latest.tar
+    - name: Copy docker image to hosts
+      ansible.builtin.copy:
+        src: ./kalamar-plugin-externalresources-latest.tar
+        dest: /opt/korap/instance-test/Kalamar-External/kalamar-plugin-externalresources-latest.tar
+        mode: '0644'
+    - name: Load docker image on host
+      ansible.builtin.command: docker load -i /opt/korap/instance-test/Kalamar-External/kalamar-plugin-externalresources-latest.tar
+    - name: Get UID for KorAP user
+      getent:
+        database: passwd
+        key: korap
+    - name: Gracefully stop and remove old docker container, if existing
+      community.docker.docker_container:
+        state: "absent"
+        name: kalamar-plugin-externalresources-test
+        recreate: true
+        keep_volumes: true
+        comparisons:
+          image: ignore   # do not restart containers with older versions of the image
+    - name: Restart docker container
+      community.docker.docker_container:
+        image: korap/kalamar-plugin-externalresources:latest
+        restart_policy: "unless-stopped"
+        pull: false
+        name: kalamar-plugin-externalresources-test
+        user: "{{ ansible_facts.getent_passwd[\"korap\"].1 }}"
+        init: true
+        detach: true
+        mounts:
+          - type: bind
+            source: "/opt/korap/instance-test/Kalamar-External/db"
+            target: "/db"
+          - type: bind
+            source: "/opt/korap/instance-test/Kalamar-External/.env"
+            target: "/.env"
+        ports:
+          - "5722:5722"
+        comparisons:
+          image: ignore   # do not restart containers with older versions of the image
diff --git a/inventory b/inventory
index 82a4be4..785727d 100644
--- a/inventory
+++ b/inventory
@@ -1,6 +1,12 @@
 [korap]
 10.0.10.55
 
+[main-instance]
+10.0.10.51
+
+[test-instance]
+10.0.10.52
+
 [krawfish]
 10.0.10.57
 10.0.10.58
@@ -10,4 +16,10 @@
 ansible_python_interpreter=/usr/bin/python3
 
 [korap:vars]
-ansible_python_interpreter=/usr/bin/python3
\ No newline at end of file
+ansible_python_interpreter=/usr/bin/python3
+
+[main-instance:vars]
+ansible_python_interpreter=/usr/bin/python3
+
+[test-instance:vars]
+ansible_python_interpreter=/usr/bin/python3