summaryrefslogtreecommitdiffstats
path: root/src/orchestrator
diff options
context:
space:
mode:
Diffstat (limited to 'src/orchestrator')
-rwxr-xr-xsrc/orchestrator/scripts/_functions.sh41
-rw-r--r--src/orchestrator/scripts/docker-compose.yml35
-rwxr-xr-xsrc/orchestrator/scripts/start-dev.sh32
3 files changed, 108 insertions, 0 deletions
diff --git a/src/orchestrator/scripts/_functions.sh b/src/orchestrator/scripts/_functions.sh
new file mode 100755
index 00000000..cba65d94
--- /dev/null
+++ b/src/orchestrator/scripts/_functions.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright 2020 Intel Corporation.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+function stop_all {
+ docker-compose kill
+ docker-compose down
+}
+
+function start_mongo {
+ docker-compose up -d mongo
+ export DATABASE_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aqf "name=mongo"))
+ export no_proxy=${no_proxy:-},${DATABASE_IP}
+ export NO_PROXY=${NO_PROXY:-},${DATABASE_IP}
+}
+
+function start_etcd {
+ docker-compose up -d etcd
+}
+
+
+function generate_config {
+cat << EOF > config.json
+{
+ "database-ip": "${DATABASE_IP}",
+ "database-type": "mongo",
+ "plugin-dir": "plugins",
+ "service-port": "9015"
+}
+EOF
+}
+
+function start_all {
+ docker-compose up -d
+}
diff --git a/src/orchestrator/scripts/docker-compose.yml b/src/orchestrator/scripts/docker-compose.yml
new file mode 100644
index 00000000..e5a1d681
--- /dev/null
+++ b/src/orchestrator/scripts/docker-compose.yml
@@ -0,0 +1,35 @@
+# Copyright 2020 Intel Corporation.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# http://www.apache.org/licenses/LICENSE-2.0
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+version: '3.0'
+
+services:
+ mongo:
+ image: mongo
+ environment:
+ - HTTP_PROXY=${HTTP_PROXY}
+ - HTTPS_PROXY=${HTTPS_PROXY}
+ - NO_PROXY=${NO_PROXY}
+ etcd:
+ image: bitnami/etcd:3
+ environment:
+ - ALLOW_NONE_AUTHENTICATION=yes
+ - HTTP_PROXY=${HTTP_PROXY}
+ - HTTPS_PROXY=${HTTPS_PROXY}
+ - NO_PROXY=${NO_PROXY}
+ volumes:
+ - etcd_data:/bitnami/etcd
+ ports:
+ - 2379:2379
+ - 2380:2380
+volumes:
+ etcd_data:
+ driver: local
diff --git a/src/orchestrator/scripts/start-dev.sh b/src/orchestrator/scripts/start-dev.sh
new file mode 100755
index 00000000..c97451a6
--- /dev/null
+++ b/src/orchestrator/scripts/start-dev.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright 2020 Intel Corporation.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+set -o errexit
+set -o nounset
+set -o pipefail
+
+source _functions.sh
+
+#
+# Start from compiled binaries to foreground. This is usable for development use.
+#
+source /etc/environment
+opath="$(git rev-parse --show-toplevel)"/src/orchestrator
+
+stop_all
+start_mongo
+start_etcd
+
+echo "Compiling source code"
+pushd $opath
+generate_config
+make all
+./orchestrator
+popd