30 lines
1.1 KiB
Ruby
30 lines
1.1 KiB
Ruby
class Nerdctl < Formula
|
|
desc "ContaiNERD CTL - Docker-compatible CLI for containerd"
|
|
homepage "https://github.com/containerd/nerdctl"
|
|
url "https://github.com/containerd/nerdctl/archive/refs/tags/v1.1.0.tar.gz"
|
|
sha256 "37690387a05b03fdb376a9988776dd24bf872b6d87f73224c8c1ce2beebbd4cf"
|
|
license "Apache-2.0"
|
|
head "https://github.com/containerd/nerdctl.git", branch: "master"
|
|
|
|
bottle do
|
|
sha256 cellar: :any_skip_relocation, x86_64_linux: "370c85c986365a16203595efa6392c95b06d93f324e7965e39c7b73a4fe35f66"
|
|
end
|
|
|
|
depends_on "go" => :build
|
|
depends_on :linux
|
|
|
|
def install
|
|
ldflags = "-s -w -X github.com/containerd/nerdctl/pkg/version.Version=#{version}"
|
|
system "go", "build", *std_go_args(ldflags: ldflags), "./cmd/nerdctl"
|
|
|
|
generate_completions_from_executable(bin/"nerdctl", "completion")
|
|
end
|
|
|
|
test do
|
|
assert_match version.to_s, shell_output("#{bin}/nerdctl --version")
|
|
output = shell_output("XDG_RUNTIME_DIR=/dev/null #{bin}/nerdctl images 2>&1", 1).strip
|
|
cleaned = output.gsub(/\e\[([;\d]+)?m/, "") # Remove colors from output
|
|
assert_match(/^time=.* level=fatal msg="rootless containerd not running.*/m, cleaned)
|
|
end
|
|
end
|