python310Packages.dns-lexicon: init at 3.14.1

This commit is contained in:
Antoine Viallon 2023-09-14 11:37:04 +02:00
parent 3332da283a
commit a6d734cd8a
No known key found for this signature in database
GPG key ID: 186FC35EDEB25716
2 changed files with 86 additions and 0 deletions

View file

@ -0,0 +1,84 @@
{ buildPythonPackage
, fetchFromGitHub
, poetry-core
, beautifulsoup4
, cryptography
, importlib-metadata
, pyyaml
, requests
, tldextract
, pytestCheckHook
, pytest-vcr
# Optional depedencies
, boto3
, localzone
, softlayer
, zeep
, dnspython
, oci
, lib
}:
buildPythonPackage rec {
pname = "dns_lexicon";
version = "3.14.1";
format = "pyproject";
src = fetchFromGitHub {
owner = "Analogj";
repo = "lexicon";
rev = "v${version}";
hash = "sha256-flK2G9mdUWMUACQPo6TqYZ388EacIqkq//tCzUS+Eo8=";
};
nativeBuildInputs = [ poetry-core ];
nativeCheckInputs = [
pytestCheckHook
pytest-vcr
] ++ passthru.optional-dependencies.full;
propagatedBuildInputs = [
beautifulsoup4
cryptography
importlib-metadata
pyyaml
requests
tldextract
];
passthru.optional-dependencies = {
route53 = [ boto3 ];
localzone = [ localzone ];
softlayer = [ softlayer ];
ddns = [ dnspython ];
duckdns = [ dnspython ];
oci = [ oci ];
full = [ boto3 localzone softlayer zeep dnspython oci ];
};
pytestFlagsArray = [
"tests/"
];
disabledTestPaths = [
# Needs network access
"tests/providers/test_auto.py"
# Needs network access (and an API token)
"tests/providers/test_namecheap.py"
];
pythonImportsCheck = [
"lexicon"
];
meta = with lib; {
description = "Manipulate DNS records on various DNS providers in a standardized way";
homepage = "https://github.com/AnalogJ/lexicon";
changelog = "https://github.com/AnalogJ/lexicon/blob/v${version}/CHANGELOG.md";
maintainers = with maintainers; [ aviallon ];
license = with licenses; [ mit ];
};
}

View file

@ -3124,6 +3124,8 @@ self: super: with self; {
dnspython = callPackage ../development/python-modules/dnspython { };
dns-lexicon = callPackage ../development/python-modules/dns-lexicon { };
doc8 = callPackage ../development/python-modules/doc8 { };
docformatter = callPackage ../development/python-modules/docformatter { };