gnu: python2-oslo.i18n: Remove package.
[jackhill/guix/guix.git] / gnu / packages / openstack.scm
CommitLineData
7c4810a1
CR
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com>
264ae686 3;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
67c05f58 4;;; Copyright © 2016, 2017, 2019 Clément Lassieur <clement@lassieur.org>
cbb488d6 5;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
7a565dc9 6;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
851a3a77 7;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
226b2af5 8;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
7c4810a1
CR
9;;;
10;;; This file is part of GNU Guix.
11;;;
12;;; GNU Guix is free software; you can redistribute it and/or modify it
13;;; under the terms of the GNU General Public License as published by
14;;; the Free Software Foundation; either version 3 of the License, or (at
15;;; your option) any later version.
16;;;
17;;; GNU Guix is distributed in the hope that it will be useful, but
18;;; WITHOUT ANY WARRANTY; without even the implied warranty of
19;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20;;; GNU General Public License for more details.
21;;;
22;;; You should have received a copy of the GNU General Public License
23;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
24
25(define-module (gnu packages openstack)
b39667cd 26 #:use-module (gnu packages)
ac257f12 27 #:use-module (gnu packages check)
c8d7e063 28 #:use-module (gnu packages gnupg)
7c4810a1 29 #:use-module (gnu packages python)
226b2af5 30 #:use-module (gnu packages python-check)
cc6f4912 31 #:use-module (gnu packages python-crypto)
1b2f753d 32 #:use-module (gnu packages python-web)
44d10b1f 33 #:use-module (gnu packages python-xyz)
9d0c291e 34 #:use-module (gnu packages sphinx)
381000d7 35 #:use-module (gnu packages ssh)
33dc54b0 36 #:use-module (gnu packages time)
c9e330d0 37 #:use-module (gnu packages tls)
d4431993 38 #:use-module (gnu packages version-control)
55e1475c 39 #:use-module (gnu packages xml)
7c4810a1
CR
40 #:use-module (guix build-system python)
41 #:use-module (guix download)
42 #:use-module ((guix licenses)
43 #:select (asl2.0))
c9e330d0
EF
44 #:use-module (guix packages)
45 #:use-module (srfi srfi-1))
7c4810a1 46
f5a21dc4
CR
47(define-public python-bandit
48 (package
49 (name "python-bandit")
a2ec24c6 50 (version "1.6.2")
f5a21dc4
CR
51 (source
52 (origin
53 (method url-fetch)
231bd07e 54 (uri (pypi-uri "bandit" version))
f5a21dc4
CR
55 (sha256
56 (base32
a2ec24c6 57 "0rb034c99pyhb4a60z7f2kz40cjydhm8m9v2blaal1rmhlam7rs1"))))
f5a21dc4 58 (build-system python-build-system)
231bd07e 59 (arguments
a2ec24c6
MC
60 ;; The tests are disabled to avoid a circular dependency with
61 ;; python-stestr.
62 `(#:tests? #f))
f5a21dc4 63 (propagated-inputs
2cafbf41
MC
64 `(("python-gitpython" ,python-gitpython)
65 ("python-pyyaml" ,python-pyyaml)
66 ("python-six" ,python-six)
67 ("python-stevedore" ,python-stevedore)))
e7881f3d 68 (native-inputs
2cafbf41 69 `(("python-pbr" ,python-pbr)))
3903f983 70 (home-page "https://github.com/PyCQA/bandit")
66e07664 71 (synopsis "Security oriented static analyser for python code")
2cafbf41
MC
72 (description "Bandit is a tool designed to find common security issues in
73Python code. To do this Bandit processes each file, builds an AST from it,
74and runs appropriate plugins against the AST nodes. Once Bandit has finished
75scanning all the files it generates a report.")
f5a21dc4
CR
76 (license asl2.0)))
77
762238c4
MC
78(define-public python-cliff
79 (package
80 (name "python-cliff")
81 (version "3.5.0")
82 (source
83 (origin
84 (method url-fetch)
85 (uri (pypi-uri "cliff" version))
86 (sha256
87 (base32
88 "0n8pzr0mnn9lq2mykds69ij2xrn0fsirh4ndmkx0mzydbx5niysv"))))
89 (build-system python-build-system)
90 (arguments
91 `(#:tests? #f))
92 (native-inputs
93 `(("python-pbr" ,python-pbr)))
94 (propagated-inputs
95 `(("python-cmd2" ,python-cmd2)
96 ("python-prettytable" ,python-prettytable)
97 ("python-pyparsing" ,python-pyparsing)
98 ("python-pyyaml" ,python-pyyaml)
99 ("python-bandit" ,python-bandit)
100 ("python-stevedore" ,python-stevedore)))
101 (home-page "https://opendev.org/openstack/cliff")
102 (synopsis "Framework for building command line programs")
103 (description "The @code{cliff} framework allows creating multi-level
104commands such as those of @command{subversion} and @command{git}, where the
105main program handles some basic argument parsing and then invokes a
106sub-command to do the work. It uses plugins to define sub-commands, output
107formatters, and other extensions.")
108 (license asl2.0)))
109
2713527e
CR
110(define-public python-debtcollector
111 (package
112 (name "python-debtcollector")
a2803e20 113 (version "1.19.0")
2713527e
CR
114 (source
115 (origin
116 (method url-fetch)
56c7ead2 117 (uri (pypi-uri "debtcollector" version))
2713527e
CR
118 (sha256
119 (base32
a2803e20 120 "06c7vyn184y9f0lsrwaz13aq63hdz5fjrd191b8nifx6acsni42f"))))
2713527e
CR
121 (build-system python-build-system)
122 (propagated-inputs
a2803e20
MB
123 `(("python-pbr" ,python-pbr)
124 ("python-six" ,python-six)
2713527e 125 ("python-wrapt" ,python-wrapt)))
e7881f3d 126 (native-inputs
a2803e20
MB
127 `(;; Tests.
128 ("python-subunit" ,python-subunit)
129 ("python-testrepository" ,python-testrepository)
130 ("python-testtools" ,python-testtools)))
dbd37c13 131 (home-page "https://www.openstack.org/")
2713527e 132 (synopsis
a2803e20 133 "Find deprecated patterns and strategies in Python code")
2713527e
CR
134 (description
135 "This package provides a collection of Python deprecation patterns and
136strategies that help you collect your technical debt in a non-destructive
137manner.")
a2803e20 138 (properties `((python2-variant . ,(delay python2-debtcollector))))
2713527e
CR
139 (license asl2.0)))
140
141(define-public python2-debtcollector
a2803e20
MB
142 (let ((base (package-with-python2 (strip-python2-variant
143 python-debtcollector))))
144 (package
145 (inherit base)
146 (propagated-inputs
147 `(("python2-funcsigs" ,python2-funcsigs)
148 ,@(package-propagated-inputs base))))))
2713527e 149
2ac9ba6a
CR
150(define-public python-hacking
151 (package
152 (name "python-hacking")
226b2af5 153 (version "4.0.0")
2ac9ba6a
CR
154 (source
155 (origin
156 (method url-fetch)
157 (uri (pypi-uri "hacking" version))
158 (sha256
159 (base32
226b2af5 160 "062rvbkvbavqqz55f7q00ikwipkn5j0rdls1rrajdbfwgckjcrsm"))))
2ac9ba6a 161 (build-system python-build-system)
226b2af5
MC
162 (propagated-inputs
163 `(("python-flake8" ,python-flake8)))
e7881f3d 164 (native-inputs
3b664389 165 `( ;; Tests
226b2af5
MC
166 ("python-coverage" ,python-coverage)
167 ("python-ddt" ,python-ddt)
168 ("python-dnspython" ,python-dnspython)
169 ("python-fixtures" ,python-fixtures)
3b664389
TGR
170 ("python-eventlet" ,python-eventlet)
171 ("python-mock" ,python-mock)
226b2af5
MC
172 ("python-monotonic" ,python-monotonic)
173 ("python-subunit" ,python-subunit)
174 ("python-stestr" ,python-stestr)
175 ("python-testscenarios" ,python-testscenarios)
176 ("python-testtools" ,python-testtools)))
7bf837fd 177 (home-page "https://github.com/openstack-dev/hacking")
2ac9ba6a
CR
178 (synopsis "OpenStack hacking guideline enforcement")
179 (description
3b664389 180 "Python-hacking is a set of flake8 plugins that test and enforce the
2ac9ba6a
CR
181@uref{http://docs.openstack.org/developer/hacking/, OpenStack style
182guidelines}.")
183 (license asl2.0)))
184
35f1ebeb
CR
185(define-public python-mox3
186 (package
187 (name "python-mox3")
b39667cd 188 (version "0.24.0")
35f1ebeb
CR
189 (source
190 (origin
191 (method url-fetch)
d4e817b1 192 (uri (pypi-uri "mox3" version))
b39667cd 193 (patches (search-patches "python-mox3-python3.6-compat.patch"))
35f1ebeb
CR
194 (sha256
195 (base32
b39667cd 196 "0w58adwv7q9wzvmq9mlrk2asfk73myq9fpwy7mjkzsz3baa95zf5"))))
35f1ebeb 197 (build-system python-build-system)
b39667cd
MB
198 (propagated-inputs
199 `(("python-fixtures" ,python-fixtures)
200 ("python-pbr" ,python-pbr)))
f8f83e9d 201 (native-inputs
b39667cd 202 `(("python-openstackdocstheme" ,python-openstackdocstheme)
3bbfc451 203 ("python-sphinx" ,python-sphinx)
b39667cd
MB
204 ("python-subunit" ,python-subunit)
205 ("python-testrepository" ,python-testrepository)
35f1ebeb 206 ("python-testtools" ,python-testtools)))
dbd37c13 207 (home-page "https://www.openstack.org/")
35f1ebeb
CR
208 (synopsis "Mock object framework for Python")
209 (description
5eaa7bb0
TGR
210 "Mox3 is an unofficial port of the @uref{https://code.google.com/p/pymox/,
211Google mox framework} to Python 3. It was meant to be as compatible
b39667cd 212with mox as possible, but small enhancements have been made.")
35f1ebeb
CR
213 (license asl2.0)))
214
7a565dc9
MB
215(define-public python-openstackdocstheme
216 (package
217 (name "python-openstackdocstheme")
218 (version "1.18.1")
219 (source (origin
220 (method url-fetch)
221 (uri (pypi-uri "openstackdocstheme" version))
222 (sha256
223 (base32
224 "1ki5204rjdqjvr8xr9w2qc1z6b6d2i5jas0i70xzkf9njlzjzv2r"))))
225 (build-system python-build-system)
226 (arguments
227 ;; FIXME: Tests require an old version of python-hacking, which in
228 ;; turn depends on mox3 which depends on this package.
229 `(#:tests? #f))
230 (propagated-inputs
231 `(("python-dulwich" ,python-dulwich)
232 ("python-pbr" ,python-pbr)))
233 (native-inputs
3bbfc451 234 `(("python-sphinx" ,python-sphinx)))
7a565dc9
MB
235 (home-page "https://docs.openstack.org/openstackdocstheme/latest/")
236 (synopsis "OpenStack Docs Theme")
237 (description
238 "This package provides themes and extensions for Sphinx for publishing
239to docs.openstack.org and developer.openstack.org.")
240 (license asl2.0)))
241
1edd421b
CR
242(define-public python-os-client-config
243 (package
244 (name "python-os-client-config")
a5ff52f8 245 (version "1.12.0")
1edd421b
CR
246 (source
247 (origin
248 (method url-fetch)
a5ff52f8 249 (uri (pypi-uri "os-client-config" version))
1edd421b
CR
250 (sha256
251 (base32
a5ff52f8 252 "1vjn7667pswnmpqv6ngwyqm2xn46w90hi5b4pv2grwfz751cn1lf"))))
1edd421b
CR
253 (build-system python-build-system)
254 (arguments
255 `(#:tests? #f)) ;; Circular dependency with python-oslotest
482d9591 256 (propagated-inputs
1edd421b 257 `(("python-appdirs" ,python-appdirs)
482d9591
HG
258 ("python-pyyaml" ,python-pyyaml)))
259 (native-inputs
260 `(("python-pbr" ,python-pbr)
1edd421b
CR
261 ("python-fixtures" ,python-fixtures)
262 ("python-mimeparse" ,python-mimeparse)
1edd421b 263 ("python-testrepository" ,python-testrepository)
1edd421b
CR
264 ("python-testscenarios" ,python-testscenarios)
265 ("python-testtools" ,python-testtools)))
dbd37c13 266 (home-page "https://www.openstack.org/")
1edd421b
CR
267 (synopsis
268 "OpenStack Client Configuration Library")
269 (description
270 "The OpenStack Client Configuration Library is a library for collecting
271 client configuration for using an OpenStack cloud in a consistent and
272 comprehensive manner.")
273 (license asl2.0)))
274
275(define-public python2-os-client-config
276 (package-with-python2 python-os-client-config))
277
2931f464
CR
278(define-public python-os-testr
279 (package
280 (name "python-os-testr")
43b53bbb 281 (version "0.8.0")
2931f464
CR
282 (source
283 (origin
284 (method url-fetch)
285 (uri (pypi-uri "os-testr" version))
286 (sha256
287 (base32
43b53bbb 288 "0mknd9hlmxmihr755gjkxyjp180380jajq5i3zm34q7y7bi62lss"))))
2931f464
CR
289 (build-system python-build-system)
290 (arguments
291 ;; os-testr uses itself to run the tests. It seems like pbr writes the
292 ;; exectuable in the virtualenv when using tox. Not sure how to do this
293 ;; when building the package. Skip the tests for now.
294 `(#:tests? #f))
295 (propagated-inputs
e116d100
HG
296 `(("python-subunit" ,python-subunit)))
297 (native-inputs
2931f464 298 `(("python-pbr" ,python-pbr)
e116d100
HG
299 ("python-testtools" ,python-testtools)
300 ("python-babel" ,python-babel)))
43b53bbb 301 (home-page "https://www.openstack.org/")
2931f464
CR
302 (synopsis "Testr wrapper to provide functionality for OpenStack projects")
303 (description
304 "Os-testr provides developers with a testr wrapper and an output filter
305 for subunit.")
306 (license asl2.0)))
307
308(define-public python2-os-testr
309 (package-with-python2 python-os-testr))
310
673d1a9d
CR
311(define-public python-stevedore
312 (package
313 (name "python-stevedore")
7eaa3b45 314 (version "3.2.2")
673d1a9d
CR
315 (source
316 (origin
317 (method url-fetch)
2d531d4e 318 (uri (pypi-uri "stevedore" version))
673d1a9d 319 (sha256
1cccdca2 320 (base32
7eaa3b45 321 "1w11lm293afzb73iq0ba9wnmr2rjwymnhr92km4a4xrs7a5qcigq"))))
673d1a9d 322 (build-system python-build-system)
7eaa3b45
MC
323 (arguments
324 ;; The tests are disabled to avoid a circular dependency with
325 ;; python-stestr.
326 `(#:tests? #f))
4b42bd94 327 (native-inputs
7eaa3b45 328 `(("python-pbr" ,python-pbr)))
673d1a9d
CR
329 (home-page "https://github.com/dreamhost/stevedore")
330 (synopsis "Manage dynamic plugins for Python applications")
331 (description
332 "Python makes loading code dynamically easy, allowing you to configure
4b42bd94 333and extend your application by discovering and loading extensions (\"plugins\")
673d1a9d 334at runtime. Many applications implement their own library for doing this,
4b42bd94 335using __import__ or importlib. Stevedore avoids creating yet another extension
673d1a9d
CR
336mechanism by building on top of setuptools entry points. The code for managing
337entry points tends to be repetitive, though, so stevedore provides manager
338classes for implementing common patterns for using dynamically loaded
339extensions.")
340 (license asl2.0)))
341
342(define-public python2-stevedore
79d9effa 343 (package-with-python2 python-stevedore))
673d1a9d 344
465b61fc
CR
345(define-public python-tempest-lib
346 (package
347 (name "python-tempest-lib")
f0ad50af 348 (version "1.0.0")
465b61fc
CR
349 (source
350 (origin
351 (method url-fetch)
352 (uri (pypi-uri "tempest-lib" version))
353 (sha256
354 (base32
f0ad50af 355 "1cpp2vwmawpd29hjsklsps181lq2ah91cl412qvpnz228nf9sqn5"))))
465b61fc
CR
356 (build-system python-build-system)
357 (arguments
f959495b
MB
358 `(#:tests? #f ; FIXME: Requires oslo.log >= 1.14.0.
359 #:phases
465b61fc
CR
360 (modify-phases %standard-phases
361 (add-before
362 'check 'pre-check
363 (lambda _
364 (substitute* "tempest_lib/tests/cli/test_execute.py"
365 (("/bin/ls") (which "ls"))))))))
366 (propagated-inputs
367 `(("python-fixtures" ,python-fixtures)
368 ("python-httplib2" ,python-httplib2)
369 ("python-iso8601" ,python-iso8601)
370 ("python-jsonschema" ,python-jsonschema)
371 ("python-oslo.log" ,python-oslo.log)
372 ("python-paramiko" ,python-paramiko)
373 ("python-pbr" ,python-pbr)
374 ("python-six" ,python-six)))
e7881f3d 375 (native-inputs
465b61fc
CR
376 `(("python-babel" ,python-babel)
377 ("python-mock" ,python-mock)
378 ("python-os-testr" ,python-os-testr)
f3b98f4f 379 ("python-oslotest" ,python-oslotest)))
f0ad50af 380 (home-page "https://www.openstack.org/")
465b61fc
CR
381 (synopsis "OpenStack functional testing library")
382 (description
383 "Tempest-lib is a functional testing library for OpenStack. It provides
384common features used in Tempest.")
385 (license asl2.0)))
386
66cb4210
MC
387\f
388;;;
389;;; Packages from the Oslo library
390;;;
391
ed56af06
CR
392(define-public python-oslo.config
393 (package
394 (name "python-oslo.config")
9e4546a2 395 (version "5.2.0")
ed56af06
CR
396 (source
397 (origin
398 (method url-fetch)
9e4546a2 399 (uri (pypi-uri "oslo.config" version))
ed56af06 400 (sha256
66cb4210
MC
401 (base32
402 "0ymf7jxbq29fifyvkwhfiys1qvljqfxdw8ajwzwaf3yiqidgpxqd"))))
ed56af06
CR
403 (build-system python-build-system)
404 (propagated-inputs
9e4546a2
MB
405 `(("python-debtcollector" ,python-debtcollector)
406 ("python-netaddr" ,python-netaddr)
407 ("python-oslo.i18n" ,python-oslo.i18n)
408 ("python-pbr" ,python-pbr)
409 ("python-rfc3986" ,python-rfc3986)
410 ("python-six" ,python-six)
411 ("python-stevedore" ,python-stevedore)
412 ("python-pyyaml" ,python-pyyaml)))
e7881f3d 413 (native-inputs
9e4546a2
MB
414 `(("python-bandit" ,python-bandit)
415 ("python-coverage" ,python-coverage)
416 ("python-mock" ,python-mock)
417 ("python-openstackdocstheme" ,python-openstackdocstheme)
418 ("python-oslotest" ,python-oslotest)
419 ("python-reno" ,python-reno)
3bbfc451 420 ("python-sphinx" ,python-sphinx)
9e4546a2
MB
421 ("python-testrepository" ,python-testrepository)
422 ("python-testscenarios" ,python-testscenarios)
423 ("python-testtools" ,python-testtools)))
ed56af06
CR
424 (home-page "https://launchpad.net/oslo")
425 (synopsis "Oslo Configuration API")
426 (description
66cb4210 427 "The Oslo configuration API supports parsing command line arguments and
ed56af06
CR
428.ini style configuration files.")
429 (license asl2.0)))
430
c7c7a936
CR
431(define-public python-oslo.context
432 (package
433 (name "python-oslo.context")
9b1315a4 434 (version "3.1.1")
c7c7a936
CR
435 (source
436 (origin
437 (method url-fetch)
e9af5adf 438 (uri (pypi-uri "oslo.context" version))
c7c7a936
CR
439 (sha256
440 (base32
9b1315a4 441 "1l2z186rkd9acrb2ygf53yrdc1lgf7cy1akbhm21kgkzind4p2r6"))))
c7c7a936 442 (build-system python-build-system)
9b1315a4
MC
443 (arguments
444 `(#:phases (modify-phases %standard-phases
445 (add-after 'unpack 'relax-requirements
446 (lambda _
447 (substitute* "test-requirements.txt"
448 (("hacking>=3.0.1,<3.1.0")
449 "hacking>=3.0.1"))
450 #t)))))
32bb0c61 451 (propagated-inputs
9b1315a4 452 `(("python-debtcollector" ,python-debtcollector)))
e7881f3d 453 (native-inputs
9b1315a4
MC
454 `(("python-bandit" ,python-bandit)
455 ("python-coverage" ,python-coverage)
456 ("python-fixtures" ,python-fixtures)
32bb0c61 457 ("python-hacking" ,python-hacking)
9b1315a4
MC
458 ("python-oslotest" ,python-oslotest)
459 ("python-pbr" ,python-pbr)
460 ("python-stestr" ,python-stestr)))
dbd37c13 461 (home-page "https://launchpad.net/oslo")
c7c7a936
CR
462 (synopsis "Oslo context library")
463 (description
464 "The Oslo context library has helpers to maintain useful information
465about a request context. The request context is usually populated in the WSGI
466pipeline and used by various modules such as logging.")
467 (license asl2.0)))
468
8531b326
CR
469(define-public python-oslo.i18n
470 (package
471 (name "python-oslo.i18n")
207e4d27 472 (version "3.20.0")
8531b326 473 (source
e4cc19c8
MC
474 (origin
475 (method url-fetch)
476 (uri (pypi-uri "oslo.i18n" version))
477 (sha256
478 (base32
479 "0kjcdw4bk3mi4vqmqwhhq053kxbbbj05si6nwxd1pzx33z067ky3"))))
8531b326
CR
480 (build-system python-build-system)
481 (propagated-inputs
e4cc19c8
MC
482 `(("python-babel" ,python-babel)
483 ("python-six" ,python-six)))
e7881f3d 484 (native-inputs
e4cc19c8
MC
485 `(("python-pbr" ,python-pbr)
486 ;; Tests
487 ("python-mock" ,python-mock)
488 ("python-mox3" ,python-mox3)
489 ("python-oslotest" ,python-oslotest)
490 ("python-testscenarios" ,python-testscenarios)))
dbd37c13 491 (home-page "https://launchpad.net/oslo")
8531b326
CR
492 (synopsis "Oslo internationalization (i18n) library")
493 (description
e4cc19c8 494 "The oslo.i18n library contain utilities for working with
8531b326
CR
495internationalization (i18n) features, especially translation for text strings
496in an application or library.")
497 (license asl2.0)))
498
aee6412a
CR
499(define-public python-oslo.log
500 (package
501 (name "python-oslo.log")
f8a4547c 502 (version "3.36.0")
aee6412a
CR
503 (source
504 (origin
505 (method url-fetch)
f8a4547c 506 (uri (pypi-uri "oslo.log" version))
aee6412a
CR
507 (sha256
508 (base32
f8a4547c 509 "0h7hplf1h8k24v75m3mq1jlrl74x5ynyr4hwgffsg5campxnza4x"))))
aee6412a
CR
510 (build-system python-build-system)
511 (propagated-inputs
f8a4547c
MB
512 `(("python-dateutil" ,python-dateutil)
513 ("python-debtcollector" ,python-debtcollector)
514 ("python-monotonic" ,python-monotonic)
aee6412a
CR
515 ("python-oslo.config" ,python-oslo.config)
516 ("python-oslo.context" ,python-oslo.context)
517 ("python-oslo.i18n" ,python-oslo.i18n)
518 ("python-oslo.utils" ,python-oslo.utils)
519 ("python-oslo.serialization" ,python-oslo.serialization)
f8a4547c
MB
520 ("python-pbr" ,python-pbr)
521 ("python-pyinotify" ,python-pyinotify)
aee6412a 522 ("python-six" ,python-six)))
e7881f3d 523 (native-inputs
f8a4547c 524 `(("python-mock" ,python-mock)
aee6412a 525 ("python-oslotest" ,python-oslotest)
f8a4547c
MB
526 ("python-subunit" ,python-subunit)
527 ("python-testrepository" ,python-testrepository)
528 ("python-testtools" ,python-testtools)))
dbd37c13 529 (home-page "https://launchpad.net/oslo")
aee6412a
CR
530 (synopsis "Python logging library of the Oslo project")
531 (description
532 "The oslo.log (logging) configuration library provides standardized
533configuration for all OpenStack projects. It also provides custom formatters,
534handlers and support for context specific logging (like resource id’s etc).")
535 (license asl2.0)))
536
5702efe3
CR
537(define-public python-oslo.serialization
538 (package
539 (name "python-oslo.serialization")
caf3713a 540 (version "2.24.0")
5702efe3
CR
541 (source
542 (origin
543 (method url-fetch)
278c0efd 544 (uri (pypi-uri "oslo.serialization" version))
5702efe3
CR
545 (sha256
546 (base32
caf3713a 547 "08bxkp98c617y58x630xq44iiffm7f0f3cwh6zbnlkgq0zgh7jk1"))))
5702efe3
CR
548 (build-system python-build-system)
549 (propagated-inputs
caf3713a 550 `(("python-msgpack" ,python-msgpack)
5702efe3
CR
551 ("python-netaddr" ,python-netaddr)
552 ("python-oslo.utils" ,python-oslo.utils)
5702efe3
CR
553 ("python-six" ,python-six)
554 ("python-pytz" ,python-pytz)))
e7881f3d 555 (native-inputs
caf3713a 556 `(("python-pbr" ,python-pbr)
5702efe3
CR
557 ;; Tests.
558 ("python-mock" ,python-mock)
559 ("python-oslo.i18n" ,python-oslo.i18n)
560 ("python-oslotest" ,python-oslotest)))
dbd37c13 561 (home-page "https://launchpad.net/oslo")
5702efe3
CR
562 (synopsis "Oslo serialization library")
563 (description
564 "The oslo.serialization library provides support for representing objects
565in transmittable and storable formats, such as JSON and MessagePack.")
566 (license asl2.0)))
567
c8d7e063
DM
568(define-public python-reno
569 (package
570 (name "python-reno")
d2ae66b7 571 (version "2.7.0")
c8d7e063
DM
572 (source
573 (origin
574 (method url-fetch)
575 (uri (pypi-uri "reno" version))
576 (sha256
d2ae66b7 577 (base32 "0gwzi5dvacqx43smxl3rd1z33npn7gfhm50bvgmq90fib2q431wc"))))
c8d7e063
DM
578 (build-system python-build-system)
579 (arguments
580 `(#:phases
581 (modify-phases %standard-phases
582 (add-before 'check 'init-git
583 (lambda _
584 ;; reno expects a git repo
c8780a10 585 (invoke "git" "init"))))))
c8d7e063 586 (propagated-inputs
d2ae66b7
MB
587 `(("python-dulwich" ,python-dulwich)
588 ("python-pbr" ,python-pbr)
c8d7e063
DM
589 ("python-pyyaml" ,python-pyyaml)
590 ("python-six" ,python-six)))
591 (native-inputs
592 `(("python-testtools" ,python-testtools)
c8d7e063
DM
593 ("python-testscenarios" ,python-testscenarios)
594 ("python-testrepository" ,python-testrepository)
595 ("python-mock" ,python-mock)
d2ae66b7
MB
596 ("python-docutils" ,python-docutils)
597 ("python-sphinx" ,python-sphinx)
c8d7e063 598 ("gnupg" ,gnupg)
c8780a10 599 ("git" ,git-minimal)))
d39885a8 600 (home-page "https://docs.openstack.org/reno/latest/")
c8d7e063
DM
601 (synopsis "Release notes manager")
602 (description "Reno is a tool for storing release notes in a git repository
603and building documentation from them.")
604 (license asl2.0)))
605
606(define-public python2-reno
d2ae66b7 607 (package-with-python2 python-reno))
c8d7e063 608
f4c7dc55
CR
609(define-public python-oslosphinx
610 (package
611 (name "python-oslosphinx")
b5b548ef 612 (version "4.18.0")
f4c7dc55
CR
613 (source
614 (origin
615 (method url-fetch)
616 (uri (pypi-uri "oslosphinx" version))
617 (sha256
618 (base32
b5b548ef 619 "1xm41857vzrzjmnyi6bqirg4i5qa61v7wxcsdc4q1nzgr3ndgz5k"))))
f4c7dc55 620 (build-system python-build-system)
23015b4f 621 (arguments
27693b1e
DM
622 `(#:phases
623 (modify-phases %standard-phases
b5b548ef 624 (add-after 'unpack 'relax-requirements
27693b1e 625 (lambda _
b5b548ef
MC
626 (substitute* "test-requirements.txt"
627 (("hacking!=0.13.0,<0.14,>=0.12.0")
628 "hacking!=0.13.0,>=0.12.0"))
629 #t)))))
f4c7dc55 630 (propagated-inputs
5c6c3fbd 631 `(("python-requests" ,python-requests)))
e7881f3d 632 (native-inputs
b5b548ef
MC
633 `(("python-hacking" ,python-hacking)
634 ("python-openstackdocstheme" ,python-openstackdocstheme)
635 ("python-pbr" ,python-pbr)
636 ("python-reno" ,python-reno)
5c6c3fbd 637 ("python-sphinx" ,python-sphinx)))
dbd37c13 638 (home-page "https://www.openstack.org/")
f4c7dc55 639 (synopsis "OpenStack sphinx extensions and theme")
5c6c3fbd
MC
640 (description "This package provides themes and extensions for Sphinx
641documentation from the OpenStack project.")
f4c7dc55
CR
642 (license asl2.0)))
643
2053949a
CR
644(define-public python-oslotest
645 (package
646 (name "python-oslotest")
21b78681 647 (version "4.4.1")
2053949a 648 (source
0b5f73ce
MC
649 (origin
650 (method url-fetch)
651 (uri (pypi-uri "oslotest" version))
652 (sha256
653 (base32
21b78681 654 "0r50sz55m8ljv2vk1k7sp88iz1iqq4p9w6kb8hn8g8c50r9zdi5i"))))
2053949a 655 (build-system python-build-system)
21b78681
MC
656 (arguments
657 ;; The tests are disabled to avoid a circular dependency with oslo.config.
658 `(#:tests? #f))
2053949a 659 (propagated-inputs
0b5f73ce 660 `(("python-fixtures" ,python-fixtures)
0b5f73ce
MC
661 ("python-six" ,python-six)
662 ("python-subunit" ,python-subunit)
0b5f73ce 663 ("python-testtools" ,python-testtools)))
dbd37c13 664 (home-page "https://launchpad.net/oslo")
2053949a 665 (synopsis "Oslo test framework")
0b5f73ce
MC
666 (description "The Oslo Test framework provides common fixtures, support
667for debugging, and better support for mocking results.")
2053949a
CR
668 (license asl2.0)))
669
670(define-public python2-oslotest
be3f88c2 671 (package-with-python2 python-oslotest))
27cc9f25
CR
672
673(define-public python-oslo.utils
674 (package
675 (name "python-oslo.utils")
2847d833 676 (version "3.36.2")
27cc9f25
CR
677 (source
678 (origin
679 (method url-fetch)
94ce6b49 680 (uri (pypi-uri "oslo.utils" version))
27cc9f25
CR
681 (sha256
682 (base32
2847d833 683 "1ipjcgg9z697wmibhcbg5lqpk5gafakdx4qkff3w255zr0mvw04r"))))
27cc9f25
CR
684 (build-system python-build-system)
685 (propagated-inputs
686 `(("python-debtcollector" ,python-debtcollector)
687 ("python-oslo.i18n" ,python-oslo.i18n)
688 ("python-iso8601" ,python-iso8601)
689 ("python-monotonic" ,python-monotonic)
690 ("python-netaddr" ,python-netaddr)
691 ("python-netifaces" ,python-netifaces)
b51fbd6d 692 ("python-pyparsing" ,python-pyparsing)
27cc9f25
CR
693 ("python-pytz" ,python-pytz)
694 ("python-six" ,python-six)))
e7881f3d 695 (native-inputs
b51fbd6d 696 `(("python-pbr" ,python-pbr)
27cc9f25 697 ;; Tests.
ad59ebda 698 ("python-bandit" ,python-bandit)
b51fbd6d
MB
699 ("python-ddt" ,python-ddt)
700 ("python-fixtures" ,python-fixtures)
ad59ebda 701 ("python-oslo.config" ,python-oslo.config)
27cc9f25
CR
702 ("python-oslotest" ,python-oslotest)
703 ("python-mock" ,python-mock)
b51fbd6d
MB
704 ("python-testrepository" ,python-testrepository)
705 ("python-testscenarios" ,python-testscenarios)
706 ("python-testtools" ,python-testtools)))
dbd37c13 707 (home-page "https://launchpad.net/oslo")
27cc9f25
CR
708 (synopsis "Oslo utility library")
709 (description
710 "The @code{oslo.utils} library provides support for common utility type
711functions, such as encoding, exception handling, string manipulation, and time
712handling.")
713 (license asl2.0)))
714
c9e330d0
EF
715(define-public python-keystoneclient
716 (package
717 (name "python-keystoneclient")
718 (version "1.8.1")
719 (source
720 (origin
721 (method url-fetch)
722 (uri (pypi-uri "python-keystoneclient" version))
723 (sha256
724 (base32
725 "1w4csvkah67rfpxylxnvs2s3594i0f9isy8pf4gnsqs5zirvjaa4"))))
726 (build-system python-build-system)
bfba0836
MB
727 (arguments
728 '(#:tests? #f)) ; FIXME: Many tests are failing.
c9e330d0 729 (native-inputs
f3b98f4f 730 `(("python-sphinx" ,python-sphinx)
c9e330d0
EF
731 ;; and some packages for the tests
732 ("openssl" ,openssl)
733 ("python-coverage" ,python-coverage)
734 ("python-discover" ,python-discover)
735 ("python-fixtures" ,python-fixtures)
736 ("python-hacking" ,python-hacking)
737 ("python-keyring" ,python-keyring)
738 ("python-lxml" ,python-lxml)
739 ("python-mock" ,python-mock)
740 ("python-mox3" ,python-mox3)
741 ("python-oauthlib" ,python-oauthlib)
742 ("python-oslosphinx" ,python-oslosphinx)
743 ("python-oslotest" ,python-oslotest)
744 ("python-pycrypto" ,python-pycrypto)
745 ("python-requests-mock" ,python-requests-mock)
746 ("python-temptest-lib" ,python-tempest-lib)
747 ("python-testrepository" ,python-testrepository)
748 ("python-testresources" ,python-testresources)
749 ("python-testtools" ,python-testtools)
750 ("python-webob" ,python-webob)))
751 (propagated-inputs
752 `(("python-babel" ,python-babel)
753 ("python-debtcollector" ,python-debtcollector)
754 ("python-iso8601" ,python-iso8601)
755 ("python-netaddr" ,python-netaddr)
756 ("python-oslo.config" ,python-oslo.config)
757 ("python-oslo.i18n" ,python-oslo.i18n)
758 ("python-oslo.serialization" ,python-oslo.serialization)
759 ("python-oslo.utils" ,python-oslo.utils)
760 ("python-pbr" ,python-pbr)
761 ("python-prettytable" ,python-prettytable)
762 ("python-requests" ,python-requests)
763 ("python-six" ,python-six)
764 ("python-stevedore" ,python-stevedore)))
dbd37c13 765 (home-page "https://www.openstack.org/")
c9e330d0
EF
766 (synopsis "Client Library for OpenStack Identity")
767 (description
768 "Python-keystoneclient is the identity service used by OpenStack for
769authentication (authN) and high-level authorization (authZ). It currently
770supports token-based authN with user/service authZ, and is scalable to support
771OAuth, SAML, and OpenID in future versions. Out of the box, Keystone uses
772SQLite for its identity store database, with the option to connect to external
773LDAP.")
774 (license asl2.0)))
775
8f0cc2ff
EF
776(define-public python-swiftclient
777 (package
778 (name "python-swiftclient")
779 (version "2.6.0")
780 (source
781 (origin
782 (method url-fetch)
783 (uri (pypi-uri "python-swiftclient" version))
784 (sha256
785 (base32
786 "1j33l4z9vqh0scfncl4fxg01zr1hgqxhhai6gvcih1gccqm4nd7p"))))
787 (build-system python-build-system)
788 (native-inputs
b3546174 789 `(("python-pbr" ,python-pbr)
8f0cc2ff
EF
790 ("python-sphinx" ,python-sphinx)
791 ;; The folloing packages are needed for the tests.
792 ("python-coverage" ,python-coverage)
793 ("python-discover" ,python-discover)
794 ("python-hacking" ,python-hacking)
795 ("python-mock" ,python-mock)
796 ("python-oslosphinx" ,python-oslosphinx)
797 ("python-keystoneclient" ,python-keystoneclient)
798 ("python-testrepository" ,python-testrepository)
799 ("python-testtools" ,python-testtools)))
800 (propagated-inputs
801 `(("python-requests" ,python-requests)
802 ("python-six" ,python-six)))
dbd37c13 803 (home-page "https://www.openstack.org/")
8f0cc2ff
EF
804 (synopsis "OpenStack Object Storage API Client Library")
805 (description
806 "OpenStack Object Storage (code-named Swift) creates redundant, scalable
807object storage using clusters of standardized servers to store petabytes of
808accessible data. It is not a file system or real-time data storage system, but
809rather a long-term storage system for a more permanent type of static data that
810can be retrieved, leveraged, and then updated if necessary. Primary examples of
811data that best fit this type of storage model are virtual machine images, photo
812storage, email storage and backup archiving. Having no central \"brain\" or
813master point of control provides greater scalability, redundancy and
814permanence.")
0ab4c392 815 (license asl2.0)))
8f0cc2ff 816
d4431993
CL
817(define-public python-git-review
818 (package
819 (name "python-git-review")
cbb488d6 820 (version "1.28.0")
d4431993
CL
821 (source
822 (origin
823 (method url-fetch)
824 (uri (pypi-uri "git-review" version))
825 (sha256
cbb488d6 826 (base32 "0nn17mfqvsa3ryjz53qjslmf60clc0vx2115kkj66h28p6vsnflf"))))
d4431993 827 (build-system python-build-system)
381000d7 828 (arguments
cbb488d6 829 '(#:tests? #f ; tests require a running Gerrit server
381000d7
CL
830 #:phases
831 (modify-phases %standard-phases
832 (add-after 'install 'wrap-program
833 (lambda* (#:key inputs outputs #:allow-other-keys)
834 (let* ((out (assoc-ref outputs "out"))
835 (git (assoc-ref inputs "git"))
836 (openssh (assoc-ref inputs "openssh")))
837 (wrap-program (string-append out "/bin/git-review")
838 `("PATH" ":" prefix
839 ,(map (lambda (dir)
840 (string-append dir "/bin"))
67c05f58
CL
841 (list git openssh)))))
842 #t)))))
d4431993
CL
843 (native-inputs
844 `(("python-pbr" ,python-pbr)))
482d9591
HG
845 (propagated-inputs
846 `(("python-requests" ,python-requests)))
d4431993 847 (inputs
482d9591 848 `(("git" ,git)
381000d7 849 ("openssh" ,openssh)))
dbd37c13 850 (home-page "https://docs.openstack.org/infra/git-review/")
d4431993
CL
851 (synopsis "Command-line tool for Gerrit")
852 (description
853 "Git-review is a command-line tool that helps submitting Git branches to
854Gerrit for review, or fetching existing ones.")
855 (license asl2.0)))
856
857(define-public python2-git-review
5c31f4aa 858 (package-with-python2 python-git-review))