Skip to content
Snippets Groups Projects
Commit 6f50dede authored by Michael Marchetti's avatar Michael Marchetti Committed by Gerrit Code Review
Browse files

Merge "Add support for vim emu installation"

parents fae5e97c 79731f43
No related branches found
No related tags found
No related merge requests found
output-virtualbox-iso/
packer_cache/
builds/
jujubase*/
osm-*/
......@@ -3,6 +3,12 @@ export PATH=$PATH:/snap/bin
echo "PATH=$PATH"
juju status
wget "$1"
chmod +x install_osm.sh
./install_osm.sh --nolxd -y --vimemu
git clone https://osm.etsi.org/gerrit/osm/vim-emu.git
git clone https://osm.etsi.org/gerrit/osm/devops.git
eval devops/installers/full_install_osm.sh --nolxd -y "$1"
cat >> ~/.bashrc <<-EOF
export OSM_HOSTNAME=127.0.0.1
export OSM_SOL005=True
EOF
#!/bin/sh
sudo snap install juju --classic
/snap/bin/juju bootstrap --bootstrap-series=xenial localhost osm
#!/bin/sh
mkdir -p /etc/systemd/system/scripts
cat > /etc/systemd/system/scripts/osm-vimemu-startup.sh <<-'EOF'
#!/bin/sh
export OSM_HOSTNAME=127.0.0.1
export OSM_SOL005=True
echo "Waiting for OSM startup"
while true; do
# wait for startup of osm
RC=$(osm vim-list)
if [ "$?" -eq 0 ]; then
break
fi
sleep 2
done
echo "OSM is up"
sleep 10
export VIMEMU_HOSTNAME=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' vim-emu)
osm vim-create --name vim-emulator --user username --password password --auth_url http://$VIMEMU_HOSTNAME:6001/v2.0 --tenant tenantName --account_type openstack
osm vnfd-create /home/vagrant/vim-emu/examples/vnfs/ping.tar.gz
osm vnfd-create /home/vagrant/vim-emu/examples/vnfs/pong.tar.gz
osm nsd-create /home/vagrant/vim-emu/examples/services/pingpong_nsd.tar.gz
osm ns-create --nsd_name pingpong --ns_name test --vim_account vim-emulator
echo "VIM emulator created"
systemctl disable osm-vimemu-setup.service
EOF
chmod +x /etc/systemd/system/scripts/osm-vimemu-startup.sh
cat > /etc/systemd/system/osm-vimemu-setup.service <<-'EOF'
[Unit]
Description=OSM VIM emulator setup
[Service]
Type=oneshot
ExecStart=/etc/systemd/system/scripts/osm-vimemu-startup.sh
RemainAfterExit=yes
TimeoutSec=120
# Output needs to appear in instance console output
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
EOF
#systemctl enable osm-vimemu-setup.service
......@@ -21,7 +21,17 @@
},
{
"type": "shell",
"script": "scripts/juju-setup.sh"
"inline": ["echo 'vagrant' | sudo shutdown -r now"],
"expect_disconnect": "true"
},
{
"type": "shell",
"script": "scripts/juju-setup.sh",
"pause_before": "10s"
},
{
"type": "shell",
"script": "scripts/cleanup.sh"
}
],
"builders": [
......@@ -54,7 +64,7 @@
"<enter><wait>"
],
"boot_wait": "10s",
"disk_size": 15360,
"disk_size": 20480,
"guest_os_type": "Ubuntu_64",
"headless": true,
"http_directory": "http",
......@@ -71,7 +81,8 @@
"shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now",
"guest_additions_path": "VBoxGuestAdditions_{{.Version}}.iso",
"virtualbox_version_file": ".vbox_version",
"vm_name": "packer-ubuntu-16.04-amd64-juju",
"output_directory": "jujubase-{{timestamp}}",
"vm_name": "xenial-jujubase",
"vboxmanage": [
[
"modifyvm",
......@@ -87,5 +98,12 @@
]
]
}
],
"post-processors": [
{
"output": "jujubase-{{timestamp}}/{{.Provider}}-jujubase.box",
"type": "vagrant",
"keep_input_artifact": true
}
]
}
......@@ -3,7 +3,12 @@
{
"type": "shell",
"script": "scripts/get-install-osm.sh",
"execute_command": "{{.Path}} {{user `osm_installer`}}"
"execute_command": "{{.Path}} {{user `osm_install_options`}}"
},
{
"type": "shell",
"execute_command": "echo 'vagrant' | {{.Vars}} sudo -S -E bash '{{.Path}}'",
"script": "scripts/vimemu.sh"
},
{
"type": "shell",
......@@ -12,9 +17,9 @@
}
],
"variables": {
"osm_installer": "https://osm-download.etsi.org/ftp/osm-4.0-four/install_osm.sh",
"osm_install_options": "--vimemu",
"input_ovf": "output-virtualbox-iso/packer-ubuntu-16.04-amd64-juju.ovf",
"vm_name": "packer-ubuntu-16.04-ovf-amd64"
"vm_name": "xenial-osm"
},
"builders": [
{
......@@ -28,6 +33,7 @@
"shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now",
"virtualbox_version_file": ".vbox_version",
"vm_name": "{{user `vm_name`}}",
"output_directory": "osm-{{timestamp}}",
"vboxmanage": [
[
"modifyvm",
......@@ -45,9 +51,18 @@
}
],
"post-processors": [
{
"output": "builds/{{.Provider}}-osm.box",
"type": "vagrant"
}
[
{
"output": "osm-{{timestamp}}/{{.Provider}}-osm.box",
"type": "vagrant",
"keep_input_artifact": true
},
{
"type": "vagrant-cloud",
"box_tag": "osm/{{user `release`}}",
"access_token": "{{user `cloud_token`}}",
"version": "{{user `version`}}"
}
]
]
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment