X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Finstall_osm.sh;h=740ce4c7a79b5ac4b25467f48f62000e335fbb7b;hb=1e76a0c26ec0fd74c7b93aa67232402f6d760a66;hp=50c11119bb7f8ac9f7308c7130b79a24a2681566;hpb=38d91ee0e1259f68cb024870eeb677a77fa89729;p=osm%2Fdevops.git diff --git a/installers/install_osm.sh b/installers/install_osm.sh index 50c11119..740ce4c7 100755 --- a/installers/install_osm.sh +++ b/installers/install_osm.sh @@ -13,9 +13,9 @@ # limitations under the License. # REPOSITORY_BASE=https://osm-download.etsi.org/repository/osm/debian -RELEASE=ReleaseSIX +RELEASE=ReleaseSEVEN REPOSITORY=stable -DOCKER_TAG=6 +DOCKER_TAG=7 function usage(){ echo -e "usage: $0 [OPTIONS]" @@ -38,12 +38,16 @@ function usage(){ echo -e " -A use VCA/juju API proxy" echo -e " --vimemu: additionally deploy the VIM emulator as a docker container" echo -e " --elk_stack: additionally deploy an ELK docker stack for event logging" + echo -e " --pla: install the PLA module for placement support" echo -e " --pm_stack: additionally deploy a Prometheus+Grafana stack for performance monitoring (PM)" - echo -e " -m : install OSM but only rebuild the specified docker images (LW-UI, NBI, LCM, RO, MON, POL, KAFKA, MONGO, PROMETHEUS, KEYSTONE-DB, NONE)" + echo -e " -m : install OSM but only rebuild the specified docker images (LW-UI, NBI, LCM, RO, MON, POL, KAFKA, MONGO, PROMETHEUS, KEYSTONE-DB, PLA, NONE)" echo -e " -o : ONLY (un)installs one of the addons (vimemu, elk_stack, pm_stack)" echo -e " -D use local devops installation path" echo -e " -w Location to store runtime installation" echo -e " -t specify osm docker tag (default is latest)" + echo -e " -l: LXD cloud yaml file" + echo -e " -L: LXD credentials yaml file" + echo -e " -K: Specifies the name of the controller to use - The controller must be already bootstrapped" echo -e " --nolxd: do not install and configure LXD, allowing unattended installations (assumes LXD is already installed and confifured)" echo -e " --nodocker: do not install docker, do not initialize a swarm (assumes docker is already installed and a swarm has been initialized)" echo -e " --nojuju: do not juju, assumes already installed" @@ -61,8 +65,15 @@ function usage(){ echo -e " --nat: (only for Rel THREE with --soui) install only NAT rules" echo -e " --noconfigure: (only for Rel THREE with --soui) DO NOT install osmclient, DO NOT install NAT rules, DO NOT configure modules" echo -e " --showopts: print chosen options and exit (only for debugging)" + #echo -e " --clean_volumes To clear all the mounted volumes from docker swarm" echo -e " -y: do not prompt for confirmation, assumes yes" echo -e " -h / --help: print this help" + echo -e " --charmed: install OSM with charms" + echo -e " --bundle : Specify with which bundle to deploy OSM with charms (--charmed option)" + echo -e " --kubeconfig : Specify with which kubernetes to deploy OSM with charms (--charmed option)" + echo -e " --controller : Specifies the name of the controller to use - The controller must be already bootstrapped (--charmed option)" + echo -e " --lxd-cloud : Takes a YAML file as a parameter with the LXD Cloud information (--charmed option)" + echo -e " --lxd-credentials : Takes a YAML file as a parameter with the LXD Credentials information (--charmed option)" } add_repo() { @@ -90,11 +101,16 @@ add_repo() { return 1 } -while getopts "hr:R:u:t:" o; do +clean_old_repo() { +dpkg -s 'osm-devops' &> /dev/null +if [ $? -eq 0 ]; then + # Clean the previous repos that might exist + sudo sed -i "/osm-download.etsi.org/d" /etc/apt/sources.list +fi +} + +while getopts ":b:r:c:k:u:R:l:L:K:p:D:o:m:H:S:s:w:t:U:P:A:-: hy" o; do case "${o}" in - h) - usage && exit 0 - ;; r) REPOSITORY="${OPTARG}" ;; @@ -105,13 +121,28 @@ while getopts "hr:R:u:t:" o; do REPOSITORY_BASE="${OPTARG}" ;; t) - OSM_DOCKER_TAG="${OPTARG}" + DOCKER_TAG="${OPTARG}" + ;; + -) + [ "${OPTARG}" == "help" ] && usage && exit 0 + ;; + :) + echo "Option -$OPTARG requires an argument" >&2 + usage && exit 1 + ;; + \?) + echo -e "Invalid option: '-$OPTARG'\n" >&2 + usage && exit 1 + ;; + h) + usage && exit 0 ;; *) ;; esac done +clean_old_repo add_repo "deb [arch=amd64] $REPOSITORY_BASE/$RELEASE $REPOSITORY devops" sudo DEBIAN_FRONTEND=noninteractive apt-get -q update sudo DEBIAN_FRONTEND=noninteractive apt-get install osm-devops