diff --git a/packer/README.md b/packer/README.md
index 267d9ac..8747305 100644
--- a/packer/README.md
+++ b/packer/README.md
@@ -1,35 +1,31 @@
 # Creation of standard VM images with Packer
 
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
 ## Reference
 
 These Packer templates are derived from the templates for building Vagrant boxes for various OS produced by the [Bento Project](https://github.com/chef/bento), produced under Apache 2 license.
 
+## Pre-requirements
+
+- Hypervisor installed to generate the required type of boxes (e.g. VirtualBox, VMware, Parallels, etc.)
+- Packer >=1.6.5
+- Optional:
+  - Vagrant >=2.2
+  - An Openstack cloud available.
+
 ## How to build images from Packer templates
 
 Example 1: How to build an OSM box just for the VirtualBox provider:
 
 ```bash
 cd packer_templates/osm
-packer build -only=virtualbox-iso osm-7.0.1-amd64.json
+packer build -only=virtualbox-iso osm-8.0.4-amd64.json
 ```
 
 Example 2: How to build an OSM VM with the OpenStack provider:
 
 ```bash
 source openrc.sh    # This is only needed the first time
-jq 'del(."post-processors")' osm-7.0.1-amd64.json > tmp.json
+jq 'del(."post-processors")' osm-8.0.4-amd64.json > tmp.json
 packer build -only=openstack tmp.json
 rm tmp.json
 ```
@@ -44,7 +40,7 @@
 1. Import the local box into Packer:
    ```bash
    cd ../../builds
-   vagrant box add --name osm/osm-rel7 osm-7.0.1.virtualbox.box
+   vagrant box add --name osm/osm-rel8 osm-8.0.4.virtualbox.box
    ```
 2. Use the example at `vagrant_tests` to test it:
    ```bash
@@ -55,7 +51,7 @@
 3. In case the local image is no longer needed, it can be removed by:
    ```bash
    vagrant destroy
-   vagrant box remove osm/osm-rel7
+   vagrant box remove osm/osm-rel8
    ```
 
 ## How to upload boxes to Vagrant Cloud
diff --git a/packer/packer_templates/osm/README.md b/packer/packer_templates/osm/README.md
index 6699621..1cadabc 100644
--- a/packer/packer_templates/osm/README.md
+++ b/packer/packer_templates/osm/README.md
@@ -15,11 +15,11 @@
 ## Virtualbox for Vagrant
 
 ```bash
-PACKER_LOG=1 packer build -only=virtualbox-iso osm-7.0.1-amd64.json 2>&1 | tee osm_install_log.txt
+PACKER_LOG=1 packer build -only=virtualbox-iso osm-8.0.4-amd64.json 2>&1 | tee osm_install_log.txt
 ```
 
 ## OpenStack
 
 ```bash
-(jq 'del(."post-processors")' osm-7.0.1-amd64.json > temp.json) && (PACKER_LOG=1 packer build -only=openstack temp.json 2>&1 | tee osm_install_log.txt)
+(jq 'del(."post-processors")' osm-8.0.4-amd64.json > temp.json) && (PACKER_LOG=1 packer build -only=openstack temp.json 2>&1 | tee osm_install_log.txt)
 ```
diff --git a/packer/packer_templates/osm/osm-8.0.4-amd64.json b/packer/packer_templates/osm/osm-8.0.4-amd64.json
new file mode 100644
index 0000000..89a0e14
--- /dev/null
+++ b/packer/packer_templates/osm/osm-8.0.4-amd64.json
@@ -0,0 +1,351 @@
+{
+  "builders": [
+    {
+      "boot_command": [
+        "<esc><wait>",
+        "<esc><wait>",
+        "<enter><wait>",
+        "/install/vmlinuz<wait>",
+        " auto<wait>",
+        " console-setup/ask_detect=false<wait>",
+        " console-setup/layoutcode=us<wait>",
+        " console-setup/modelcode=pc105<wait>",
+        " debconf/frontend=noninteractive<wait>",
+        " debian-installer=en_US.UTF-8<wait>",
+        " fb=false<wait>",
+        " initrd=/install/initrd.gz<wait>",
+        " kbd-chooser/method=us<wait>",
+        " keyboard-configuration/layout=USA<wait>",
+        " keyboard-configuration/variant=USA<wait>",
+        " locale=en_US.UTF-8<wait>",
+        " netcfg/get_domain=vm<wait>",
+        " netcfg/get_hostname=vagrant<wait>",
+        " grub-installer/bootdev=/dev/sda<wait>",
+        " noapic<wait>",
+        " preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `preseed_path`}}<wait>",
+        " -- <wait>",
+        "<enter><wait>"
+      ],
+      "boot_wait": "10s",
+      "cpus": "{{ user `cpus` }}",
+      "disk_size": "{{user `disk_size`}}",
+      "guest_additions_path": "VBoxGuestAdditions_{{.Version}}.iso",
+      "guest_additions_url": "{{ user `guest_additions_url` }}",
+      "guest_os_type": "Ubuntu_64",
+      "hard_drive_interface": "sata",
+      "headless": "{{ user `headless` }}",
+      "http_directory": "{{user `http_directory`}}",
+      "iso_checksum": "{{user `iso_checksum_type`}}:{{user `iso_checksum`}}",
+      "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}",
+      "memory": "{{ user `memory` }}",
+      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-virtualbox",
+      "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
+      "ssh_password": "vagrant",
+      "ssh_port": 22,
+      "ssh_timeout": "10000s",
+      "ssh_username": "vagrant",
+      "type": "virtualbox-iso",
+      "virtualbox_version_file": ".vbox_version",
+      "vm_name": "{{ user `template` }}"
+    },
+    {
+      "boot_command": [
+        "<esc><wait>",
+        "<esc><wait>",
+        "<enter><wait>",
+        "/install/vmlinuz<wait>",
+        " auto<wait>",
+        " console-setup/ask_detect=false<wait>",
+        " console-setup/layoutcode=us<wait>",
+        " console-setup/modelcode=pc105<wait>",
+        " debconf/frontend=noninteractive<wait>",
+        " debian-installer=en_US.UTF-8<wait>",
+        " fb=false<wait>",
+        " initrd=/install/initrd.gz<wait>",
+        " kbd-chooser/method=us<wait>",
+        " keyboard-configuration/layout=USA<wait>",
+        " keyboard-configuration/variant=USA<wait>",
+        " locale=en_US.UTF-8<wait>",
+        " netcfg/get_domain=vm<wait>",
+        " netcfg/get_hostname=vagrant<wait>",
+        " grub-installer/bootdev=/dev/sda<wait>",
+        " noapic<wait>",
+        " preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `preseed_path`}}<wait>",
+        " -- <wait>",
+        "<enter><wait>"
+      ],
+      "boot_wait": "10s",
+      "cpus": "{{ user `cpus` }}",
+      "disk_size": "{{user `disk_size`}}",
+      "guest_os_type": "ubuntu-64",
+      "headless": "{{ user `headless` }}",
+      "http_directory": "{{user `http_directory`}}",
+      "iso_checksum": "{{user `iso_checksum_type`}}:{{user `iso_checksum`}}",
+      "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}",
+      "memory": "{{ user `memory` }}",
+      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-vmware",
+      "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
+      "ssh_password": "vagrant",
+      "ssh_port": 22,
+      "ssh_timeout": "10000s",
+      "ssh_username": "vagrant",
+      "tools_upload_flavor": "linux",
+      "type": "vmware-iso",
+      "vm_name": "{{ user `template` }}",
+      "vmx_data": {
+        "cpuid.coresPerSocket": "1",
+        "ethernet0.pciSlotNumber": "32"
+      },
+      "vmx_remove_ethernet_interfaces": true
+    },
+    {
+      "boot_command": [
+        "<esc><wait>",
+        "<esc><wait>",
+        "<enter><wait>",
+        "/install/vmlinuz<wait>",
+        " auto<wait>",
+        " console-setup/ask_detect=false<wait>",
+        " console-setup/layoutcode=us<wait>",
+        " console-setup/modelcode=pc105<wait>",
+        " debconf/frontend=noninteractive<wait>",
+        " debian-installer=en_US.UTF-8<wait>",
+        " fb=false<wait>",
+        " initrd=/install/initrd.gz<wait>",
+        " kbd-chooser/method=us<wait>",
+        " keyboard-configuration/layout=USA<wait>",
+        " keyboard-configuration/variant=USA<wait>",
+        " locale=en_US.UTF-8<wait>",
+        " netcfg/get_domain=vm<wait>",
+        " netcfg/get_hostname=vagrant<wait>",
+        " grub-installer/bootdev=/dev/sda<wait>",
+        " noapic<wait>",
+        " preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `preseed_path`}}<wait>",
+        " -- <wait>",
+        "<enter><wait>"
+      ],
+      "boot_wait": "10s",
+      "cpus": "{{ user `cpus` }}",
+      "disk_size": "{{user `disk_size`}}",
+      "guest_os_type": "ubuntu",
+      "http_directory": "{{user `http_directory`}}",
+      "iso_checksum": "{{user `iso_checksum_type`}}:{{user `iso_checksum`}}",
+      "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}",
+      "memory": "{{ user `memory` }}",
+      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-parallels",
+      "parallels_tools_flavor": "lin",
+      "prlctl_version_file": ".prlctl_version",
+      "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
+      "ssh_password": "vagrant",
+      "ssh_port": 22,
+      "ssh_timeout": "10000s",
+      "ssh_username": "vagrant",
+      "type": "parallels-iso",
+      "vm_name": "{{ user `template` }}"
+    },
+    {
+      "boot_command": [
+        "<esc><wait>",
+        "<esc><wait>",
+        "<enter><wait>",
+        "/install/vmlinuz<wait>",
+        " auto<wait>",
+        " console-setup/ask_detect=false<wait>",
+        " console-setup/layoutcode=us<wait>",
+        " console-setup/modelcode=pc105<wait>",
+        " debconf/frontend=noninteractive<wait>",
+        " debian-installer=en_US.UTF-8<wait>",
+        " fb=false<wait>",
+        " initrd=/install/initrd.gz<wait>",
+        " kbd-chooser/method=us<wait>",
+        " keyboard-configuration/layout=USA<wait>",
+        " keyboard-configuration/variant=USA<wait>",
+        " locale=en_US.UTF-8<wait>",
+        " netcfg/get_domain=vm<wait>",
+        " netcfg/get_hostname=vagrant<wait>",
+        " grub-installer/bootdev=/dev/vda<wait>",
+        " noapic<wait>",
+        " preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/{{user `preseed_path`}}<wait>",
+        " -- <wait>",
+        "<enter><wait>"
+      ],
+      "boot_wait": "10s",
+      "cpus": "{{ user `cpus` }}",
+      "disk_size": "{{user `disk_size`}}",
+      "headless": "{{ user `headless` }}",
+      "http_directory": "{{user `http_directory`}}",
+      "iso_checksum": "{{user `iso_checksum_type`}}:{{user `iso_checksum`}}",
+      "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}",
+      "memory": "{{ user `memory` }}",
+      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-qemu",
+      "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
+      "ssh_password": "vagrant",
+      "ssh_port": 22,
+      "ssh_timeout": "10000s",
+      "ssh_username": "vagrant",
+      "type": "qemu",
+      "vm_name": "{{ user `template` }}"
+    },
+    {
+      "flavor": "{{ user `openstack_flavor` }}",
+      "floating_ip_network": "{{ user `openstack_floating_net` }}",
+      "image_name": "{{ user `template` }}",
+      "networks": [
+        "{{ user `openstack_internal_net` }}"
+      ],
+      "source_image_name": "{{ user `openstack_image` }}",
+      "ssh_port": 22,
+      "ssh_timeout": "10000s",
+      "ssh_username": "ubuntu",
+      "type": "openstack"
+    },
+    {
+      "boot_command": [
+        "<esc><wait10><esc><esc><enter><wait>",
+        "set gfxpayload=1024x768<enter>",
+        "linux /install/vmlinuz ",
+        "preseed/url=http://{{.HTTPIP}}:{{.HTTPPort}}/preseed-hyperv.cfg ",
+        "debian-installer=en_US.UTF-8 auto locale=en_US.UTF-8 kbd-chooser/method=us ",
+        "hostname={{.Name}} ",
+        "fb=false debconf/frontend=noninteractive ",
+        "keyboard-configuration/modelcode=SKIP keyboard-configuration/layout=USA ",
+        "keyboard-configuration/variant=USA console-setup/ask_detect=false <enter>",
+        "initrd /install/initrd.gz<enter>",
+        "boot<enter>"
+      ],
+      "boot_wait": "10s",
+      "communicator": "ssh",
+      "cpus": "{{ user `cpus` }}",
+      "disk_size": "{{user `disk_size`}}",
+      "enable_secure_boot": false,
+      "generation": "{{user `hyperv_generation`}}",
+      "http_directory": "{{user `http_directory`}}",
+      "iso_checksum": "{{user `iso_checksum_type`}}:{{user `iso_checksum`}}",
+      "iso_url": "{{user `mirror`}}/{{user `mirror_directory`}}/{{user `iso_name`}}",
+      "memory": "{{user `memory`}}",
+      "output_directory": "{{ user `build_directory` }}/packer-{{user `template`}}-hyperv",
+      "shutdown_command": "echo 'vagrant' | sudo -S shutdown -P now",
+      "ssh_password": "vagrant",
+      "ssh_port": 22,
+      "ssh_timeout": "10000s",
+      "ssh_username": "vagrant",
+      "switch_name": "{{user `hyperv_switch`}}",
+      "type": "hyperv-iso",
+      "vm_name": "{{ user `template` }}"
+    }
+  ],
+  "post-processors": [
+    {
+      "output": "{{ user `build_directory` }}/{{user `box_basename`}}.{{.Provider}}.box",
+      "type": "vagrant"
+    }
+  ],
+  "provisioners": [
+    {
+      "environment_vars": [
+        "HOME_DIR=/home/vagrant",
+        "http_proxy={{user `http_proxy`}}",
+        "https_proxy={{user `https_proxy`}}",
+        "no_proxy={{user `no_proxy`}}"
+      ],
+      "execute_command": "echo 'vagrant' | {{.Vars}} sudo -S -E sh -eux '{{.Path}}'",
+      "expect_disconnect": true,
+      "scripts": [
+        "{{template_dir}}/../_common/check_vagrant_user.sh",
+        "{{template_dir}}/scripts/update.sh",
+        "{{template_dir}}/../_common/motd.sh",
+        "{{template_dir}}/../_common/sshd.sh",
+        "{{template_dir}}/scripts/networking.sh",
+        "{{template_dir}}/scripts/sudoers.sh",
+        "{{template_dir}}/scripts/vagrant.sh",
+        "{{template_dir}}/../_common/virtualbox.sh",
+        "{{template_dir}}/scripts/vmware.sh",
+        "{{template_dir}}/../_common/parallels.sh",
+        "{{template_dir}}/scripts/hyperv.sh"
+      ],
+      "type": "shell"
+    },
+    {
+      "environment_vars": [
+        "HOME_DIR=/home/vagrant",
+        "http_proxy={{user `http_proxy`}}",
+        "https_proxy={{user `https_proxy`}}",
+        "no_proxy={{user `no_proxy`}}",
+        "STATE_FOLDER={{user `state_folder`}}"
+      ],
+      "execute_command": "echo 'vagrant' | {{.Vars}} sudo -S su - vagrant -c '{{.Vars}} {{.Path}}'",
+      "expect_disconnect": "true",
+      "scripts": [
+        "{{template_dir}}/scripts/install_osm.sh"
+      ],
+      "type": "shell"
+    },
+    {
+      "destination": "/tmp/update_osm_info_docker.sh",
+      "source": "{{template_dir}}/scripts/update_osm_info_docker.sh",
+      "type": "file"
+    },
+    {
+      "environment_vars": [
+        "HOME_DIR=/home/vagrant",
+        "http_proxy={{user `http_proxy`}}",
+        "https_proxy={{user `https_proxy`}}",
+        "no_proxy={{user `no_proxy`}}",
+        "STATE_FOLDER={{user `state_folder`}}"
+      ],
+      "execute_command": "echo 'vagrant' | {{.Vars}} sudo -S su - vagrant -c '{{.Vars}} {{.Path}}'",
+      "expect_disconnect": "true",
+      "inline": [
+        "sudo mv /tmp/update_osm_info_docker.sh ${STATE_FOLDER}/",
+        "sudo chmod a+rx ${STATE_FOLDER}/update_osm_info_docker.sh"
+      ],
+      "type": "shell"
+    },
+    {
+      "environment_vars": [
+        "HOME_DIR=/home/vagrant",
+        "http_proxy={{user `http_proxy`}}",
+        "https_proxy={{user `https_proxy`}}",
+        "no_proxy={{user `no_proxy`}}"
+      ],
+      "execute_command": "echo 'vagrant' | {{.Vars}} sudo -S -E sh -eux '{{.Path}}'",
+      "expect_disconnect": true,
+      "scripts": [
+        "{{template_dir}}/scripts/cleanup.sh",
+        "{{template_dir}}/../_common/minimize.sh"
+      ],
+      "type": "shell"
+    }
+  ],
+  "variables": {
+    "box_basename": "osm-8.0.4",
+    "build_directory": "../../builds",
+    "build_timestamp": "{{isotime \"20060102150405\"}}",
+    "cpus": "1",
+    "disk_size": "65536",
+    "git_revision": "__unknown_git_revision__",
+    "guest_additions_url": "",
+    "headless": "",
+    "http_directory": "{{template_dir}}/http",
+    "http_proxy": "{{env `http_proxy`}}",
+    "https_proxy": "{{env `https_proxy`}}",
+    "hyperv_generation": "2",
+    "iso_checksum": "8c5fc24894394035402f66f3824beb7234b757dd2b5531379cb310cedfdf0996",
+    "iso_checksum_type": "sha256",
+    "iso_name": "ubuntu-18.04.5-server-amd64.iso",
+    "memory": "6144",
+    "mirror": "http://cdimage.ubuntu.com",
+    "mirror_directory": "ubuntu/releases/18.04.4/release",
+    "name": "osm-7.0.1",
+    "no_proxy": "{{env `no_proxy`}}",
+    "openstack_flavor": "{{env `FLAVOR_NAME`}}",
+    "openstack_floating_net": "{{env `VIM_EXT_NET`}}",
+    "openstack_image": "{{env `SOURCE_IMAGE_NAME`}}",
+    "openstack_internal_net": "{{env `NETWORK_ID`}}",
+    "preseed_path": "preseed.cfg",
+    "state_folder": "/etc/osm",
+    "template": "osm-7.0.1-amd64",
+    "version": "TIMESTAMP"
+  }
+}
+
diff --git a/packer/packer_templates/osm/scripts/install_osm.sh b/packer/packer_templates/osm/scripts/install_osm.sh
index b9024e8..b7595ce 100644
--- a/packer/packer_templates/osm/scripts/install_osm.sh
+++ b/packer/packer_templates/osm/scripts/install_osm.sh
@@ -12,149 +12,12 @@
 #   See the License for the specific language governing permissions and
 #   limitations under the License.
 #
-REPOSITORY_BASE=https://osm-download.etsi.org/repository/osm/debian
-RELEASE=ReleaseSEVEN
-REPOSITORY=stable
-DOCKER_TAG=7
 
-function usage(){
-    echo -e "usage: $0 [OPTIONS]"
-    echo -e "Install OSM from binaries or source code (by default, from binaries)"
-    echo -e "  OPTIONS"
-    echo -e "     -r <repo>:      use specified repository name for osm packages"
-    echo -e "     -R <release>:   use specified release for osm binaries (deb packages, lxd images, ...)"
-    echo -e "     -u <repo base>: use specified repository url for osm packages"
-    echo -e "     -k <repo key>:  use specified repository public key url"
-    echo -e "     -b <refspec>:   install OSM from source code using a specific branch (master, v2.0, ...) or tag"
-    echo -e "                     -b master          (main dev branch)"
-    echo -e "                     -b v2.0            (v2.0 branch)"
-    echo -e "                     -b tags/v1.1.0     (a specific tag)"
-    echo -e "                     ..."
-    echo -e "     -s <stack name> user defined stack name, default is osm"
-    echo -e "     -H <VCA host>   use specific juju host controller IP"
-    echo -e "     -S <VCA secret> use VCA/juju secret key"
-    echo -e "     -P <VCA pubkey> use VCA/juju public key file"
-    echo -e "     -C <VCA cacert> use VCA/juju CA certificate file"
-    echo -e "     -A <VCA apiproxy> 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 "     --pm_stack:     additionally deploy a Prometheus+Grafana stack for performance monitoring (PM)"
-    echo -e "     -m <MODULE>:    install OSM but only rebuild the specified docker images (LW-UI, NBI, LCM, RO, MON, POL, KAFKA, MONGO, PROMETHEUS, KEYSTONE-DB, NONE)"
-    echo -e "     -o <ADDON>:     ONLY (un)installs one of the addons (vimemu, elk_stack, pm_stack)"
-    echo -e "     -D <devops path> use local devops installation path"
-    echo -e "     -w <work dir>   Location to store runtime installation"
-    echo -e "     -t <docker tag> specify osm docker tag (default is latest)"
-    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"
-    echo -e "     --nodockerbuild:do not build docker images (use existing locally cached images)"
-    echo -e "     --nohostports:  do not expose docker ports to host (useful for creating multiple instances of osm on the same host)"
-    echo -e "     --nohostclient: do not install the osmclient"
-    echo -e "     --uninstall:    uninstall OSM: remove the containers and delete NAT rules"
-    echo -e "     --source:       install OSM from source code using the latest stable tag"
-    echo -e "     --develop:      (deprecated, use '-b master') install OSM from source code using the master branch"
-    echo -e "     --soui:         install classic build of OSM (Rel THREE v3.1, based on LXD containers, with SO and UI)"
-    echo -e "     --lxdimages:    (only for Rel THREE with --soui) download lxd images from OSM repository instead of creating them from scratch"
-    echo -e "     --pullimages:   pull/run osm images from docker.io/opensourcemano"
-    echo -e "     -l <lxd_repo>:  (only for Rel THREE with --soui) use specified repository url for lxd images"
-    echo -e "     -p <path>:      (only for Rel THREE with --soui) use specified repository path for lxd images"
-    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"
-}
-
-add_repo() {
-  REPO_CHECK="^$1"
-  grep "${REPO_CHECK/\[arch=amd64\]/\\[arch=amd64\\]}" /etc/apt/sources.list > /dev/null 2>&1
-  if [ $? -ne 0 ]
-  then
-    need_packages_lw="software-properties-common apt-transport-https"
-    echo -e "Checking required packages: $need_packages_lw"
-    dpkg -l $need_packages_lw &>/dev/null \
-      || ! echo -e "One or several required packages are not installed. Updating apt cache requires root privileges." \
-      || sudo apt-get -q update \
-      || ! echo "failed to run apt-get update" \
-      || exit 1
-    dpkg -l $need_packages_lw &>/dev/null \
-      || ! echo -e "Installing $need_packages_lw requires root privileges." \
-      || sudo apt-get install -y $need_packages_lw \
-      || ! echo "failed to install $need_packages_lw" \
-      || exit 1
-    wget -qO - $REPOSITORY_BASE/$RELEASE/OSM%20ETSI%20Release%20Key.gpg | sudo apt-key add -
-    sudo DEBIAN_FRONTEND=noninteractive add-apt-repository -y "$1" && sudo DEBIAN_FRONTEND=noninteractive apt-get update
-    return 0
-  fi
-
-  return 1
-}
-
-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:p:D:o:m:H:S:s:w:t:U:P:A:-: hy" o; do
-    case "${o}" in
-        r)
-            REPOSITORY="${OPTARG}"
-            ;;
-        R)
-            RELEASE="${OPTARG}"
-            ;;
-        u)
-            REPOSITORY_BASE="${OPTARG}"
-            ;;
-        t)
-            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
-#FIXME: sudo DEBIAN_FRONTEND=noninteractive apt-get install -y osm-devops
-
-#--- FIXME: Workaround until patch for unattended install comes with default installer
-sudo wget -O /usr/share/osm-devops/installers/full_install_osm.sh "https://osm.etsi.org/gitweb/?p=osm/devops.git;a=blob_plain;f=installers/full_install_osm.sh;hb=4205c192a9b6c2e30459987491e02a44ca3695d6"
-sudo chmod +x /usr/share/osm-devops/installers/full_install_osm.sh
-#--- End of workaround
-
-/usr/share/osm-devops/installers/full_install_osm.sh -R $RELEASE -r $REPOSITORY -u $REPOSITORY_BASE -D /usr/share/osm-devops -t $DOCKER_TAG "$@"
-
-############################################
-# OSM Install without workarounds
-############################################
-#wget https://osm-download.etsi.org/ftp/osm-7.0-seven/install_osm.sh
-#chmod +x install_osm.sh
-##./install_osm.sh -c k8s --k8s_monitor --elk_stack 2>&1 | tee osm_install_log.txt
-##./install_osm.sh -c k8s --k8s_monitor 2>&1 | tee osm_install_log.txt
-#./install_osm.sh 2>&1 | tee osm_install_log.txt
-############################################
+wget https://osm-download.etsi.org/ftp/osm-7.0-seven/install_osm.sh
+chmod +x install_osm.sh
+#./install_osm.sh -c k8s --k8s_monitor --elk_stack 2>&1 | tee osm_install_log.txt
+#./install_osm.sh -c k8s --k8s_monitor 2>&1 | tee osm_install_log.txt
+./install_osm.sh 2>&1 | tee osm_install_log.txt
 
 # Saves the IP address used during install, in case the VM needed to be reinstantiated later with a different IP address
 sudo mkdir -p  ${STATE_FOLDER}
