diff options
author | priyanshu <pagarwal@amdocs.com> | 2018-07-16 19:25:05 +0530 |
---|---|---|
committer | priyanshu <pagarwal@amdocs.com> | 2018-07-16 19:25:07 +0530 |
commit | 7e78cd19bbb2b0730fafc0b328a71c69f5730e16 (patch) | |
tree | 24b4b72ef67f64304bfee867076517c37896db5b /workflow/workflow-designer-init/src | |
parent | 39c01dd3ccb69f53d2e9350994e25f6e64412aa4 (diff) |
Workflow Docker containers
1. Implemented workflow init container.
2. Implemented workflow backend container.
3. Added a placeholder for frontend module container.
4. Modifiled directory structure and POM files.
5. Added a ReadMe with sample commands to detail how to run the containers.
Change-Id: Ib110fcc104ce72ff28fce514a1475a032cc2d82b
Issue-ID: SDC-1482
Signed-off-by: priyanshu <pagarwal@amdocs.com>
Signed-off-by: vempo <vitaliy.emporopulo@amdocs.com>
Signed-off-by: priyanshu <pagarwal@amdocs.com>
Diffstat (limited to 'workflow/workflow-designer-init/src')
3 files changed, 153 insertions, 0 deletions
diff --git a/workflow/workflow-designer-init/src/main/docker/Dockerfile b/workflow/workflow-designer-init/src/main/docker/Dockerfile new file mode 100644 index 00000000..75e7efdc --- /dev/null +++ b/workflow/workflow-designer-init/src/main/docker/Dockerfile @@ -0,0 +1,10 @@ +FROM alpine:3.7 + +RUN apk add --no-cache 'python<3' py-pip && pip install cqlsh==4.0.1 + +COPY create_workflow_db.cql . +COPY start.sh . + +RUN chmod 744 start.sh + +ENTRYPOINT ["./start.sh"]
\ No newline at end of file diff --git a/workflow/workflow-designer-init/src/main/docker/create_workflow_db.cql b/workflow/workflow-designer-init/src/main/docker/create_workflow_db.cql new file mode 100644 index 00000000..c6c1f15e --- /dev/null +++ b/workflow/workflow-designer-init/src/main/docker/create_workflow_db.cql @@ -0,0 +1,125 @@ +CREATE KEYSPACE IF NOT EXISTS WORKFLOW +WITH DURABLE_WRITES = TRUE +AND REPLICATION = { + 'class' : 'SimpleStrategy', + 'replication_factor' : 1 +}; + +USE WORKFLOW; + +CREATE TABLE IF NOT EXISTS UNIQUE_VALUE ( + TYPE TEXT, + VALUE TEXT, + PRIMARY KEY (( TYPE, VALUE )) +); + +CREATE KEYSPACE IF NOT EXISTS ZUSAMMEN_WORKFLOW +WITH REPLICATION = { + 'class' : 'SimpleStrategy', + 'replication_factor' : 1 +}; + +USE ZUSAMMEN_WORKFLOW; + +CREATE TABLE IF NOT EXISTS ITEM ( + ITEM_ID TEXT PRIMARY KEY, + ITEM_INFO TEXT, + CREATION_TIME TIMESTAMP, + MODIFICATION_TIME TIMESTAMP +); + +CREATE TABLE IF NOT EXISTS VERSION ( + SPACE TEXT, + ITEM_ID TEXT, + VERSION_ID TEXT, + BASE_VERSION_ID TEXT, + INFO TEXT, + RELATIONS TEXT, + CREATION_TIME TIMESTAMP, + MODIFICATION_TIME TIMESTAMP, + PRIMARY KEY (( SPACE, ITEM_ID ), VERSION_ID) +); + +CREATE TABLE IF NOT EXISTS VERSION_ELEMENTS ( + SPACE TEXT, + ITEM_ID TEXT, + VERSION_ID TEXT, + REVISION_ID TEXT, + ELEMENT_IDS MAP<TEXT, TEXT>, + DIRTY_ELEMENT_IDS SET<TEXT>, + STAGE_ELEMENT_IDS SET<TEXT>, + CONFLICT_ELEMENT_IDS SET<TEXT>, + PUBLISH_TIME TIMESTAMP, + USER TEXT, + MESSAGE TEXT, + PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID ), REVISION_ID) +); + +CREATE TABLE IF NOT EXISTS ELEMENT_NAMESPACE ( + ITEM_ID TEXT, + ELEMENT_ID TEXT, + NAMESPACE TEXT, + PRIMARY KEY (( ITEM_ID, ELEMENT_ID )) +); + +CREATE TABLE IF NOT EXISTS ELEMENT ( + SPACE TEXT, + ITEM_ID TEXT, + VERSION_ID TEXT, + ELEMENT_ID TEXT, + REVISION_ID TEXT, + PARENT_ID TEXT, + NAMESPACE TEXT, + INFO TEXT, + RELATIONS TEXT, + DATA BLOB, + SEARCHABLE_DATA BLOB, + VISUALIZATION BLOB, + SUB_ELEMENT_IDS SET<TEXT>, + ELEMENT_HASH TEXT, + PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID, ELEMENT_ID ), REVISION_ID) +); + +CREATE TABLE IF NOT EXISTS ELEMENT_SYNCHRONIZATION_STATE ( + SPACE TEXT, + ITEM_ID TEXT, + VERSION_ID TEXT, + ELEMENT_ID TEXT, + REVISION_ID TEXT, + PUBLISH_TIME TIMESTAMP, + DIRTY BOOLEAN, + PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID ), ELEMENT_ID, REVISION_ID) +); + +CREATE TABLE IF NOT EXISTS ELEMENT_STAGE ( + SPACE TEXT, + ITEM_ID TEXT, + VERSION_ID TEXT, + ELEMENT_ID TEXT, + PARENT_ID TEXT, + NAMESPACE TEXT, + INFO TEXT, + RELATIONS TEXT, + DATA BLOB, + SEARCHABLE_DATA BLOB, + VISUALIZATION BLOB, + SUB_ELEMENT_IDS SET<TEXT>, + ELEMENT_HASH TEXT, + PUBLISH_TIME TIMESTAMP, + ACTION TEXT, + CONFLICTED BOOLEAN, + CONFLICT_DEPENDENT_IDS SET<TEXT>, + PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID, ELEMENT_ID )) +); + +CREATE TABLE IF NOT EXISTS VERSION_STAGE ( + SPACE TEXT, + ITEM_ID TEXT, + VERSION_ID TEXT, + BASE_VERSION_ID TEXT, + CREATION_TIME TIMESTAMP, + MODIFICATION_TIME TIMESTAMP, + PUBLISH_TIME TIMESTAMP, + ACTION TEXT, + PRIMARY KEY (( SPACE, ITEM_ID ), VERSION_ID) +);
\ No newline at end of file diff --git a/workflow/workflow-designer-init/src/main/docker/start.sh b/workflow/workflow-designer-init/src/main/docker/start.sh new file mode 100644 index 00000000..ac89d6c0 --- /dev/null +++ b/workflow/workflow-designer-init/src/main/docker/start.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +if [[ -z "${CS_USER}" ]]; then + echo "CS_USER environment variable must be set" + exit 1 +fi + +if [[ -z "${CS_PASSWORD}" ]]; then + echo "CS_PASSWORD environment variable must be set" + exit 1 +fi + +if [[ -z "${CS_HOST}" ]]; then + echo "CS_HOST environment variable must be set" + exit 1 +fi + +cqlsh -u ${CS_USER} -p ${CS_PASSWORD} -f /create_workflow_db.cql ${CS_HOST} ${CS_PORT} |