summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Morales <victor.morales@intel.com>2018-09-04 15:58:56 +0000
committerGerrit Code Review <gerrit@onap.org>2018-09-04 15:58:56 +0000
commit6e2857125fdce17a1541f3ca45ee0b988e9ef4de (patch)
treea8ee559dd73c9c330894ffe807ea13c98e575dbe
parent28376cbc428324577451181f67f383ea9d8de164 (diff)
parentb3eb398fef49293156658e6f9e09a78eaca45c51 (diff)
Merge "Update building process"
-rwxr-xr-xdeployments/build.sh33
-rw-r--r--deployments/docker-compose.yml2
-rw-r--r--src/k8splugin/Makefile17
3 files changed, 28 insertions, 24 deletions
diff --git a/deployments/build.sh b/deployments/build.sh
index 7c2d7379..a88ebbc7 100755
--- a/deployments/build.sh
+++ b/deployments/build.sh
@@ -10,25 +10,20 @@
set -o nounset
set -o pipefail
-set -o xtrace
-function generate_binary {
- export GOPATH="$(pwd)/../"
- rm -f k8plugin
- rm -f *.so
- pushd ../src/k8splugin/
- dep ensure -v
- popd
- 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
-}
+k8s_path="$(git rev-parse --show-toplevel)"
-function build_image {
- echo "Start build docker image."
- docker-compose build --no-cache
-}
+echo "Compiling source code"
+pushd $k8s_path/src/k8splugin/
+make
+popd
-generate_binary
-build_image
+pushd $k8s_path/deployments
+for file in k8plugin *so; do
+ rm -f $file
+ mv $k8s_path/src/k8splugin/$file .
+done
+
+echo "Starting docker building process"
+docker-compose build --no-cache
+popd
diff --git a/deployments/docker-compose.yml b/deployments/docker-compose.yml
index 0d347b13..6ae7b4ea 100644
--- a/deployments/docker-compose.yml
+++ b/deployments/docker-compose.yml
@@ -9,7 +9,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-version: '3'
+version: '2'
services:
multicloud-k8s:
diff --git a/src/k8splugin/Makefile b/src/k8splugin/Makefile
index 586eca9c..3aa8223f 100644
--- a/src/k8splugin/Makefile
+++ b/src/k8splugin/Makefile
@@ -16,11 +16,20 @@ export GOPATH ...
.PHONY: plugins
-build: clean dep plugins tests
-deploy: clean dep plugins build_binary tests
-build_binary:
- CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -a -tags netgo -ldflags '-w' -o ./k8plugin ./cmd/main.go
+all: clean dep
+ CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=plugin -a -tags netgo -o ./deployment.so ./plugins/deployment/plugin.go
+ CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=plugin -a -tags netgo -o ./namespace.so ./plugins/namespace/plugin.go
+ CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -buildmode=plugin -a -tags netgo -o ./service.so ./plugins/service/plugin.go
+
+ CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -a -tags netgo -o ./k8plugin ./cmd/main.go
+
+# The following is done this way as each patch on CI runs build and each merge runs deploy. So for build we don't need to build binary and hence
+# no need to create a static binary with additional flags. However, for generating binary, additional build flags are necessary. This if used with
+# mock plugin errors out for unit tests. So the seperation avoids the error.
+
+build: clean dep plugins tests
+deploy: build
tests:
go test -v ./... -cover