File: Vagrantfile.freebsd

package info (click to toggle)
docker.io 27.5.1%2Bdfsg4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 67,384 kB
  • sloc: sh: 5,847; makefile: 1,146; ansic: 664; python: 162; asm: 133
file content (75 lines) | stat: -rw-r--r-- 2,131 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "generic/freebsd14"
  config.vm.boot_timeout = 900
  config.vm.synced_folder ".", "/vagrant", type: "rsync"
  config.ssh.keep_alive = true

  config.vm.provision "init", type: "shell", run: "once" do |sh|
    sh.inline = <<~SHELL
      #!/usr/bin/env bash
      set -eux -o pipefail
      kldload nullfs
      pkg install -y git runj
      mkdir -p /vagrant/coverage /vagrant/.tmp/logs
    SHELL
  end

  config.vm.provision "install-buildkitd", type: "shell", run: "once" do |sh|
    sh.inline = <<~SHELL
      #!/usr/bin/env bash
      set -eux -o pipefail
      cd /vagrant
      install -m 755 bin/buildkitd /usr/local/bin/buildkitd
      type /usr/local/bin/buildkitd
      buildkitd --version
    SHELL
  end

  config.vm.provision "install-buildctl", type: "shell", run: "once" do |sh|
    sh.inline = <<~SHELL
      #!/usr/bin/env bash
      set -eux -o pipefail
      cd /vagrant
      install -m 755 bin/buildctl /usr/local/bin/buildctl
      type /usr/local/bin/buildctl
    SHELL
  end

  config.vm.provision "run-containerd", type: "shell", run: "once" do |sh|
    sh.inline = <<~SHELL
      #!/usr/bin/env bash
      set -eux -o pipefail
      cd /vagrant
      install -m 755 bin/containerd /bin/containerd
      containerd --version
      daemon -o /vagrant/.tmp/logs/containerd containerd
    SHELL
  end

  config.vm.provision "run-buildkitd", type: "shell", run: "once" do |sh|
    sh.inline = <<~SHELL
      #!/usr/bin/env bash
      set -eux -o pipefail
      mkdir -p /run/buildkit
      daemon -o /vagrant/.tmp/logs/buildkitd /usr/local/bin/buildkitd
      sleep 3
    SHELL
  end

  config.vm.provision "test-smoke", type: "shell", run: "never" do |sh|
    sh.inline = <<~SHELL
      #!/usr/bin/env bash
      set -eux -o pipefail
      mkdir -p /vagrant/.tmp/freebsd-smoke
      cd /vagrant/.tmp/freebsd-smoke
      cat > Dockerfile <<EOF
FROM dougrabson/freebsd-minimal:13
RUN echo "Hello, buildkit!"
EOF
      buildctl build --frontend dockerfile.v0 --local context=. --local dockerfile=.
    SHELL
  end
end