Fix grafana datasource authentication in Charmed OSM
[osm/devops.git] / systest / Makefile
index 6631eb1..a5b6303 100644 (file)
@@ -26,12 +26,19 @@ OSM_HOSTNAME ?=
 OSM_RO_HOSTNAME ?=
 OS_AUTH_URL ?=
 OS_USERNAME ?=
-OS_PASSWORD_NAME ?=
+OS_PASSWORD ?=
 OS_PROJECT_NAME ?=
 VIM_CONFIG ?=
+VCD_AUTH_URL ?=
+VCD_USERNAME ?=
+VCD_PASSWORD ?=
+VCD_TENANT_NAME ?=
+VCD_ORGANIZATION ?=
+VIM_EMU ?=
 
 TOPDIR=$(shell readlink -f .|sed -e 's/systest.*//')
 
+
 ifdef OS_AUTH_URL
     OPTION_OS_AUTH_URL=--os-url $(OS_AUTH_URL)
 endif
@@ -59,9 +66,25 @@ endif
 
 ifdef VIM_CONFIG
     OPTION_VIM_CONFIG=--vim-config "$(VIM_CONFIG)"
-else
 endif
 
+ifdef VCD_AUTH_URL
+    OPTION_VCD_AUTH_URL=--vcd-url $(VCD_AUTH_URL)
+endif
+ifdef VCD_USERNAME
+    OPTION_VCD_USERNAME=--vcd-username $(VCD_USERNAME)
+endif
+ifdef VCD_PASSWORD
+    OPTION_VCD_PASSWORD=--vcd-password $(VCD_PASSWORD)
+endif
+ifdef VCD_TENANT_NAME
+    OPTION_VCD_TENANT_NAME=--vcd-tenant-name $(VCD_TENANT_NAME)
+endif
+ifdef VCD_ORGANIZATION
+    OPTION_VCD_ORGANIZATION=--vcd-org $(VCD_ORGANIZATION)
+endif
+
+
 DESCRIPTOR_DIR ?= $(TOPDIR)/descriptor-packages
 
 #TODO: Need to re-add this once charm application name length issue is resolved
@@ -94,20 +117,31 @@ check_openstack_env:
        $(call check_env_var,OS_PASSWORD)
        $(call check_env_var,OS_PROJECT_NAME)
 
-.PHONY: check_openstack_env check_OSM_HOSTNAME
+check_vcd_env:
+       $(call check_env_var,VCD_AUTH_URL)
+       $(call check_env_var,VCD_USERNAME)
+       $(call check_env_var,VCD_PASSWORD)
+       $(call check_env_var,VCD_TENANT_NAME)
+       $(call check_env_var,VCD_ORGANIZATION)
+
+.PHONY: check_openstack_env check_vcd_env check_OSM_HOSTNAME
 
 report_dir:
        @mkdir -p reports
 
 _run_test: report_dir
        -$(Q)py.test \
-        --osmhost $(OSM_HOSTNAME) \
+        --osmhost $(OSM_HOSTNAME) --sol005 \
         $(OPTION_RO_HOSTNAME) \
         $(OPTION_OS_AUTH_URL) \
         $(OPTION_OS_USERNAME) \
         $(OPTION_OS_PASSWORD) \
         $(OPTION_VIM_CONFIG) \
         $(OPTION_OS_PROJECT_NAME) \
+        $(OPTION_VCD_AUTH_URL) \
+        $(OPTION_VCD_USERNAME) \
+        $(OPTION_VCD_PASSWORD) \
+        $(OPTION_VCD_TENANT_NAME) \
         $(OPTION_TEST_VNFD_DESCRIPTORS) \
         $(OPTION_TEST_NSD_DESCRIPTORS) \
         $(OPTION_DESCRIPTOR_BUILD_DIR) \
@@ -135,17 +169,34 @@ images/cache/Fedora-x86_64-20-20131211.1-sda-pong.qcow2:
 
 # images are prefixed with 'osm/' to separate osm uploaded images from VIM installed images
 OSM_IMAGE_PREFIX ?=
+sys_path ?= $(TOPDIR)systest
 
+ifdef VIM_EMU 
+# VIM emulator does not need images pushed to glance.
+else
 ifdef OS_AUTH_URL
 images/%.qcow2 images/%.img:
        $(Q)openstack image show $(OSM_IMAGE_PREFIX)$(shell basename $@) || \
           sh -c "make images/cache/$(shell basename $@) && openstack image create --file images/cache/$(shell basename $@) $(OSM_IMAGE_PREFIX)$(shell basename $@)"
+endif
+endif
+
+ifdef VCD_AUTH_URL
+images/%.img:
+       ovf_converter images/cache/$(OSM_IMAGE_PREFIX)$(shell basename $@) -n cirros
+       python $(TOPDIR)tools/vmware_ovf_upload.py $(VCD_AUTH_URL) $(VCD_USERNAME) $(VCD_PASSWORD) $(VCD_ORGANIZATION) $(sys_path)/images/cache/cirros.ovf
 else
 images/%.img:
        echo "No method selected to upload image to VIM"
 endif
 
-cirros: check_OSM_HOSTNAME check_openstack_env \
+%.openstack: check_openstack_env
+       $(Q)$(MAKE) $*
+
+%.vcd: check_vcd_env
+       $(Q)$(MAKE) $*
+
+cirros: check_OSM_HOSTNAME \
         $(DESCRIPTOR_DIR)/vnfd/cirros_vnf/build/cirros_vnf.tar.gz \
         $(DESCRIPTOR_DIR)/nsd/cirros_ns/build/cirros_ns.tar.gz \
         images/cirros-0.3.5-x86_64-disk.img
@@ -155,7 +206,7 @@ cirros: check_OSM_HOSTNAME check_openstack_env \
         JUNITXML=pytest-$@.xml \
         PYTEST_OPTIONS="$(PYTEST_OPTIONS) -m vnf" _run_test
 
-ns_scale: check_OSM_HOSTNAME check_openstack_env \
+ns_scale: check_OSM_HOSTNAME \
         $(DESCRIPTOR_DIR)/vnfd/cirros_vnf/build/cirros_vnf.tar.gz \
         $(DESCRIPTOR_DIR)/nsd/cirros_ns/build/cirros_ns.tar.gz \
         images/cirros-0.3.5-x86_64-disk.img
@@ -165,10 +216,14 @@ ns_scale: check_OSM_HOSTNAME check_openstack_env \
         JUNITXML=pytest-$@.xml \
         PYTEST_OPTIONS="$(PYTEST_OPTIONS) -m ns_scale" _run_test
 
-smoke: check_OSM_HOSTNAME
+smoke: check_OSM_HOSTNAME \
+        $(DESCRIPTOR_DIR)/vnfd/cirros_vnf/build/cirros_vnf.tar.gz \
+        $(DESCRIPTOR_DIR)/nsd/cirros_ns/build/cirros_ns.tar.gz
        $(Q)$(MAKE) \
         JUNITXML=pytest-$@.xml \
-        PYTEST_OPTIONS="$(PYTEST_OPTIONS) -m smoke" _run_test
+        PYTEST_OPTIONS="$(PYTEST_OPTIONS) -m smoke" _run_test \
+        TEST_VNFD_DESCRIPTORS=$(DESCRIPTOR_DIR)/vnfd/cirros_vnf/build/cirros_vnf.tar.gz \
+        TEST_NSD_DESCRIPTORS=$(DESCRIPTOR_DIR)/nsd/cirros_ns/build/cirros_ns.tar.gz
 
 vim: check_OSM_HOSTNAME check_openstack_env
        $(Q)$(MAKE) \
@@ -196,4 +251,8 @@ ping_pong: check_OSM_HOSTNAME check_openstack_env \
         JUNITXML=pytest-$@.xml \
         PYTEST_OPTIONS="$(PYTEST_OPTIONS) -m vnf" _run_test
 
-.PHONY: report_dir cirros vim smoke ping_pong
+stage_4_tests = cirros
+
+openstack_stage_4: $(stage_4_tests)
+
+.PHONY: report_dir cirros vim smoke ping_pong openstack_stage_4 stage_4_tests