graphite: 1.0.2 -> 1.1.3 & moved dependencies to python-modules (#44276)
Fixes #30891 * Upgrade `graphite-web`, `carbon` and `whisper` from 1.0.2 -> 1.1.3. * Replaced the deprecated `pythonPackages.graphite_influxdb` with `pythonPackages.influxgraph.` * Renamed `pythonPackages.graphite_web` to `pythonPackages.graphite-web` to be consistent with the Python package name. * Replaced the unmaintained `pythonPackages.graphite_pager` with `pythonPackages.graphitepager` * Moved all new packages from `python-packages.nix` to `pkgs/development/python-modules`
This commit is contained in:
committed by
Robert Schütz
parent
86b5b1e174
commit
0aae3fda06
54
pkgs/development/python-modules/graphite-web/default.nix
Normal file
54
pkgs/development/python-modules/graphite-web/default.nix
Normal file
@@ -0,0 +1,54 @@
|
||||
{ stdenv, buildPythonPackage, fetchPypi, isPy3k, which
|
||||
, django, django_tagging, whisper, pycairo, cairocffi, ldap, memcached, pytz, urllib3, scandir
|
||||
}:
|
||||
if django.version != "1.8.18"
|
||||
|| django_tagging.version != "0.4.3"
|
||||
then throw "graphite-web should be build with django_1_8 and django_tagging_0_4_3"
|
||||
else buildPythonPackage rec {
|
||||
pname = "graphite-web";
|
||||
version = "1.1.3";
|
||||
|
||||
disabled = isPy3k;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "0nvyq1859abdch2l90avsjk9vb03s7wgxgrjsqvjhf2b9c1ncsfh";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
django django_tagging whisper pycairo cairocffi
|
||||
ldap memcached pytz urllib3 scandir
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/run-graphite-devel-server.py \
|
||||
--prefix PATH : ${which}/bin
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
# graphite is configured by storing a local_settings.py file inside the
|
||||
# graphite python package. Since that package is stored in the immutable
|
||||
# Nix store we can't modify it. So how do we configure graphite?
|
||||
#
|
||||
# First of all we rename "graphite.local_settings" to
|
||||
# "graphite_local_settings" so that the settings are not looked up in the
|
||||
# graphite package anymore. Secondly we place a directory containing a
|
||||
# graphite_local_settings.py on the PYTHONPATH in the graphite module
|
||||
# <nixpkgs/nixos/modules/services/monitoring/graphite.nix>.
|
||||
substituteInPlace webapp/graphite/settings.py \
|
||||
--replace "graphite.local_settings" " graphite_local_settings"
|
||||
|
||||
substituteInPlace webapp/graphite/settings.py \
|
||||
--replace "join(WEBAPP_DIR, 'content')" "join('$out', 'webapp', 'content')"
|
||||
'';
|
||||
|
||||
# error: invalid command 'test'
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://graphite.wikidot.com/;
|
||||
description = "Enterprise scalable realtime graphing";
|
||||
maintainers = with maintainers; [ rickynils offline basvandijk ];
|
||||
license = licenses.asl20;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user