Commit d00b1ed7 by Kali Kaneko

document the virtualbox ci setup

parent 7ab3e74c
Pipeline #7138 failed with stages
in 105 minutes 4 seconds
.. _osx-vms:
OSX Virtualization
============================================
If you have acess to a OSX machine, you can setup virtual machines for setting up a gitlab runner.
Base Image
----------
.. note: convert this to ansible script or similar.
* Install homebrew (via the curl | sh script).
Install basic packages::
brew install gpg1 wget openssl cryptography python
* Modify $PATH (.bash_profile), source it or login again to activate the PATH.
* Add a symlink from gpg1 to ``/usr/bin/gpg``
Install tox for the tests::
pip install tox
* Copy ssh keys to access this machine.
* TODO - install virtualbox guest extensions.
Gitlab runner (on host)
-----------------------
* install gitlab-runner for osx [link]
* install virtualbox in the host machine
* configure ``.gitlab-runner/config.toml``
Run::
gitlab-runner run
Debug mode::
gilab-runner --debug run
Virtualbox cheatsheet
---------------------
Some useful commands::
# list
VBoxManage list vms
# only running
VBoxManage list runningvms
# start headless
VBoxManage startvm yosemite --type headless
# poweroff
VBoxManage controlvm yosemite poweroff
gitlab-runner keeps a snapshot with the name 'Base State', so it seems this is
the one you have to be sure that you modify with all the software you need.
It seems to me that if you just delete the first 'Base State' snapshot in the
snapshot sequence, it take the most recent state (virtualbox does a merge).
This is how ``gitlab-runner`` accesses ssh::
VBoxManage modifyvm yosemite-runner-deadbeef --natpf1 gustssh,tcp,127.0.0.1,99999,,22
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment