Commit ea5d1459 authored by Mark Beierl's avatar Mark Beierl
Browse files

Merge branch 'beierlm-master-patch-24730' into 'master'

Removal of Vagrant install

See merge request !78
parents fdb37b1c eb22ffa0
Loading
Loading
Loading
Loading
+0 −101
Original line number Diff line number Diff line
@@ -119,107 +119,6 @@ The `--volume` option is used to instruct OpenStack to create an external volume

Some OSM installer options are supported, in particular the following: `-r -k -u -R -t`. Other options will be supported in the future.

### Vagrant installation

Pre-built OSM Vagrant images are available here: <https://app.vagrantup.com/osm>

The pre-built image requires 6GB of memory and 2 vCPUs.

#### 1) Install Vagrant and VirtualBox

Follow the instructions to install them in their respective sites:

- [Vagrant](https://www.vagrantup.com/)
- [VirtualBox](https://www.virtualbox.org/)

#### 2) Create the initial Vagrantfile in a predefined directory of your choice

```bash
vagrant init osm/releaseeight
```

- NOTE: to ensure the latest version is downloaded, destroy any previous existing OSM boxes (i.e. using `vagrant box list` and, if needed, `vagrant box remove`)

#### 3) Edit the generated `Vagrantfile`

Editing the `Vagrantfile` is required if you need to customize the image for opened ports, assigned memory, etc.

For Release EIGHT, these are the recommended contents for the `Vagrantfile`:

```ruby
Vagrant.configure("2") do |config|
  required_plugins = %w( vagrant-vbguest vagrant-disksize )
  _retry = false
  required_plugins.each do |plugin|
      unless Vagrant.has_plugin? plugin
          system "vagrant plugin install #{plugin}"
          _retry=true
      end
  end
  if (_retry)
      exec "vagrant " + ARGV.join(' ')
  end
  config.disksize.size = "40GB"
  config.vm.box = "osm/releaseeight"
  config.vm.network "forwarded_port", guest: 80, host: 8080
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "6144"
    vb.cpus = 2
  end
  config.vm.provision "shell", name: "Post-provisión", privileged: false, inline: <<-SHELL
    /etc/osm/update_osm_info_docker.sh  # Updates IP address for Docker Swarm
  SHELL
end
```

This configuration guarantees that:

- The resources are appropriate (6 GB memory, 2 vCPUs, 40 GB HDD).
- VirtualBox plugins are installed if not already available.
- Port 80 is mapped to 8080 at your host, so that the OSM's GUI is directly accessible.
- The IP address of the Docker Swarm running inside is properly updated.

#### 4) Start OSM

```bash
vagrant up
```

- NOTE: Warnings related to `Vagrant unable to mount VirtualBox shared folders` can be safely ignored.

#### 5) ssh to OSM

```bash
vagrant ssh
```

#### Additional notes

If at any time you need to change something from the `Vagrantfile`, you can apply the changes by reloading the VM:

```bash
vagrant reload
```

If you need to copy a file to your Vagrant machine, just run `vagrant ssh-config` and copy the private key path, then:

```bash
scp -P 2222 -i /path/to/private_key someFileName.txt vagrant@127.0.0.1:
```

To use an image downloaded manually, add the box to Vagrant and create a matching `Vagrantfile`:

```bash
vagrant box add osm/releaseeight /path/to/vagrant.box
vagrant init osm/releaseeight
```

Please note that you may need to add more forwarded ports, for example, to access Grafana, you would need to add a line like this one to your `Vagrantfile`, then run `vagrant reload`:

```ruby
config.vm.network "forwarded_port", guest: 3000, host: 3000
```

### Charmed Installation

Some cases where the Charmed installer might be more suitable: