48 lines
1.2 KiB
Nix
48 lines
1.2 KiB
Nix
|
|
{
|
||
|
|
lib,
|
||
|
|
stdenv,
|
||
|
|
fetchFromGitHub,
|
||
|
|
fetchYarnDeps,
|
||
|
|
yarnConfigHook,
|
||
|
|
yarnInstallHook,
|
||
|
|
nodejs,
|
||
|
|
testers,
|
||
|
|
}:
|
||
|
|
|
||
|
|
stdenv.mkDerivation (finalAttrs: {
|
||
|
|
pname = "codefresh";
|
||
|
|
version = "0.89.2";
|
||
|
|
|
||
|
|
src = fetchFromGitHub {
|
||
|
|
owner = "codefresh-io";
|
||
|
|
repo = "cli";
|
||
|
|
rev = "v${finalAttrs.version}";
|
||
|
|
hash = "sha256-Cf3I+w0rVsjsu+m+vE/pOcASYTmsRi0yAQVpJkYbzUU=";
|
||
|
|
};
|
||
|
|
|
||
|
|
offlineCache = fetchYarnDeps {
|
||
|
|
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||
|
|
hash = "sha256-wD3BmWjrFGkNqUhbo2TrWLwgo2o2MiQn7X3fyDYt5dw=";
|
||
|
|
};
|
||
|
|
nativeBuildInputs = [
|
||
|
|
yarnConfigHook
|
||
|
|
yarnInstallHook
|
||
|
|
nodejs
|
||
|
|
];
|
||
|
|
|
||
|
|
passthru.tests.version = testers.testVersion {
|
||
|
|
package = finalAttrs.finalPackage;
|
||
|
|
# codefresh needs to read a config file, this is faked out with a subshell
|
||
|
|
command = "codefresh --cfconfig <(echo 'contexts:') version";
|
||
|
|
};
|
||
|
|
|
||
|
|
meta = {
|
||
|
|
changelog = "https://github.com/codefresh-io/cli/releases/tag/v${finalAttrs.version}";
|
||
|
|
description = "CLI tool to interact with Codefresh services";
|
||
|
|
homepage = "https://github.com/codefresh-io/cli";
|
||
|
|
license = lib.licenses.mit;
|
||
|
|
mainProgram = "codefresh";
|
||
|
|
maintainers = [ lib.maintainers.takac ];
|
||
|
|
};
|
||
|
|
})
|