1{
2 lib,
3 buildPythonPackage,
4 celery,
5 cron-descriptor,
6 django-timezone-field,
7 ephem,
8 fetchFromGitHub,
9 pytest-django,
10 pytest-timeout,
11 pytestCheckHook,
12 python-crontab,
13 pythonOlder,
14 setuptools,
15 tzdata,
16}:
17
18buildPythonPackage rec {
19 pname = "django-celery-beat";
20 version = "2.8.1";
21 pyproject = true;
22
23 disabled = pythonOlder "3.8";
24
25 src = fetchFromGitHub {
26 owner = "celery";
27 repo = "django-celery-beat";
28 tag = "v${version}";
29 hash = "sha256-pakOpch5r2ug0UDSqEU34qr4Tz1/mkuFiHW+IOUuGcc=";
30 };
31
32 pythonRelaxDeps = [ "django" ];
33
34 build-system = [ setuptools ];
35
36 dependencies = [
37 cron-descriptor
38 python-crontab
39 celery
40 django-timezone-field
41 tzdata
42 ];
43
44 nativeCheckInputs = [
45 ephem
46 pytest-timeout
47 pytest-django
48 pytestCheckHook
49 ];
50
51 disabledTestPaths = [
52 # Connection error
53 "t/unit/test_schedulers.py"
54 ];
55
56 pythonImportsCheck = [ "django_celery_beat" ];
57
58 meta = with lib; {
59 description = "Celery Periodic Tasks backed by the Django ORM";
60 homepage = "https://github.com/celery/django-celery-beat";
61 changelog = "https://github.com/celery/django-celery-beat/releases/tag/${src.tag}";
62 license = licenses.bsd3;
63 maintainers = with maintainers; [ onny ];
64 };
65}