|
| 1 | + |
| 2 | +Vagrant.configure("2") do |config| |
| 3 | + config.vm.define "freebsd" do |freebsd| |
| 4 | + freebsd.vm.box = "bento/freebsd-14" |
| 5 | + freebsd.vm.guest = :freebsd |
| 6 | + freebsd.vm.network "private_network", type: "dhcp" |
| 7 | + freebsd.vm.synced_folder "./elixir/phoenix/app", "/app", type: "rsync", |
| 8 | + rsync__exclude: [".git/", "node_modules/", "_build/", "deps/"] |
| 9 | + freebsd.vm.synced_folder "./elixir/integration", "/integration", type: "rsync", |
| 10 | + rsync__exclude: [".git/", "_build/", "deps/"] |
| 11 | + |
| 12 | + freebsd.vm.provider "virtualbox" do |vb| |
| 13 | + vb.check_guest_additions = false |
| 14 | + end |
| 15 | + |
| 16 | + freebsd.vm.provider "utm" do |u| |
| 17 | + u.name = "freebsd" |
| 18 | + u.cpus = 2 |
| 19 | + u.memory = 2048 |
| 20 | + u.icon = "freebsd" |
| 21 | + #u.directory_share_mode = "webDAV" |
| 22 | + u.check_guest_additions = false |
| 23 | + end |
| 24 | + freebsd.ssh.shell = "sh" |
| 25 | + |
| 26 | + freebsd.vm.hostname = "freebsd" |
| 27 | + freebsd.vm.network "private_network", ip: "192.168.56.12" |
| 28 | + freebsd.vm.network "forwarded_port", guest: 4001, host: 4001 |
| 29 | + freebsd.vm.provision "shell", inline: <<-SHELL |
| 30 | + echo test >> ~/testado |
| 31 | + sed -e 's/\#DEFAULT_ALWAYS_YES = false/DEFAULT_ALWAYS_YES = true/g' -e 's/\#ASSUME_ALWAYS_YES = false/ASSUME_ALWAYS_YES = true/g' /usr/local/etc/pkg.conf > /tmp/pkg.conf |
| 32 | + mv -f /tmp/pkg.conf /usr/local/etc/pkg.conf |
| 33 | + pkg install gcc gmake openssl automake libtool wget python3 gmake lftp vim ruby-build elixir postgresql16-server postgresql16-client git |
| 34 | + echo 'eval "$(rbenv init -)"' > ~/.bashrc |
| 35 | +
|
| 36 | + # Set up PostgreSQL |
| 37 | + sysrc postgresql_enable="YES" |
| 38 | + service postgresql initdb |
| 39 | + service postgresql start |
| 40 | +
|
| 41 | + # Create database user and database |
| 42 | + su -m postgres -c "createuser -s vagrant" || true |
| 43 | + su -m vagrant -c "createdb phoenix_dev" || true |
| 44 | + SHELL |
| 45 | + end |
| 46 | +end |
0 commit comments