Files
nixpkgs/pkgs/by-name/ko/kolla/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

77 lines
1.6 KiB
Nix

{
lib,
python3Packages,
fetchFromGitHub,
bashate,
}:
python3Packages.buildPythonApplication rec {
pname = "kolla";
version = "20.2.0";
pyproject = true;
src = fetchFromGitHub {
owner = "openstack";
repo = "kolla";
tag = version;
hash = "sha256-aqYEzBphzwB42Z0HmnCPQlV71dOi3yLKh+zL2dMTaB8=";
};
postPatch = ''
substituteInPlace kolla/image/kolla_worker.py \
--replace-fail "os.path.join(sys.prefix, 'share/kolla')," \
"os.path.join(PROJECT_ROOT, '../../../share/kolla'),"
sed -e 's/git_info = .*/git_info = "${version}"/' -i kolla/version.py
'';
pythonRelaxDeps = [
"hacking"
];
# fake version to make pbr.packaging happy
env.PBR_VERSION = version;
build-system = with python3Packages; [
setuptools
pbr
];
dependencies = with python3Packages; [
docker
jinja2
oslo-config
gitpython
podman
];
postInstall = ''
cp kolla/template/repos.yaml $out/${python3Packages.python.sitePackages}/kolla/template/
'';
nativeCheckInputs = with python3Packages; [
testtools
stestr
oslotest
hacking
coverage
bashate
];
# Tests output a few exceptions but still succeed
checkPhase = ''
runHook preCheck
stestr run -e <(echo "test_load_ok")
runHook postCheck
'';
meta = with lib; {
description = "Provides production-ready containers and deployment tools for operating OpenStack clouds";
mainProgram = "kolla-build";
homepage = "https://opendev.org/openstack/kolla";
license = licenses.asl20;
maintainers = [ maintainers.astro ];
teams = [ teams.openstack ];
};
}