# vagrant-boxen

Zbiór typowych boxów vagrantowych, co by kompilacje szybciej szły.
Można dodawać własne!

Zobacz dostępne [http://git.dms-serwis.com.pl/henrietta/vagrant-boxen/branches](branche)
żeby widzieć jakie są vmki.

Ew wbij na [http://dev.dms-serwis.com.pl/vagrant](http://dev.dms-serwis.com.pl/vagrant).

W oparciu o *debian/contrib-jessie64*

# Robienie własnych boxów
Chcesz jakąś typową VM-kę?

Stwórz sobie jakąś gałąź o nazwie równej nazwie swojego boxa. Możesz w `make.py` zmienić
PREFIX, jeśli chcesz.

Wywołaj:
```bash
python make.py newbox nazwa_boxa
```
Teraz baw się folderem o nazwie `nazwa_boxa`.

Np. maszyna **funky**
**funky/build.sh**:
```bash
#!/usr/bin/env bash

wynurz.sh java
wynurz.sh cassandra
wynurz.sh rabbitmq
wynurz.sh zookeeper
```

**funky/README.md**:
```markdown
# funky

java + cass + rmq + zk

Maszyna z:
* Cassandrą..
```
Po ukończonej pracy odpal `python make.py`

Sposób użycia będzie w README w katalogu po wbiciu `python make.py` w głównym katalogu.
Zostanie doczepiony do twojego README. Ponowne wywołanie nie doczepią go ponownie.

Generalnie buduje się tylko to co jest na dalej gałęzi. Po wywołaniu  `python make.py`
wyślij to na repo i niech CI czyni magię. _.gitlab-ci.yml_ generowany jest przez 
`python make.py`.

Zawsze dostępna jest podczas buildu komenda `wynurz`. Wymaga ona roota, ale weźmie sobie sama za 
pomocą _sudo_ jeśli go nie dasz. **NIE UŻYWAJ** _/vagrant/wynurz.sh_.

Po pomyślnej kompilacji i deployu (dzieje się automatycznie) plik box można zassać z
[http://dev.dms-serwis.com.pl/vagrant/](http://dev.dms-serwis.com.pl/vagrant/), albo
po prostu wpisać wygenerowany przez make.py 

**master** to taka czysta kartka - do robienia nowych branchów tylko.
Wpisz się w **mastera** 

## wynurz

Przyjmuje jeden argument. Dostępne to:
* **java** - pobiera i instaluje Oracle Java 8 JRE
* **node4** - pobiera i instaluje NodeJS 4.x
* **node5** - pobiera i instaluje NodeJS 5.x
* **jdk** - pobiera i instaluje Oracle Java JDK 8 w folderze użytkownika _vagrant_.
  * Nie ustawia zmiennych środowiskowych ŻADNYCH!
  * Dostępna tylko dla użytkownika _vagrant_
* **cassandra** - pobiera i instaluje Apache Cassandra 3.0.9
  * Następnie po 30 sekundach w tle zatrzymuje ją
  * Usługa będzie wstawać przy starcie VM-ki
* **zookeeper** - pobiera i instaluje Apache ZooKeeper
  * Następnie po 20 sekundach w tle zatrzymuje ją
  * Usługa będzie wstawać przy starcie VM-ki
* **rabbitmq** - pobiera i instaluje RabbitMQ 3.3.5
  * Usługa będzie wstawać przy starcie VM-ki
* **postgresql** - pobiera i instaluje PostgreSQL 9.4 
  * User: postgres
  * Hasło: postgres
  * Połączenia: TCP z dowolnego adresu
* **get-adt25** - pobierz Android Development Tools r25 i wypakuj do /home/vagrant
  * istnieć będzie katalog _/home/vagrant/tools_
  * zmienne środowiskowe nie będą zmienione