diff --git a/pkgs/by-name/op/opentelemetry-collector-builder/package.nix b/pkgs/by-name/op/opentelemetry-collector-builder/package.nix new file mode 100644 index 000000000000..1f47665155e2 --- /dev/null +++ b/pkgs/by-name/op/opentelemetry-collector-builder/package.nix @@ -0,0 +1,43 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, +}: +buildGoModule rec { + pname = "ocb"; + version = "0.101.0"; + + src = fetchFromGitHub { + owner = "open-telemetry"; + repo = "opentelemetry-collector"; + rev = "cmd/builder/v${version}"; + hash = "sha256-Ucp00OjyPtHA6so/NOzTLtPSuhXwz6A2708w2WIZb/E="; + }; + + sourceRoot = "${src.name}/cmd/builder"; + vendorHash = "sha256-MTwD9xkrq3EudppLSoONgcPCBWlbSmaODLH9NtYgVOk="; + + CGO_ENABLED = 0; + ldflags = [ + "-s" + "-w" + "-X go.opentelemetry.io/collector/cmd/builder/internal.version=${version}" + ]; + + # The TestGenerateAndCompile tests download new dependencies for a modified go.mod. Nix doesn't allow network access so skipping. + checkFlags = [ "-skip TestGenerateAndCompile" ]; + + # Rename the to ocb (it's generated as "builder") + postInstall = '' + mv $out/bin/builder $out/bin/ocb + ''; + + meta = { + description = "OpenTelemetry Collector"; + homepage = "https://github.com/open-telemetry/opentelemetry-collector.git"; + changelog = "https://github.com/open-telemetry/opentelemetry-collector/blob/${src.rev}/CHANGELOG.md"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ davsanchez ]; + mainProgram = "ocb"; + }; +}