Files
nixpkgs/pkgs/by-name/sk/skaffold/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

72 lines
1.8 KiB
Nix

{
lib,
buildGoModule,
fetchFromGitHub,
installShellFiles,
makeWrapper,
}:
buildGoModule rec {
pname = "skaffold";
version = "2.16.1";
src = fetchFromGitHub {
owner = "GoogleContainerTools";
repo = "skaffold";
rev = "v${version}";
hash = "sha256-pQyudlU/nn9ZcX4RLp3RvXntxgra3Vs4+HOjvBOKrow=";
};
vendorHash = null;
subPackages = [ "cmd/skaffold" ];
ldflags =
let
t = "github.com/GoogleContainerTools/skaffold/v2/pkg/skaffold";
in
[
"-s"
"-w"
"-X ${t}/version.version=v${version}"
"-X ${t}/version.gitCommit=${src.rev}"
"-X ${t}/version.buildDate=unknown"
];
nativeBuildInputs = [
installShellFiles
makeWrapper
];
doInstallCheck = true;
installCheckPhase = ''
$out/bin/skaffold version | grep ${version} > /dev/null
'';
postInstall = ''
wrapProgram $out/bin/skaffold --set SKAFFOLD_UPDATE_CHECK false
installShellCompletion --cmd skaffold \
--bash <($out/bin/skaffold completion bash) \
--zsh <($out/bin/skaffold completion zsh)
'';
meta = {
homepage = "https://skaffold.dev/";
changelog = "https://github.com/GoogleContainerTools/skaffold/releases/tag/v${version}";
description = "Easy and Repeatable Kubernetes Development";
mainProgram = "skaffold";
longDescription = ''
Skaffold is a command line tool that facilitates continuous development for Kubernetes applications.
You can iterate on your application source code locally then deploy to local or remote Kubernetes clusters.
Skaffold handles the workflow for building, pushing and deploying your application.
It also provides building blocks and describe customizations for a CI/CD pipeline.
'';
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
vdemeester
bryanasdev000
];
};
}