2 # Copyright 2017 Sandvine
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
16 TOPDIR
=$(shell readlink
-f .|sed
-e
's/\/descriptor-packages\/.*//')
19 TOOLS_DIR
:= $(TOPDIR
)/descriptor-packages
/tools
20 PKG_BASE_NAME
:= $(shell basename $(shell pwd
))
21 PKG_NAME
:= $(addsuffix .
tar.gz
, $(PKG_BASE_NAME
))
23 CHARM_DIR
:= $(TOPDIR
)/juju-charms
24 CHARM_SRC_DIR
:= $(CHARM_DIR
)/layers
25 CHARM_DOCKER_TAG
:= charm-tools
26 CHARM_BUILD_DIR
:= $(CHARM_DIR
)/builds
31 GEN_VNFD_PKG
:= $(TOOLS_DIR
)/gen_vnfd_pkg.sh
32 GEN_NSD_PKG
:= $(TOOLS_DIR
)/gen_nsd_pkg.sh
33 GEN_PKG
:= $(TOOLS_DIR
)/generate_descriptor_pkg.sh
34 TEST_PKG
:= $(TOOLS_DIR
)/upgrade_descriptor_version.py
35 BUILD_VNFD
:= $(shell readlink
-f .|sed
-e
's/\/.*descriptor-packages//' | grep vnfd
)
37 DEP_FILES
= $(wildcard src
/*)
40 $(BUILD_DIR
)/$(PKG_BASE_NAME
): src
43 $(Q
)$(GEN_VNFD_PKG
) $< $@
45 $(BUILD_DIR
)/$(PKG_BASE_NAME
): src
48 $(Q
)$(GEN_NSD_PKG
) $< $@
52 $(BUILD_DIR
)/$(PKG_NAME
): $(DEP_FILES
) $(CHARM_BUILD_DIR
)/$(VNFD_CHARM
)
53 $(Q
)echo
"building $(PKG_BASE_NAME) with charm $(VNFD_CHARM)"
54 $(Q
)$(MAKE
) --no-print-directory
$(BUILD_DIR
)/$(PKG_BASE_NAME
)
55 $(Q
)cp
-rf
$(CHARM_BUILD_DIR
)/$(VNFD_CHARM
) $(BUILD_DIR
)/$(PKG_BASE_NAME
)/charms
56 $(Q
)$(GEN_PKG
) --no-remove-files
-d
$(BUILD_DIR
) $(BUILD_DIR
)/$(PKG_BASE_NAME
)
58 $(BUILD_DIR
)/$(PKG_NAME
): $(DEP_FILES
)
59 $(Q
)echo
"building $(PKG_BASE_NAME) $(BUILD_DIR)"
60 $(Q
)$(MAKE
) --no-print-directory
$(BUILD_DIR
)/$(PKG_BASE_NAME
)
61 $(Q
)$(GEN_PKG
) --no-remove-files
-d
$(BUILD_DIR
) $(BUILD_DIR
)/$(PKG_BASE_NAME
)
65 $(CHARM_BUILD_DIR
)/%: $(CHARM_SRC_DIR
)/%
66 $(Q
)docker build
-q
-t
$(CHARM_DOCKER_TAG
) $(CHARM_DIR
)/.
67 $(CHARM_DIR
) $(CHARM_DOCKER_TAG
) charm-build
-o
$(CHARM_DIR
) $<
69 $(CHARM_BUILD_DIR
)/%: $(CHARM_SRC_DIR
)/%
70 $(Q
)charm-build
-o
$(CHARM_DIR
) $<
74 $(Q
)rm -rf
$(BUILD_DIR
)
75 $(Q
)rm -rf
$(CHARM_BUILD_DIR
)
78 $(Q
)echo
-n testing
$(shell readlink
-f src
/*.yaml
) " "
79 $(Q
)$(TEST_PKG
) --test src
/*.yaml