X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=jenkins%2FSO%2Finstall;h=494491aadd5a26db456b1e639a48e434eb2d89cf;hb=fd18c947f3726090ed6cd8020410352cfe1b7729;hp=0c8f0b5206c36664e35665f934b0fa1b7492ac1b;hpb=6a3a1a7f73ef62b4969dffba44b7ea07e13212d4;p=osm%2Fdevops.git diff --git a/jenkins/SO/install b/jenkins/SO/install index 0c8f0b52..494491aa 100755 --- a/jenkins/SO/install +++ b/jenkins/SO/install @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# +# # Copyright 2017 RIFT.IO Inc # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -16,107 +16,101 @@ # # Author(s): Jeremy Mordkoff # Creation Date: 26 April 2017 -# +# # # INSTALL.sh # install launchpad SO and all of its dependencies # +HERE=$(realpath $(dirname $0)) +OSM_JENKINS=$(dirname $HERE) +. $OSM_JENKINS/common/install_common + # Defensive bash programming flags set -o errexit # Exit on any error trap 'echo ERROR: Command failed: \"$BASH_COMMAND\"' ERR set -o nounset # Expanding an unset variable is an error. Variables must be # set before they can be used. -if [ $# -gt 0 ]; then - case "$1" in - -h|--help) - echo - echo "NAME:" - echo " $0" - echo - echo "SYNOPSIS:" - echo " $0 -h|--help" - echo " $0 [PLATFORM_REPOSITORY] [PLATFORM_VERSION]" - echo - echo "DESCRIPTION:" - echo " Prepare current system to run SO and UI." - echo - echo " PLATFORM_REPOSITORY (optional): name of the RIFT.ware repository." - echo " PLATFORM_VERSION (optional): version of the platform packages to be installed." - echo - exit 0;; - esac -fi - - ############################################################################### # Set up repo and version +PLATFORM_REPOSITORY=OSM +PLATFORM_VERSION=5.2.0.0.71033 -PLATFORM_REPOSITORY=${1:-OSM} -PLATFORM_VERSION=${2:-4.4.2.1.60497} +while getopts ":P:V:h" o; do + case "${o}" in + P) + PLATFORM_REPOSITORY=${OPTARG} + ;; + V) + PLATFORM_VERSION=${OPTARG} + ;; + h) + usage + exit 0 + ;; + *) + usage + exit 1 + ;; + esac +done -############################################################################### -# Main block +function usage() { + echo + echo "NAME:" + echo " $0" + echo + echo "SYNOPSIS:" + echo " $0 -h|--help" + echo " $0 -P -V " + echo + echo "DESCRIPTION:" + echo " Prepare current system to run SO and UI." + echo + echo " PLATFORM_REPOSITORY (optional): name of the RIFT.ware repository." + echo " PLATFORM_VERSION (optional): version of the platform packages to be installed." + echo +} -# Disable apt-daily.service and apt-daily.timer -DAILY_TIMER='apt-daily.timer' -DAILY_SERVICE='apt-daily.service' -if [ $(systemctl is-active $DAILY_TIMER) = "active" ] -then - systemctl stop $DAILY_TIMER - systemctl disable $DAILY_TIMER - systemctl disable $DAILY_SERVICE -fi +############################################################################### +# Main block # enable the right repos curl http://repos.riftio.com/public/xenial-riftware-public-key | apt-key add - -curl -o /etc/apt/sources.list.d/RIFT.list http://buildtracker.riftio.com/repo_file/ub16/${PLATFORM_REPOSITORY}/ +curl -o /etc/apt/sources.list.d/RIFT.list http://buildtracker.riftio.com/repo_file/ub16/${PLATFORM_REPOSITORY}/ + +# Make the Rift repo a higher priority to work around version conflicts. +cat < /etc/apt/preferences.d/rift +Package: * +Pin: origin repos.riftio.com +Pin-Priority: 600 +EOF + apt-get update - + # and install the tools apt remove -y rw.toolchain-rwbase tcpdump -apt-get install -y --allow-downgrades rw.tools-container-tools=${PLATFORM_VERSION} rw.tools-scripts=${PLATFORM_VERSION} python -/usr/rift/container_tools/mkcontainer --modes ext --modes platform --rw-version ${PLATFORM_VERSION} -pip3 install lxml==3.4.0 +apt-get install -y --allow-downgrades rw.tools-container-tools=${PLATFORM_VERSION} rw.tools-scripts=${PLATFORM_VERSION} python +/usr/rift/container_tools/mkcontainer --modes MANO-base --rw-version ${PLATFORM_VERSION} - -chmod 777 /usr/rift /usr/rift/usr/share - -# now disable the RIFT OSM repo so that we'll get MANO from +# now disable the RIFT OSM repo so that we'll get MANO from # the OSM repos -rm -f /etc/apt/sources.list.d/RIFT.list -curl https://osm-download.etsi.org/repository/osm/debian/ReleaseTWO/OSM%20ETSI%20Release%20Key.gpg |apt-key add - -add-apt-repository -y "deb https://osm-download.etsi.org/repository/osm/debian/ReleaseTWO stable SO UI RO openvim" +rm -f /etc/apt/sources.list.d/RIFT.list + apt-get update - + apt-get install -y \ - rw.core.mano-rwcal_yang_ylib-1.0 \ - rw.core.mano-rwconfig_agent_yang_ylib-1.0 \ - rw.core.mano-rwlaunchpad_yang_ylib-1.0 \ - rw.core.mano-mano_yang_ylib-1.0 \ - rw.core.mano-common-1.0 \ - rw.core.mano-rwsdn_yang_ylib-1.0 \ - rw.core.mano-rwsdnal_yang_ylib-1.0 \ - rw.core.mano-mano-types_yang_ylib-1.0 \ - rw.core.mano-rwcal-cloudsim-1.0 \ - rw.core.mano-rwcal-1.0 \ - rw.core.mano-rw_conman_yang_ylib-1.0 \ - rw.core.mano-rwcalproxytasklet-1.0 \ - rw.core.mano-rwlaunchpad-1.0 \ - rw.core.mano-rwcal-openmano-vimconnector-1.0 \ - rw.core.mano-lpmocklet_yang_ylib-1.0 \ - rw.core.mano-rwmon-1.0 \ - rw.core.mano-rwcloud_yang_ylib-1.0 \ - rw.core.mano-rwcal-openstack-1.0 \ - rw.core.mano-rw.core.mano_foss \ - rw.core.mano-rwmon_yang_ylib-1.0 \ - rw.core.mano-rwcm-1.0 \ - rw.core.mano-rwcal-mock-1.0 \ -# rw.core.mano-rwmano_examples-1.0 \ - rw.core.mano-rwcal-cloudsimproxy-1.0 \ - rw.core.mano-models-1.0 \ - rw.core.mano-rwcal-aws-1.0 - + rw.core.mano-mano \ + rw.core.mano-rwcal-plugin-aws \ + rw.core.mano-rwcal-plugin-cloudsim \ + rw.core.mano-rwcal-plugin-cloudsimproxy \ + rw.core.mano-rwcal-plugin-openmano-vimconnector \ + rw.core.mano-rwcal-plugin-openstack \ + rw.core.mano-rwcal-plugin-mock + + + +