aboutsummaryrefslogtreecommitdiffstats
path: root/deployments
diff options
context:
space:
mode:
authorBin Hu <bh526r@att.com>2018-08-28 20:09:11 +0000
committerGerrit Code Review <gerrit@onap.org>2018-08-28 20:09:11 +0000
commit88579fa6f563a3bea8c39aa98159eb54d13d44a5 (patch)
tree24697d5dd4ba3c0578bef0f33cea51465b40ec27 /deployments
parentbd3e38cf19c77e98bbd5be3e0f1f9806e0a6e331 (diff)
parenta1373742a2c3f980360e4980f3b23b0ff3480ae6 (diff)
Merge "Seed code for k8s multicloud plugin"
Diffstat (limited to 'deployments')
-rw-r--r--deployments/Dockerfile21
-rwxr-xr-xdeployments/build.sh32
-rw-r--r--deployments/docker-compose.yml41
3 files changed, 94 insertions, 0 deletions
diff --git a/deployments/Dockerfile b/deployments/Dockerfile
new file mode 100644
index 00000000..407af509
--- /dev/null
+++ b/deployments/Dockerfile
@@ -0,0 +1,21 @@
+FROM debian:jessie
+
+ARG HTTP_PROXY=${HTTP_PROXY}
+ARG HTTPS_PROXY=${HTTPS_PROXY}
+
+ENV http_proxy $HTTP_PROXY
+ENV https_proxy $HTTPS_PROXY
+ENV no_proxy $NO_PROXY
+
+ENV CSAR_DIR "/opt/csar"
+ENV KUBE_CONFIG_DIR "/opt/kubeconfig"
+ENV DATABASE_TYPE "consul"
+ENV DATABASE_IP "127.0.0.1"
+
+EXPOSE 8081
+
+WORKDIR /opt/multicloud/k8s
+ADD ./k8plugin ./
+ADD ./*.so ./
+
+CMD ["./k8plugin"]
diff --git a/deployments/build.sh b/deployments/build.sh
new file mode 100755
index 00000000..667be5f5
--- /dev/null
+++ b/deployments/build.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
+##############################################################################
+# Copyright (c) 2018 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 nounset
+set -o pipefail
+set -o xtrace
+
+function generate_binary {
+ GOPATH=$(go env GOPATH)
+ rm -f k8plugin
+ rm -f *.so
+ $GOPATH/bin/dep ensure -v
+ for plugin in deployment namespace service; do
+ CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=plugin -a -tags netgo -o ./$plugin.so ../src/k8splugin/plugins/$plugin/plugin.go
+ done
+ CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -a -tags netgo -o ./k8plugin ../src/k8splugin/cmd/main.go
+}
+
+function build_image {
+ echo "Start build docker image."
+ docker-compose build --no-cache
+}
+
+generate_binary
+build_image
diff --git a/deployments/docker-compose.yml b/deployments/docker-compose.yml
new file mode 100644
index 00000000..0d347b13
--- /dev/null
+++ b/deployments/docker-compose.yml
@@ -0,0 +1,41 @@
+# Copyright 2018 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'
+
+services:
+ multicloud-k8s:
+ image: nexus3.onap.org:10003/onap/multicloud/k8plugin
+ build:
+ context: ./
+ args:
+ - HTTP_PROXY=$HTTP_PROXY
+ - HTTPS_PROXY=$HTTPS_PROXY
+ ports:
+ - "8081:8081"
+ environment:
+ - CSAR_DIR=/opt/csar
+ - KUBE_CONFIG_DIR=/opt/kubeconfig
+ - DATABASE_TYPE=consul
+ - DATABASE_IP=consul-svr
+ depends_on:
+ - "consul"
+ volumes:
+ - /opt/csar:/opt/csar
+ - /opt/kubeconfig:/opt/kubeconfig
+ consul:
+ image: consul
+ hostname: consul-svr
+ environment:
+ - CONSUL_LOCAL_CONFIG={"datacenter":"us_west","server":true}
+ command: ["agent", "-server", "-bootstrap-expect=1"]
+ volumes:
+ - /opt/consul/config:/consul/config