diff --git a/pkgs/applications/networking/cluster/kubelogin-oidc/default.nix b/pkgs/applications/networking/cluster/kubelogin-oidc/default.nix new file mode 100644 index 000000000000..7cbe55585336 --- /dev/null +++ b/pkgs/applications/networking/cluster/kubelogin-oidc/default.nix @@ -0,0 +1,30 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "kubelogin"; + version = "1.23.0"; + + src = fetchFromGitHub { + owner = "int128"; + repo = pname; + rev = "v${version}"; + sha256 = "0n94nx17c6ln2nd6d9yr93vc251y1xphq1wj2vzs4j2l8dqfyjpn"; + }; + + subPackages = ["."]; + + vendorSha256 = "1dvrk6z6k66wawgb50n8hbgdd8fly399mlbgnvxi671vfi7lkz09"; + + # Rename the binary instead of symlinking to avoid conflict with the + # Azure version of kubelogin + postInstall = '' + mv $out/bin/kubelogin $out/bin/kubectl-oidc_login + ''; + + meta = with lib; { + description = "A Kubernetes credential plugin implementing OpenID Connect (OIDC) authentication"; + inherit (src.meta) homepage; + license = licenses.asl20; + maintainers = with maintainers; [ benley ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 11ea45298e37..feaf3eb10fe4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23933,6 +23933,8 @@ in kubelogin = callPackage ../applications/networking/cluster/kubelogin { }; + kubelogin-oidc = callPackage ../applications/networking/cluster/kubelogin-oidc { }; + k9s = callPackage ../applications/networking/cluster/k9s { }; pgo-client = callPackage ../applications/networking/cluster/pgo-client { };