| #! /bin/bash |
| |
| set -e |
| set -x |
| |
| SOURCE_DIR=@CMAKE_CURRENT_SOURCE_DIR@ |
| BINARY_DIR=@CMAKE_CURRENT_BINARY_DIR@ |
| PROJECT_TOP_DIR=@PROJECT_TOP_DIR@ |
| QCOW_IMAGE=${RIFT_ROOT}/images/Fedora-x86_64-20-20131211.1-sda.qcow2 |
| RIFT_QCOW_IMAGE=${RIFT_ROOT}/images/Fedora-x86_64-20-20131211.1-sda.qcow2 |
| PONG_QCOW_IMAGE=${RIFT_ROOT}/images/Fedora-x86_64-20-20131211.1-sda-pong.qcow2 |
| PING_QCOW_IMAGE=${RIFT_ROOT}/images/Fedora-x86_64-20-20131211.1-sda-ping.qcow2 |
| |
| # These paths are needed for finding the overrides and so files |
| PYTHONPATH=@RIFT_SUBMODULE_SOURCE_ROOT@/rwvcs/ra:@RIFT_SUBMODULE_BINARY_ROOT@/models/plugins/yang:${PYTHONPATH} |
| PYTHON3PATH=@RIFT_SUBMODULE_SOURCE_ROOT@/rwvcs/ra:@RIFT_SUBMODULE_BINARY_ROOT@/models/plugins/yang:${PYTHON3PATH} |
| LD_LIBRARY_PATH=@RIFT_SUBMODULE_BINARY_ROOT@/models/plugins/yang:@RIFT_SUBMODULE_BINARY_ROOT@/common/plugins/yang:${LD_LIBRARY_PATH} |
| |
| #Rift Logos |
| PING_VNFD_LOGO=${SOURCE_DIR}/rift_logo.png |
| PONG_VNFD_LOGO=${SOURCE_DIR}/rift_logo.png |
| PING_PONG_NSD_LOGO=${SOURCE_DIR}/rift_logo.png |
| |
| # Remove any old directories |
| rm -rf ${BINARY_DIR}/ping_vnfd |
| rm -rf ${BINARY_DIR}/pong_vnfd |
| rm -rf ${BINARY_DIR}/ping_pong_nsd |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_with_image |
| rm -rf ${BINARY_DIR}/pong_vnfd_with_image |
| |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_aws |
| rm -rf ${BINARY_DIR}/pong_vnfd_aws |
| rm -rf ${BINARY_DIR}/ping_pong_nsd_aws |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_with_epa |
| rm -rf ${BINARY_DIR}/pong_vnfd_with_epa |
| rm -rf ${BINARY_DIR}/ping_pong_nsd_with_epa |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_with_vca |
| rm -rf ${BINARY_DIR}/pong_vnfd_with_vca |
| rm -rf ${BINARY_DIR}/ping_pong_nsd_with_vca |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_with_vip |
| rm -rf ${BINARY_DIR}/pong_vnfd_with_vip |
| rm -rf ${BINARY_DIR}/ping_pong_nsd_with_vip |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_with_scaling |
| rm -rf ${BINARY_DIR}/pong_vnfd_with_scaling |
| rm -rf ${BINARY_DIR}/ping_pong_nsd_with_scaling |
| |
| rm -rf ${BINARY_DIR}/ping_vnfd_with_vnf_input_parameters |
| rm -rf ${BINARY_DIR}/pong_vnfd_with_vnf_input_parameters |
| rm -rf ${BINARY_DIR}/ping_pong_nsd_with_vnf_input_parameters |
| |
| |
| # Generate image md5sum |
| ping_md5sum="$(md5sum ${PING_QCOW_IMAGE} | cut -f1 -d" ")" |
| pong_md5sum="$(md5sum ${PONG_QCOW_IMAGE} | cut -f1 -d" ")" |
| |
| # Generate the descriptors (in various formats) |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR} --format=yaml --ping-image-md5=${ping_md5sum} --pong-image-md5=${pong_md5sum} --pong-cloud-init=pong_cloud_init.cfg --ping-cloud-init=ping_cloud_init.cfg |
| |
| |
| # create directories for packages with images |
| cp -r ${BINARY_DIR}/ping_vnfd ${BINARY_DIR}/ping_vnfd_with_image |
| cp -r ${BINARY_DIR}/pong_vnfd ${BINARY_DIR}/pong_vnfd_with_image |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_image/images |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_image/images |
| ### Generate descriptors for AWS |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR}/aws --format=yaml --aws |
| |
| ### Move the generated artifacts to appropriate directories |
| mv ${BINARY_DIR}/aws/ping_vnfd ${BINARY_DIR}/ping_vnfd_aws |
| mv ${BINARY_DIR}/aws/pong_vnfd ${BINARY_DIR}/pong_vnfd_aws |
| mv ${BINARY_DIR}/aws/ping_pong_nsd ${BINARY_DIR}/ping_pong_nsd_aws |
| |
| ### ReMove the original directories |
| rm -rf ${BINARY_DIR}/aws |
| |
| ### Generate descriptors for VNF Input Parameters |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR}/vnf_input_parameters --format=yaml --ping-image-md5=${ping_md5sum} --pong-image-md5=${pong_md5sum} --pong-cloud-init=pong_cloud_init.cfg --ping-cloud-init=ping_cloud_init.cfg --vnf-input-parameter |
| |
| ### Move the generated artifacts to appropriate directories |
| mv ${BINARY_DIR}/vnf_input_parameters/ping_vnfd ${BINARY_DIR}/ping_vnfd_with_vnf_input_parameters |
| mv ${BINARY_DIR}/vnf_input_parameters/pong_vnfd ${BINARY_DIR}/pong_vnfd_with_vnf_input_parameters |
| mv ${BINARY_DIR}/vnf_input_parameters/ping_pong_nsd ${BINARY_DIR}/ping_pong_nsd_with_vnf_input_parameters |
| |
| ### ReMove the original directories |
| rm -rf ${BINARY_DIR}/vnf_input_parameters |
| |
| ### Generate descriptors with EPA |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR}/with_epa --format=yaml --epa --ping-image-md5=${ping_md5sum} --pong-image-md5=${pong_md5sum} |
| |
| ### Move the generated artifacts to appropriate directories |
| mv ${BINARY_DIR}/with_epa/ping_vnfd ${BINARY_DIR}/ping_vnfd_with_epa |
| mv ${BINARY_DIR}/with_epa/pong_vnfd ${BINARY_DIR}/pong_vnfd_with_epa |
| mv ${BINARY_DIR}/with_epa/ping_pong_nsd ${BINARY_DIR}/ping_pong_nsd_with_epa |
| |
| ### ReMove the original directories |
| rm -rf ${BINARY_DIR}/with_epa |
| |
| ### Generate descriptors with VCA conf |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR}/with_vca --format=yaml --vca_conf --ping-image-md5=${ping_md5sum} --pong-image-md5=${pong_md5sum} |
| |
| ### Move the generated artifacts to appropriate directories |
| mv ${BINARY_DIR}/with_vca/ping_vnfd ${BINARY_DIR}/ping_vnfd_with_vca |
| mv ${BINARY_DIR}/with_vca/pong_vnfd ${BINARY_DIR}/pong_vnfd_with_vca |
| mv ${BINARY_DIR}/with_vca/ping_pong_nsd ${BINARY_DIR}/ping_pong_nsd_with_vca |
| |
| ### ReMove the original directories |
| rm -rf ${BINARY_DIR}/with_vca |
| |
| ### Generate descriptors with Virtual-IP |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR}/with_vip --format=yaml --virtual-ip --ping-image-md5=${ping_md5sum} --pong-image-md5=${pong_md5sum} |
| |
| ### Move the generated artifacts to appropriate directories |
| mv ${BINARY_DIR}/with_vip/ping_vnfd ${BINARY_DIR}/ping_vnfd_with_vip |
| mv ${BINARY_DIR}/with_vip/pong_vnfd ${BINARY_DIR}/pong_vnfd_with_vip |
| mv ${BINARY_DIR}/with_vip/ping_pong_nsd ${BINARY_DIR}/ping_pong_nsd_with_vip |
| |
| ### ReMove the original directories |
| rm -rf ${BINARY_DIR}/with_vip |
| |
| ### Generate descriptors with scaling |
| ${SOURCE_DIR}/ping_pong_nsd.py --outdir=${BINARY_DIR}/with_scaling --format=yaml --scale --ping-image-md5=${ping_md5sum} --pong-image-md5=${pong_md5sum} |
| |
| ### Move the generated artifacts to appropriate directories |
| mv ${BINARY_DIR}/with_scaling/ping_vnfd ${BINARY_DIR}/ping_vnfd_with_scaling |
| mv ${BINARY_DIR}/with_scaling/pong_vnfd ${BINARY_DIR}/pong_vnfd_with_scaling |
| mv ${BINARY_DIR}/with_scaling/ping_pong_nsd ${BINARY_DIR}/ping_pong_nsd_with_scaling |
| |
| ### ReMove the original directories |
| rm -rf ${BINARY_DIR}/with_scaling |
| |
| |
| # copy a dummy image for now |
| if [ -e ${PING_QCOW_IMAGE} ]; then |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_image/icons |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_with_image/icons/ |
| |
| cp ${PING_QCOW_IMAGE} ${BINARY_DIR}/ping_vnfd_with_image/images/ |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_with_image |
| else |
| echo >&2 "Warn: Skipped creating ping_vnfd_with_image due to missing image: ${PING_QCOW_IMAGE}" |
| fi |
| |
| if [ -e ${PONG_QCOW_IMAGE} ]; then |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_image/icons |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_with_image/icons/ |
| |
| cp ${PONG_QCOW_IMAGE} ${BINARY_DIR}/pong_vnfd_with_image/images/ |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_with_image |
| else |
| echo >&2 "Warn: Skipped creating pong_vnfd_with_image due to missing image: ${PONG_QCOW_IMAGE}" |
| fi |
| |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/ping_vnfd/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd/icons/ |
| |
| # Generate the tar files |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd |
| |
| |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/ping_vnfd_aws/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd_aws/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd_aws/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_aws/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_aws/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd_aws/icons/ |
| |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_aws |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_aws |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd_aws |
| |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_vnf_input_parameters/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_vnf_input_parameters/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd_with_vnf_input_parameters/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_with_vnf_input_parameters/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_with_vnf_input_parameters/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd_with_vnf_input_parameters/icons/ |
| |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_with_vnf_input_parameters |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_with_vnf_input_parameters |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd_with_vnf_input_parameters |
| |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_epa/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_epa/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd_with_epa/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_with_epa/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_with_epa/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd_with_epa/icons/ |
| |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_with_epa |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_with_epa |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd_with_epa |
| |
| # Add RIFT Logos |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_vca/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_vca/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd_with_vca/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_with_vca/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_with_vca/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd_with_vca/icons/ |
| |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_with_vca |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_with_vca |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd_with_vca |
| |
| |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_vip/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_vip/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd_with_vip/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_with_vip/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_with_vip/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd_with_vip/icons/ |
| |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_with_vip |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_with_vip |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd_with_vip |
| |
| mkdir -p ${BINARY_DIR}/ping_vnfd_with_scaling/icons |
| mkdir -p ${BINARY_DIR}/pong_vnfd_with_scaling/icons |
| mkdir -p ${BINARY_DIR}/ping_pong_nsd_with_scaling/icons |
| |
| cp ${PING_VNFD_LOGO} ${BINARY_DIR}/ping_vnfd_with_scaling/icons/ |
| cp ${PONG_VNFD_LOGO} ${BINARY_DIR}/pong_vnfd_with_scaling/icons/ |
| cp ${PING_PONG_NSD_LOGO} ${BINARY_DIR}/ping_pong_nsd_with_scaling/icons/ |
| |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_vnfd_with_scaling |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} pong_vnfd_with_scaling |
| ${RIFT_INSTALL}/usr/rift/toolchain/cmake/bin/generate_descriptor_pkg.sh ${BINARY_DIR} ping_pong_nsd_with_scaling |