unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#29768] [PATCH 0/5] Graphite
@ 2017-12-18 22:44 Ricardo Wurmus
  2017-12-19  8:04 ` [bug#29768] [PATCH 1/5] gnu: Add python-txamqp Ricardo Wurmus
  0 siblings, 1 reply; 7+ messages in thread
From: Ricardo Wurmus @ 2017-12-18 22:44 UTC (permalink / raw)
  To: 29768; +Cc: Ricardo Wurmus

Hi Guix,

this patch series adds the Graphite graphing system for visualising and
monitoring time series data.

I haven't tested it much because it requires a wsgi service.  What's weird is
that it installs a file
"lib/python2.7/site-packages/graphite/local_settings.py.example", which a user
is supposed to edit before-hand.  It contains site-specific settings.  Since
we don't want people to feel tempted to change the file in the store, a user
could also provide settings by prepending a directory containing the settings
to the PYTHONPATH.

I'll play with this a little and then write a service for Graphite.

Ricardo Wurmus (5):
  gnu: Add python-txamqp.
  gnu: Add python-django-tagging.
  gnu: Add python-whisper.
  gnu: Add python2-carbon.
  gnu: Add python2-graphite-web.

 gnu/packages/django.scm     |  23 ++++++++++
 gnu/packages/monitoring.scm | 107 +++++++++++++++++++++++++++++++++++++++++++-
 gnu/packages/python.scm     |  29 ++++++++++++
 3 files changed, 158 insertions(+), 1 deletion(-)

-- 
2.15.0

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#29768] [PATCH 1/5] gnu: Add python-txamqp.
  2017-12-18 22:44 [bug#29768] [PATCH 0/5] Graphite Ricardo Wurmus
@ 2017-12-19  8:04 ` Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 2/5] gnu: Add python-django-tagging Ricardo Wurmus
                     ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Ricardo Wurmus @ 2017-12-19  8:04 UTC (permalink / raw)
  To: 29768; +Cc: Ricardo Wurmus

* gnu/packages/python.scm (python-txamqp, python2-txamqp): New variables.
---
 gnu/packages/python.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 4baef4391..c72e35588 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -7474,6 +7474,35 @@ alternative when librabbitmq is not available.")
                    #:tests? #f
                    ,@(package-arguments amqp))))))
 
+(define-public python-txamqp
+  (package
+    (name "python-txamqp")
+    (version "0.8.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "txAMQP" version))
+       (sha256
+        (base32
+         "1r43a66dd547mz40ikymm8y3d480cidy560fj81qc0jk4lncgmmr"))))
+    (build-system python-build-system)
+    (propagated-inputs
+     `(("python-six" ,python-six)
+       ("python-twisted" ,python-twisted)))
+    (home-page "https://github.com/txamqp/txamqp")
+    (synopsis "Communicate with AMQP peers and brokers using Twisted")
+    (description
+     "This package provides a Python library for communicating with AMQP peers
+and brokers using the asynchronous networking framework Twisted.  It contains
+all the necessary code to connect, send and receive messages to/from an
+AMQP-compliant peer or broker (Qpid, OpenAMQ, RabbitMQ) using Twisted.  It
+also includes support for using Thrift RPC over AMQP in Twisted
+applications.")
+    (license license:asl2.0)))
+
+(define-public python2-txamqp
+  (package-with-python2 python-txamqp))
+
 (define-public python-kombu
   (package
     (name "python-kombu")
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#29768] [PATCH 2/5] gnu: Add python-django-tagging.
  2017-12-19  8:04 ` [bug#29768] [PATCH 1/5] gnu: Add python-txamqp Ricardo Wurmus
@ 2017-12-19  8:04   ` Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 3/5] gnu: Add python-whisper Ricardo Wurmus
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Ricardo Wurmus @ 2017-12-19  8:04 UTC (permalink / raw)
  To: 29768; +Cc: Ricardo Wurmus

* gnu/packages/django.scm (python-django-tagging, python2-django-tagging): New
variables.
---
 gnu/packages/django.scm | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm
index 7f3981733..4f3e4914f 100644
--- a/gnu/packages/django.scm
+++ b/gnu/packages/django.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
 ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -718,3 +719,25 @@ static files.")
 lower the barrier of entry, providing tools to enable teams to work towards
 higher quality while welcoming newcomers.")
     (license license:gpl3+)))
+
+(define-public python-django-tagging
+  (package
+    (name "python-django-tagging")
+    (version "0.4.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "django-tagging" version))
+       (sha256
+        (base32
+         "0s7b4v45j783yaxs7rni10k24san0ya77nqz4s7zdf3jhfpk42r1"))))
+    (build-system python-build-system)
+    (home-page "https://github.com/Fantomas42/django-tagging")
+    (synopsis "Generic tagging application for Django")
+    (description "This package provides a generic tagging application for
+Django projects, which allows association of a number of tags with any
+@code{Model} instance and makes retrieval of tags simple.")
+    (license license:bsd-3)))
+
+(define-public python2-django-tagging
+  (package-with-python2 python-django-tagging))
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#29768] [PATCH 3/5] gnu: Add python-whisper.
  2017-12-19  8:04 ` [bug#29768] [PATCH 1/5] gnu: Add python-txamqp Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 2/5] gnu: Add python-django-tagging Ricardo Wurmus
@ 2017-12-19  8:04   ` Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 4/5] gnu: Add python2-carbon Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 5/5] gnu: Add python2-graphite-web Ricardo Wurmus
  3 siblings, 0 replies; 7+ messages in thread
From: Ricardo Wurmus @ 2017-12-19  8:04 UTC (permalink / raw)
  To: 29768; +Cc: Ricardo Wurmus

* gnu/packages/monitoring.scm (python-whisper, python2-whisper): New
variables.
---
 gnu/packages/monitoring.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm
index c136265c5..f9701f60f 100644
--- a/gnu/packages/monitoring.scm
+++ b/gnu/packages/monitoring.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -21,6 +22,7 @@
   #:use-module (guix download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix build-system perl)
+  #:use-module (guix build-system python)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
@@ -122,3 +124,28 @@ etc. via a Web interface.  Features include:
   notification and problem history, log file, etc.
 @end itemize\n")
     (license license:gpl2)))
+
+(define-public python-whisper
+  (package
+    (name "python-whisper")
+    (version "1.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "whisper" version))
+       (sha256
+        (base32
+         "1v1bi3fl1i6p4z4ki692bykrkw6907dn3mfq0151f70lvi3zpns3"))))
+    (build-system python-build-system)
+    (home-page "http://graphiteapp.org/")
+    (synopsis "Fixed size round-robin style database for Graphite")
+    (description "Whisper is one of three components within the Graphite
+project.  Whisper is a fixed-size database, similar in design and purpose to
+RRD (round-robin-database).  It provides fast, reliable storage of numeric
+data over time.  Whisper allows for higher resolution (seconds per point) of
+recent data to degrade into lower resolutions for long-term retention of
+historical data.")
+    (license license:asl2.0)))
+
+(define-public python2-whisper
+  (package-with-python2 python-whisper))
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#29768] [PATCH 4/5] gnu: Add python2-carbon.
  2017-12-19  8:04 ` [bug#29768] [PATCH 1/5] gnu: Add python-txamqp Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 2/5] gnu: Add python-django-tagging Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 3/5] gnu: Add python-whisper Ricardo Wurmus
@ 2017-12-19  8:04   ` Ricardo Wurmus
  2017-12-19  8:04   ` [bug#29768] [PATCH 5/5] gnu: Add python2-graphite-web Ricardo Wurmus
  3 siblings, 0 replies; 7+ messages in thread
From: Ricardo Wurmus @ 2017-12-19  8:04 UTC (permalink / raw)
  To: 29768; +Cc: Ricardo Wurmus

* gnu/packages/monitoring.scm (python2-carbon): New variable.
---
 gnu/packages/monitoring.scm | 34 +++++++++++++++++++++++++++++++++-
 1 file changed, 33 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm
index f9701f60f..b74dc18b9 100644
--- a/gnu/packages/monitoring.scm
+++ b/gnu/packages/monitoring.scm
@@ -29,7 +29,8 @@
   #:use-module (gnu packages gd)
   #:use-module (gnu packages image)
   #:use-module (gnu packages mail)
-  #:use-module (gnu packages perl))
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages python))
 
 (define-public nagios
   (package
@@ -149,3 +150,34 @@ historical data.")
 
 (define-public python2-whisper
   (package-with-python2 python-whisper))
+
+(define-public python2-carbon
+  (package
+    (name "python2-carbon")
+    (version "1.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "carbon" version))
+       (sha256
+        (base32
+         "142smpmgbnjinvfb6s4ijazish4vfgzyd8zcmdkh55y051fkixkn"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:python ,python-2   ; only supports Python 2
+       #:phases
+       (modify-phases %standard-phases
+         ;; Don't install to /opt
+         (add-after 'unpack 'do-not-install-to-/opt
+           (lambda _ (setenv "GRAPHITE_NO_PREFIX" "1") #t)))))
+    (propagated-inputs
+     `(("python2-whisper" ,python2-whisper)
+       ("python2-configparser" ,python2-configparser)
+       ("python2-txamqp" ,python2-txamqp)))
+    (home-page "http://graphiteapp.org/")
+    (synopsis "Backend data caching and persistence daemon for Graphite")
+    (description "Carbon is a backend data caching and persistence daemon for
+Graphite.  Carbon is responsible for receiving metrics over the network,
+caching them in memory for \"hot queries\" from the Graphite-Web application,
+and persisting them to disk using the Whisper time-series library.")
+    (license license:asl2.0)))
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#29768] [PATCH 5/5] gnu: Add python2-graphite-web.
  2017-12-19  8:04 ` [bug#29768] [PATCH 1/5] gnu: Add python-txamqp Ricardo Wurmus
                     ` (2 preceding siblings ...)
  2017-12-19  8:04   ` [bug#29768] [PATCH 4/5] gnu: Add python2-carbon Ricardo Wurmus
@ 2017-12-19  8:04   ` Ricardo Wurmus
  2018-01-21 18:39     ` bug#29768: " Ricardo Wurmus
  3 siblings, 1 reply; 7+ messages in thread
From: Ricardo Wurmus @ 2017-12-19  8:04 UTC (permalink / raw)
  To: 29768; +Cc: Ricardo Wurmus

* gnu/packages/monitoring.scm (python2-graphite-web): New variable.
---
 gnu/packages/monitoring.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 47 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm
index b74dc18b9..36ef71016 100644
--- a/gnu/packages/monitoring.scm
+++ b/gnu/packages/monitoring.scm
@@ -26,11 +26,14 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages django)
   #:use-module (gnu packages gd)
   #:use-module (gnu packages image)
   #:use-module (gnu packages mail)
   #:use-module (gnu packages perl)
-  #:use-module (gnu packages python))
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages python-web)
+  #:use-module (gnu packages time))
 
 (define-public nagios
   (package
@@ -181,3 +184,46 @@ Graphite.  Carbon is responsible for receiving metrics over the network,
 caching them in memory for \"hot queries\" from the Graphite-Web application,
 and persisting them to disk using the Whisper time-series library.")
     (license license:asl2.0)))
+
+(define-public python2-graphite-web
+  (package
+    (name "python2-graphite-web")
+    (version "1.0.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "graphite-web" version))
+       (sha256
+        (base32
+         "0q8bwlj75jqyzmazfsi5sa26xl58ssa8wdxm2l4j0jqyn8xpfnmc"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:python ,python-2               ; only supports Python 2
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'relax-requirements
+           (lambda _
+             (substitute* "setup.py"
+               (("0.4.3") ,(package-version python2-django-tagging))
+               (("<1.9.99") (string-append "<="
+                             ,(package-version python2-django))))
+             #t))
+         ;; Don't install to /opt
+         (add-after 'unpack 'do-not-install-to-/opt
+           (lambda _ (setenv "GRAPHITE_NO_PREFIX" "1") #t)))))
+    (propagated-inputs
+     `(("python2-cairocffi" ,python2-cairocffi)
+       ("python2-pytz" ,python2-pytz)
+       ("python2-whisper" ,python2-whisper)
+       ("python2-django" ,python2-django)
+       ("python2-django-tagging" ,python2-django-tagging)
+       ("python2-scandir" ,python2-scandir)
+       ("python2-urllib3" ,python2-urllib3)
+       ("python2-pyparsing" ,python2-pyparsing)
+       ("python2-txamqp" ,python2-txamqp)))
+    (home-page "http://graphiteapp.org/")
+    (synopsis "Scalable realtime graphing system")
+    (description "Graphite is a scalable real-time graphing system that does
+two things: store numeric time-series data, and render graphs of this data on
+demand.")
+    (license license:asl2.0)))
-- 
2.15.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#29768: [PATCH 5/5] gnu: Add python2-graphite-web.
  2017-12-19  8:04   ` [bug#29768] [PATCH 5/5] gnu: Add python2-graphite-web Ricardo Wurmus
@ 2018-01-21 18:39     ` Ricardo Wurmus
  0 siblings, 0 replies; 7+ messages in thread
From: Ricardo Wurmus @ 2018-01-21 18:39 UTC (permalink / raw)
  To: 29768-done

Pushed to master with commit e7a30ded59f314023a7d3e6c16a098b7e8e20c2c.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-01-21 18:41 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-18 22:44 [bug#29768] [PATCH 0/5] Graphite Ricardo Wurmus
2017-12-19  8:04 ` [bug#29768] [PATCH 1/5] gnu: Add python-txamqp Ricardo Wurmus
2017-12-19  8:04   ` [bug#29768] [PATCH 2/5] gnu: Add python-django-tagging Ricardo Wurmus
2017-12-19  8:04   ` [bug#29768] [PATCH 3/5] gnu: Add python-whisper Ricardo Wurmus
2017-12-19  8:04   ` [bug#29768] [PATCH 4/5] gnu: Add python2-carbon Ricardo Wurmus
2017-12-19  8:04   ` [bug#29768] [PATCH 5/5] gnu: Add python2-graphite-web Ricardo Wurmus
2018-01-21 18:39     ` bug#29768: " Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).