<commit_before>OpenStack Training Virtual Environment
======================================

[bit.ly/training-vm](http://bit.ly/training-vm)
-----------------------------------------------

Introduction
------------

### What's this?

A Virtual Machine that has installed in it software what you need to start
hacking OpenStack. If you're coming to the [Upstream
Training](http://docs.openstack.org/upstream-training/) two days before
[OpenStack Summit](https://www.openstack.org/summit/) starts, you are at the
right place.

### What do I need?

* 6GB of _free_ RAM (so at least 8GB in your laptop)
* Recent CPU with at least 4 cores
* 10GB disk space
* [VirtualBox](https://www.virtualbox.org/)

### What do I want?

| A prebuilt image                        | I want to build myself             |
| ----------------                        | ----------------------             |
| Takes 15 minutes                        | Takes 45-60 minutes                |
| [Instructions](#using-a-prebuilt-image) | [Instructions](#building-your-own) |
| [Download image][image] (2GB)           |                                    |

[image]: https://s3.eu-central-1.amazonaws.com/openstack-training/devstack-vm.ova

Instructions
------------

### Using a prebuilt image

1. Set up VirtualBox
2. Download the [pre-built image][image]
3. Import the `ova` file (`File` -> `Import appliance...`)
4. Start up the VM
5. Open a terminal and start devstack

        cd /opt/devstack
        ./stack.sh

    This step takes about 10-15 minutes, it needs an internet connection,
    however the expected downloaded data stays low if using  a fresh enough
    appliance.


### Building your own

1. Set up VirtualBox
2. Set up Vagrant
3. `git clone https://github.com/kmARC/openstack-training-virtual-environment`
4. `cd openstack-training-virtual-environment`
5. `vagrant up`
6. `vagrant reload`
7. Follow [instructions for the prebuilt image](#using-a-prebuilt-image) from
   step 4

### Roll your own image

Essentially the same procedure, with exporting an ova archive at the end which
then can be distributed and easily import into VirtualBox

`./create-training-box.sh` is a handy tool that sets up everythong with vagrant
and then creates the distributable box file.

### Learn how to easily set up devstack

* [install-base.sh](install-base.sh) and 
  [install-devstack.sh](install-devstack.sh) - commands used during provisioning
* [files/](files/) - configuration files copied into the vm

Getting around in the VM
------------------------

After booting up the virtual machine, start setting up devstack. It takes around
10 minutes to finish, until then you can get familiar with the environment the
VM provides you with.

Open up a terminal and run `/opt/devstack/stack.sh`

The four main software you will be using from the desktop during the training
are
* a browser (Firefox)
* a terminal emulator
* a text editor (Geany, vim)
* an IRC client (XChat)

The browser already contains a couple of handy bookmarks on the bookmark bar.<commit_msg>Adds vagrant ssh command; fix typo<commit_after>OpenStack Training Virtual Environment
======================================

[bit.ly/training-vm](http://bit.ly/training-vm)
-----------------------------------------------

Introduction
------------

### What's this?

A Virtual Machine that has installed in it software what you need to start
hacking OpenStack. If you're coming to the [Upstream
Training](http://docs.openstack.org/upstream-training/) two days before
[OpenStack Summit](https://www.openstack.org/summit/) starts, you are at the
right place.

### What do I need?

* 6GB of _free_ RAM (so at least 8GB in your laptop)
* Recent CPU with at least 4 cores
* 10GB disk space
* [VirtualBox](https://www.virtualbox.org/)

### What do I want?

| A prebuilt image                        | I want to build myself             |
| ----------------                        | ----------------------             |
| Takes 15 minutes                        | Takes 45-60 minutes                |
| [Instructions](#using-a-prebuilt-image) | [Instructions](#building-your-own) |
| [Download image][image] (2GB)           |                                    |

[image]: https://s3.eu-central-1.amazonaws.com/openstack-training/devstack-vm.ova

Instructions
------------

### Using a prebuilt image

1. Set up VirtualBox
2. Download the [pre-built image][image]
3. Import the `ova` file (`File` -> `Import appliance...`)
4. Start up the VM
5. Open a terminal and start devstack

        cd /opt/devstack
        ./stack.sh

    This step takes about 10-15 minutes, it needs an internet connection,
    however the expected downloaded data stays low if using a fresh enough
    appliance.


### Building your own

1. Set up VirtualBox
2. Set up Vagrant
3. `git clone https://github.com/kmARC/openstack-training-virtual-environment`
4. `cd openstack-training-virtual-environment`
5. `vagrant up`
6. `vagrant reload`
7. `vagrant ssh`
8. Start devstack

        cd /opt/devstack
        ./stack.sh

    This step takes about 10-15 minutes, it needs an internet connection,
    however the expected downloaded data stays low if using a fresh enough
    appliance.

### Roll your own image

Essentially the same procedure, with exporting an ova archive at the end which
then can be distributed and easily import into VirtualBox

`./create-training-box.sh` is a handy tool that sets up everything with vagrant
and then creates the distributable box file.

### Learn how to easily set up devstack

* [install-base.sh](install-base.sh) and 
  [install-devstack.sh](install-devstack.sh) - commands used during provisioning
* [files/](files/) - configuration files copied into the vm

Getting around in the VM
------------------------

After booting up the virtual machine, start setting up devstack. It takes around
10 minutes to finish, until then you can get familiar with the environment the
VM provides you with.

Open up a terminal and run `/opt/devstack/stack.sh`

The four main software you will be using from the desktop during the training
are
* a browser (Firefox)
* a terminal emulator
* a text editor (Geany, vim)
* an IRC client (XChat)

The browser already contains a couple of handy bookmarks on the bookmark bar.
{'fraction_non_alphanumeric': 0.13897329281944668, 'fraction_numerical': 0.011194626579241964, 'mean_word_length': 2.6025345622119818, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 8, 'lorem ipsum': 0, 'www.': 4, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 11, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1284925', 'n_tokens_mistral': 1766, 'n_tokens_neox': 1673, 'n_words': 707}