add nix packaging files
This commit is contained in:
parent
cc153ab05c
commit
c4f666c027
118
default.nix
Normal file
118
default.nix
Normal file
|
@ -0,0 +1,118 @@
|
|||
{
|
||||
pkgs,
|
||||
python ? pkgs.python39,
|
||||
...}:
|
||||
let
|
||||
urlobject = with python.pkgs; buildPythonPackage rec {
|
||||
pname = "URLObject";
|
||||
version = "2.4.3";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "47b2e20e6ab9c8366b2f4a3566b6ff4053025dad311c4bb71279bbcfa2430caa";
|
||||
};
|
||||
doCheck = true;
|
||||
propagatedBuildInputs = [
|
||||
];
|
||||
|
||||
};
|
||||
|
||||
|
||||
flask-dance = with python.pkgs; buildPythonPackage rec {
|
||||
pname = "Flask-Dance";
|
||||
version = "5.1.0";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "9eb5a404ef1b06a58aabbe5ac496908bda0482af1cf08e8c00188493405842fd";
|
||||
};
|
||||
doCheck = false;
|
||||
propagatedBuildInputs = [
|
||||
requests
|
||||
oauthlib
|
||||
requests_oauthlib
|
||||
flask
|
||||
urlobject
|
||||
];
|
||||
checkInputs = [
|
||||
pytest
|
||||
pytest-mock
|
||||
responses
|
||||
freezegun
|
||||
coverage
|
||||
# testing sqlalchemy support
|
||||
sqlalchemy
|
||||
flask_sqlalchemy
|
||||
# testing integration with other extensions
|
||||
flask_login
|
||||
flask-caching
|
||||
betamax
|
||||
# we need the `signedtoken` extra for `oauthlib`
|
||||
# oauthlib[signedtoken]
|
||||
];
|
||||
|
||||
};
|
||||
ldap3-orm = with python.pkgs; buildPythonPackage rec {
|
||||
pname = "ldap3-orm";
|
||||
version = "2.7.0";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "8783886d4ce90d66da61ce24619593a265b50f0de1fbebe86df95c6788661664";
|
||||
};
|
||||
doCheck = false;
|
||||
propagatedBuildInputs = [
|
||||
ldap3
|
||||
six
|
||||
];
|
||||
|
||||
};
|
||||
u2flib-server = {};
|
||||
ory-hydra-client = with python.pkgs; buildPythonPackage rec {
|
||||
pname = "ory-hydra-client";
|
||||
version = "1.10.6";
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "57f877e55a8f202db27f5cbae9c55a1b1a91848ef46d0cbd3b710ef77882095c";
|
||||
};
|
||||
doCheck = false;
|
||||
propagatedBuildInputs = [
|
||||
urllib3
|
||||
python-dateutil
|
||||
];
|
||||
|
||||
};
|
||||
in
|
||||
{
|
||||
nativeBuildInputs = with python.pkgs; [
|
||||
flask
|
||||
flask-restful
|
||||
flask_sqlalchemy
|
||||
flask_wtf
|
||||
flask-babel
|
||||
flask_login
|
||||
requests
|
||||
requests_oauthlib
|
||||
ldap3
|
||||
ldap3-orm
|
||||
pyotp
|
||||
cryptography
|
||||
blinker
|
||||
ory-hydra-client
|
||||
|
||||
gunicorn
|
||||
|
||||
flask-dance
|
||||
|
||||
#python-u2flib-server
|
||||
|
||||
|
||||
#flask-debug
|
||||
|
||||
];
|
||||
|
||||
testBuildInputs = with python.pkgs; [
|
||||
pytest
|
||||
pytest-mypy
|
||||
flask_testing
|
||||
tox
|
||||
mypy
|
||||
];
|
||||
}
|
|
@ -1,12 +1,12 @@
|
|||
from flask.app import Flask
|
||||
from flask import g, redirect, request
|
||||
from flask.helpers import url_for
|
||||
from jwkest.jwk import RSAKey, rsa_load
|
||||
from flask_babel import Babel
|
||||
from flask_login import LoginManager
|
||||
import time
|
||||
import subprocess
|
||||
import ory_hydra_client as hydra
|
||||
import ory_hydra_client.api.admin_api as hydra_admin_api
|
||||
|
||||
from ldap3 import Connection, Server, ALL
|
||||
|
||||
|
@ -55,7 +55,7 @@ def init_app(name=None):
|
|||
username=app.config['HYDRA_ADMIN_USER'],
|
||||
password=app.config['HYDRA_ADMIN_PASSWORD'])
|
||||
hydra_client = hydra.ApiClient(hydra_config)
|
||||
app.hydra_api = hydra.AdminApi(hydra_client)
|
||||
app.hydra_api = hydra_admin_api.AdminApi(hydra_client)
|
||||
|
||||
from .views import auth_views, frontend_views, init_login_manager, api_views, pki_views, admin_views
|
||||
init_login_manager(app)
|
||||
|
|
|
@ -4,7 +4,6 @@ from flask import current_app, session
|
|||
from flask import jsonify
|
||||
from flask.helpers import make_response
|
||||
from flask.templating import render_template
|
||||
from oic.oic.message import TokenErrorResponse, UserInfoErrorResponse, EndSessionRequest
|
||||
|
||||
from flask import Blueprint, render_template, request, url_for
|
||||
import logging
|
||||
|
|
12
shell.nix
Normal file
12
shell.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
pkgs ? import <nixpkgs> {},
|
||||
python ? pkgs.python39
|
||||
}:
|
||||
let
|
||||
settings = import ./default.nix {inherit pkgs python;};
|
||||
in
|
||||
pkgs.mkShell {
|
||||
# nativeBuildInputs is usually what you want -- tools you need to run
|
||||
nativeBuildInputs = settings.nativeBuildInputs ++ settings.testBuildInputs;
|
||||
}
|
||||
|
|
@ -42,8 +42,4 @@
|
|||
{% endblock %}
|
||||
|
||||
|
||||
{% block script_js %}
|
||||
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
|
Loading…
Reference in a new issue