python312Packages.types-aiobotocore: 2.15.2 -> 2.15.2.post3 (#361801)
[NixPkgs.git] / pkgs / by-name / di / diagrams-as-code / package.nix
blobfd748332c230eab0e545d604c954f5cdc5909be5
2   lib,
3   python3Packages,
4   fetchFromGitHub,
5   runCommand,
6   diagrams-as-code,
7 }:
9 python3Packages.buildPythonPackage rec {
10   pname = "diagrams-as-code";
11   version = "0.0.4";
12   pyproject = true;
14   src = fetchFromGitHub {
15     owner = "dmytrostriletskyi";
16     repo = "diagrams-as-code";
17     rev = "refs/tags/v${version}";
18     hash = "sha256-cd602eQvNCUQuCdn/RpcfURcDHjXLZ0gAG+SObB++Q0=";
19   };
21   build-system = [ python3Packages.setuptools ];
23   dependencies = with python3Packages; [
24     diagrams
25     pydantic
26     pyyaml
27   ];
29   pythonRelaxDeps = [
30     "diagrams"
31     "pydantic"
32     "pyyaml"
33   ];
35   pythonImportsCheck = [ "diagrams_as_code" ];
37   doCheck = false; # no tests
39   passthru.tests = {
40     simple = runCommand "${pname}-test" { } ''
41       # giving full path to diagrams-as-code causes
42       # a bad path concatenation
43       cp ${diagrams-as-code.src}/examples/all-fields.yaml .
45       ${lib.getExe diagrams-as-code} all-fields.yaml
47       cp web-services-architecture-aws.jpg $out
48     '';
49   };
51   meta = {
52     description = "Declarative configurations using YAML for drawing cloud system architectures";
53     homepage = "https://github.com/dmytrostriletskyi/diagrams-as-code";
54     license = lib.licenses.mit;
55     maintainers = with lib.maintainers; [ sigmanificient ];
56     mainProgram = "diagrams-as-code";
57   };