summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorChris Ostrouchov <chris.ostrouchov@gmail.com>2019-07-18 21:09:16 -0400
committerAriel <ingenieroariel@gmail.com>2019-11-15 16:06:41 -0500
commitd6fdec8d247f8b082b937961a253a9d35757bb87 (patch)
tree19463b7bfcf98680e3aeca243bd86f70a97d9909 /pkgs/development
parent20e87c1c8c30928b492240d3c687b8062dd69ded (diff)
downloadnixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.tar
nixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.tar.gz
nixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.tar.bz2
nixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.tar.lz
nixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.tar.xz
nixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.tar.zst
nixpkgs-d6fdec8d247f8b082b937961a253a9d35757bb87.zip
apache-airflow: refactor add as python application
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/python-modules/apache-airflow/default.nix32
1 files changed, 23 insertions, 9 deletions
diff --git a/pkgs/development/python-modules/apache-airflow/default.nix b/pkgs/development/python-modules/apache-airflow/default.nix
index a0f2673b1fc..40f0952d17c 100644
--- a/pkgs/development/python-modules/apache-airflow/default.nix
+++ b/pkgs/development/python-modules/apache-airflow/default.nix
@@ -1,6 +1,8 @@
 { lib
+, stdenv
 , buildPythonPackage
 , fetchPypi
+, fetchFromGitHub
 , alembic
 , configparser
 , croniter
@@ -12,6 +14,7 @@
 , flask_login
 , flask-swagger
 , flask_wtf
+, flask-bcrypt
 , funcsigs
 , future
 , GitPython
@@ -19,6 +22,7 @@
 , iso8601
 , json-merge-patch
 , jinja2
+, ldap3
 , lxml
 , markdown
 , pandas
@@ -29,6 +33,7 @@
 , python-dateutil
 , requests
 , setproctitle
+, snakebite
 , sqlalchemy
 , tabulate
 , tenacity
@@ -78,9 +83,11 @@ buildPythonPackage rec {
   version = "1.10.3";
 
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "73840fa3d2f3a523010ce685aa15714d01a4cf42bd6bd77716c4321f82bab140";
+  src = fetchFromGitHub {
+    owner = "apache";
+    repo = "airflow";
+    rev = version;
+    sha256 = "040d1wbkcapkgb220yzk2dicnghhynj24m2xlbmqg6j54f007j94";
   };
 
   propagatedBuildInputs = [
@@ -91,6 +98,7 @@ buildPythonPackage rec {
     flask
     flask-appbuilder1
     flask-admin
+    flask-bcrypt
     flask-caching
     flask_login
     flask-swagger
@@ -102,6 +110,7 @@ buildPythonPackage rec {
     iso8601
     json-merge-patch
     jinja2
+    ldap3
     lxml
     markdown
     pandas
@@ -124,6 +133,7 @@ buildPythonPackage rec {
   ] ++ lib.optionals isPy27 [ enum34 typing ];
 
   checkInputs = [
+    snakebite
     nose
   ];
 
@@ -142,6 +152,9 @@ buildPythonPackage rec {
      --replace "future>=0.16.0, <0.17" "future" \
      --replace "tenacity==4.12.0" "tenacity" \
      --replace "werkzeug>=0.14.1, <0.15.0" "werkzeug"
+
+   substituteInPlace tests/core.py \
+     --replace "/bin/bash" "${stdenv.shell}"
   '';
 
   checkPhase = ''
@@ -149,15 +162,16 @@ buildPythonPackage rec {
    export AIRFLOW_HOME=$HOME
    export AIRFLOW__CORE__UNIT_TEST_MODE=True
    export AIRFLOW_DB="$HOME/airflow.db"
+   export PATH=$PATH:$out/bin
 
-   $out/bin/airflow initdb
-   $out/bin/airflow resetdb
-   nosetests --cover-package=airflow
+   airflow version
+   airflow initdb
+   airflow resetdb -y
+   nosetests tests.core.CoreTest
+   ## all tests
+   # nosetests --cover-package=airflow
   '';
 
-  # tests are extremely complex to run
-  doCheck = false;
-
   meta = with lib; {
     description = "Programmatically author, schedule and monitor data pipelines";
     homepage = http://airflow.apache.org/;