1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, fetchpatch
5, python-dateutil
6, celery
7, redis
8, tenacity
9, pytestCheckHook
10, pytz
11, fakeredis
12, mock
13}:
14
15buildPythonPackage rec {
16 pname = "celery-redbeat";
17 version = "2.1.0";
18
19 src = fetchFromGitHub {
20 owner = "sibson";
21 repo = "redbeat";
22 rev = "v${version}";
23 hash = "sha256-WW/OYa7TWEKkata1eULir29wHaCnavBJebn4GrBzmWY=";
24 };
25
26 patches = [
27 (fetchpatch {
28 # celery 5.3.0 support
29 url = "https://github.com/sibson/redbeat/commit/4240e17172a4d9d2744d5c4da3cfca0e0a024e2e.patch";
30 hash = "sha256-quEfSFhv0sIpsKHX1CpFhbMC8LYXA8NASWYU8MMYPSk=";
31 })
32 ];
33
34 propagatedBuildInputs = [
35 celery
36 python-dateutil
37 redis
38 tenacity
39 ];
40
41 nativeCheckInputs = [
42 fakeredis
43 mock
44 pytestCheckHook
45 pytz
46 ];
47
48 pythonImportsCheck = [ "redbeat" ];
49
50 meta = with lib; {
51 description = "Database-backed Periodic Tasks";
52 homepage = "https://github.com/celery/django-celery-beat";
53 license = licenses.bsd3;
54 maintainers = with maintainers; [ onny ];
55 };
56}