diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/orchestrator/scripts/_functions.sh | 41 | ||||
-rw-r--r-- | src/orchestrator/scripts/docker-compose.yml | 35 | ||||
-rwxr-xr-x | src/orchestrator/scripts/start-dev.sh | 32 |
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 |