... | ... | @@ -233,26 +233,37 @@ $ docker build 18.06/dind/ |
|
|
We use `gitlab-runner`'s VirtualBox executor to test on FreeBSD. The base VM is built with Vagrant and the following configurations:
|
|
|
```ruby
|
|
|
Vagrant.configure("2") do |config|
|
|
|
|
|
|
config.vm.box = "freebsd/FreeBSD-11.3-RELEASE"
|
|
|
#config.vm.box = "freebsd/FreeBSD-12.0-RELEASE"
|
|
|
|
|
|
config.vm.guest = :freebsd
|
|
|
|
|
|
config.ssh.shell = "sh"
|
|
|
|
|
|
config.vm.synced_folder ".", "/vagrant", id: "vagrant-root", disabled: true
|
|
|
|
|
|
config.vm.boot_timeout = 600
|
|
|
|
|
|
config.vm.provision "shell",
|
|
|
inline: $script
|
|
|
config.vm.provision "shell", inline: $script
|
|
|
# Requires vagrant-disksize, which is
|
|
|
# broken: https://github.com/sprotheroe/vagrant-disksize/issues/32
|
|
|
#config.disksize.size = "15GB"
|
|
|
|
|
|
config.vm.provider "virtualbox" do |v|
|
|
|
v.cpus = 5
|
|
|
v.memory = "8GB"
|
|
|
end
|
|
|
end
|
|
|
|
|
|
$script = <<-SCRIPT
|
|
|
mkdir -p /usr/local/etc/pkg/repos/
|
|
|
echo 'FreeBSD: { url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest" }' > /usr/local/etc/pkg/repos/FreeBSD.conf
|
|
|
pkg install -y git bash gitlab-runner
|
|
|
pkg install -y git bash gitlab-runner gmake curl wget libiconv autoconf automake python3 py36-sphinx
|
|
|
|
|
|
git clone https://github.com/haskell/cabal
|
|
|
cd cabal
|
|
|
git checkout cabal-install-v3.0.0.0
|
|
|
cd cabal-install
|
|
|
setenv NO_DOCUMENTATION YES
|
|
|
./bootstrap.sh
|
|
|
|
|
|
$HOME/.cabal/bin/cabal update
|
|
|
$HOME/.cabal/bin/cabal install alex happy
|
|
|
SCRIPT
|
|
|
```
|
|
|
Initial configuration looks something like this:
|
... | ... | |