fluidattacks_core_models 14.0.0__tar.gz → 14.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/PKG-INFO +1 -1
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/__init__.py +6 -0
- fluidattacks_core_models-14.2.0/fluidattacks_core/models/scanners/resolves_config.py +6 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/scan_config.py +4 -0
- fluidattacks_core_models-14.2.0/fluidattacks_core/models/scanners/sspm_config.py +34 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/pyproject.toml +1 -1
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_model_scanner.py +24 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/uv.lock +1 -1
- fluidattacks_core_models-14.0.0/build/default.nix +0 -19
- fluidattacks_core_models-14.0.0/build/filter.nix +0 -13
- fluidattacks_core_models-14.0.0/flake.lock +0 -303
- fluidattacks_core_models-14.0.0/flake.nix +0 -29
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/.envrc +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/.gitignore +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/__init__.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/py.typed +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/apk_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/common_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/containers_sca_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/cspm_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/dast_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/loader.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/sast_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/sbom_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/sca_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/scanners/sniffs_config.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/state_machines/__init__.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/state_machines/component_orchestrator.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/state_machines/root_scanner.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/fluidattacks_core/models/state_machines/types.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/import-linter.cfg +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/mypy.ini +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/ruff.toml +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/__init__.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_component_orchestrator.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_loader_env.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_root_scanner.py +0 -0
- {fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_state_machines.py +0 -0
|
@@ -20,6 +20,7 @@ from fluidattacks_core.models.scanners.dast_config import (
|
|
|
20
20
|
DastUrl,
|
|
21
21
|
)
|
|
22
22
|
from fluidattacks_core.models.scanners.loader import build_config, load_yaml_mapping
|
|
23
|
+
from fluidattacks_core.models.scanners.resolves_config import ResolvesConfig
|
|
23
24
|
from fluidattacks_core.models.scanners.sast_config import SastConfig
|
|
24
25
|
from fluidattacks_core.models.scanners.sbom_config import (
|
|
25
26
|
SbomAwsCredentials,
|
|
@@ -32,6 +33,7 @@ from fluidattacks_core.models.scanners.sbom_config import (
|
|
|
32
33
|
from fluidattacks_core.models.scanners.sca_config import ScaConfig
|
|
33
34
|
from fluidattacks_core.models.scanners.scan_config import ScanConfig
|
|
34
35
|
from fluidattacks_core.models.scanners.sniffs_config import SniffsConfig
|
|
36
|
+
from fluidattacks_core.models.scanners.sspm_config import GithubApp, GithubPat, SspmConfig
|
|
35
37
|
|
|
36
38
|
__all__ = [
|
|
37
39
|
"ApkConfig",
|
|
@@ -49,9 +51,12 @@ __all__ = [
|
|
|
49
51
|
"DockerCredentialsConfig",
|
|
50
52
|
"EcrCredentialsConfig",
|
|
51
53
|
"FalsePositivesConfig",
|
|
54
|
+
"GithubApp",
|
|
55
|
+
"GithubPat",
|
|
52
56
|
"LocalesEnum",
|
|
53
57
|
"OutputConfig",
|
|
54
58
|
"OutputFormat",
|
|
59
|
+
"ResolvesConfig",
|
|
55
60
|
"SastConfig",
|
|
56
61
|
"SbomAwsCredentials",
|
|
57
62
|
"SbomConfig",
|
|
@@ -62,6 +67,7 @@ __all__ = [
|
|
|
62
67
|
"ScanConfig",
|
|
63
68
|
"SniffsConfig",
|
|
64
69
|
"SourceType",
|
|
70
|
+
"SspmConfig",
|
|
65
71
|
"build_config",
|
|
66
72
|
"load_yaml_mapping",
|
|
67
73
|
]
|
|
@@ -9,10 +9,12 @@ from fluidattacks_core.models.scanners.common_config import (
|
|
|
9
9
|
from fluidattacks_core.models.scanners.containers_sca_config import ContainersScaConfig
|
|
10
10
|
from fluidattacks_core.models.scanners.cspm_config import CspmConfig
|
|
11
11
|
from fluidattacks_core.models.scanners.dast_config import DastConfig
|
|
12
|
+
from fluidattacks_core.models.scanners.resolves_config import ResolvesConfig
|
|
12
13
|
from fluidattacks_core.models.scanners.sast_config import SastConfig
|
|
13
14
|
from fluidattacks_core.models.scanners.sbom_config import SbomConfig
|
|
14
15
|
from fluidattacks_core.models.scanners.sca_config import ScaConfig
|
|
15
16
|
from fluidattacks_core.models.scanners.sniffs_config import SniffsConfig
|
|
17
|
+
from fluidattacks_core.models.scanners.sspm_config import SspmConfig
|
|
16
18
|
|
|
17
19
|
|
|
18
20
|
class ScanConfig(BaseModel):
|
|
@@ -34,6 +36,8 @@ class ScanConfig(BaseModel):
|
|
|
34
36
|
sbom: SbomConfig | None = None
|
|
35
37
|
dast: DastConfig | None = None
|
|
36
38
|
cspm: CspmConfig | None = None
|
|
39
|
+
sspm: SspmConfig | None = None
|
|
37
40
|
apk: ApkConfig | None = None
|
|
38
41
|
false_positives_identified: FalsePositivesConfig | None = None
|
|
39
42
|
ss: SniffsConfig | None = None
|
|
43
|
+
resolves: ResolvesConfig | None = None
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from pydantic import BaseModel, Field, field_validator
|
|
2
|
+
|
|
3
|
+
from fluidattacks_core.models.scanners.loader import LoaderValidationInfo, resolve_env_var
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class GithubPat(BaseModel):
|
|
7
|
+
model_config = {"extra": "forbid"}
|
|
8
|
+
organization: str
|
|
9
|
+
pat_token: str = Field(repr=False)
|
|
10
|
+
environment_id: str | None = None
|
|
11
|
+
|
|
12
|
+
@field_validator("pat_token", mode="before")
|
|
13
|
+
@classmethod
|
|
14
|
+
def _resolve_credentials(cls, v: object, info: LoaderValidationInfo) -> object:
|
|
15
|
+
return resolve_env_var(v, info)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class GithubApp(BaseModel):
|
|
19
|
+
model_config = {"extra": "forbid"}
|
|
20
|
+
organization: str
|
|
21
|
+
app_id: str
|
|
22
|
+
installation_id: str
|
|
23
|
+
private_key: str = Field(repr=False)
|
|
24
|
+
environment_id: str | None = None
|
|
25
|
+
|
|
26
|
+
@field_validator("private_key", mode="before")
|
|
27
|
+
@classmethod
|
|
28
|
+
def _resolve_credentials(cls, v: object, info: LoaderValidationInfo) -> object:
|
|
29
|
+
return resolve_env_var(v, info)
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class SspmConfig(BaseModel):
|
|
33
|
+
model_config = {"extra": "forbid"}
|
|
34
|
+
github_credentials: list[GithubPat | GithubApp] = []
|
{fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_model_scanner.py
RENAMED
|
@@ -22,6 +22,7 @@ from fluidattacks_core.models.scanners import (
|
|
|
22
22
|
LocalesEnum,
|
|
23
23
|
OutputConfig,
|
|
24
24
|
OutputFormat,
|
|
25
|
+
ResolvesConfig,
|
|
25
26
|
SastConfig,
|
|
26
27
|
SbomAwsCredentials,
|
|
27
28
|
SbomConfig,
|
|
@@ -98,6 +99,11 @@ cspm:
|
|
|
98
99
|
- role: arn:aws:iam::123456789012:role/ScanRole
|
|
99
100
|
external_id: ext-123
|
|
100
101
|
environment_id: prod
|
|
102
|
+
sspm:
|
|
103
|
+
github_credentials:
|
|
104
|
+
- organization: octo-org
|
|
105
|
+
pat_token: ghp-token
|
|
106
|
+
environment_id: scm
|
|
101
107
|
apk:
|
|
102
108
|
environments:
|
|
103
109
|
- apk_file_path: app.apk
|
|
@@ -229,6 +235,19 @@ def test_build_config_cspm(yaml_file: Path) -> None:
|
|
|
229
235
|
assert role.environment_id == "prod"
|
|
230
236
|
|
|
231
237
|
|
|
238
|
+
def test_build_config_sspm(yaml_file: Path) -> None:
|
|
239
|
+
config = build_config(str(yaml_file), ScanConfig)
|
|
240
|
+
assert config.sspm is not None
|
|
241
|
+
assert config.sspm.github_credentials[0].organization == "octo-org"
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
def test_unknown_nested_key_sspm(tmp_path: Path) -> None:
|
|
245
|
+
f = tmp_path / "config.yaml"
|
|
246
|
+
f.write_text("sspm:\n github_credentals: []\n")
|
|
247
|
+
with pytest.raises(ValidationError):
|
|
248
|
+
build_config(str(f), ScanConfig)
|
|
249
|
+
|
|
250
|
+
|
|
232
251
|
def test_build_config_apk(yaml_file: Path) -> None:
|
|
233
252
|
config = build_config(str(yaml_file), ScanConfig)
|
|
234
253
|
assert config.apk is not None
|
|
@@ -258,6 +277,7 @@ def test_scan_config_defaults() -> None:
|
|
|
258
277
|
assert config.checks is None
|
|
259
278
|
assert config.sast is None
|
|
260
279
|
assert config.dast is None
|
|
280
|
+
assert config.resolves is None
|
|
261
281
|
assert config.cspm is None
|
|
262
282
|
assert config.apk is None
|
|
263
283
|
|
|
@@ -517,6 +537,10 @@ def test_scan_config_ss_defaults() -> None:
|
|
|
517
537
|
assert config.ss is None
|
|
518
538
|
|
|
519
539
|
|
|
540
|
+
def test_resolves_config_defaults() -> None:
|
|
541
|
+
assert ResolvesConfig.model_validate({}).hosts == []
|
|
542
|
+
|
|
543
|
+
|
|
520
544
|
def test_unknown_nested_key_sast(tmp_path: Path) -> None:
|
|
521
545
|
f = tmp_path / "config.yaml"
|
|
522
546
|
f.write_text("sast:\n incldue:\n - .\n")
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
{ src, workspace_root }:
|
|
2
|
-
{
|
|
3
|
-
inherit src workspace_root;
|
|
4
|
-
root_path = "develops/fluidattacks-core/python/models";
|
|
5
|
-
module_name = "fluidattacks_core";
|
|
6
|
-
pypi_token = {
|
|
7
|
-
method = "oidc";
|
|
8
|
-
};
|
|
9
|
-
override = {
|
|
10
|
-
checks = {
|
|
11
|
-
basedpyright = false;
|
|
12
|
-
};
|
|
13
|
-
configs = {
|
|
14
|
-
import_linter = ../import-linter.cfg;
|
|
15
|
-
mypy = ../mypy.ini;
|
|
16
|
-
ruff = ../ruff.toml;
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
}
|
|
@@ -1,303 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"nodes": {
|
|
3
|
-
"flake-parts": {
|
|
4
|
-
"inputs": {
|
|
5
|
-
"nixpkgs-lib": "nixpkgs-lib"
|
|
6
|
-
},
|
|
7
|
-
"locked": {
|
|
8
|
-
"lastModified": 1762810396,
|
|
9
|
-
"narHash": "sha256-dxFVgQPG+R72dkhXTtqUm7KpxElw3u6E+YlQ2WaDgt8=",
|
|
10
|
-
"owner": "hercules-ci",
|
|
11
|
-
"repo": "flake-parts",
|
|
12
|
-
"rev": "0bdadb1b265fb4143a75bd1ec7d8c915898a9923",
|
|
13
|
-
"type": "github"
|
|
14
|
-
},
|
|
15
|
-
"original": {
|
|
16
|
-
"owner": "hercules-ci",
|
|
17
|
-
"repo": "flake-parts",
|
|
18
|
-
"type": "github"
|
|
19
|
-
}
|
|
20
|
-
},
|
|
21
|
-
"nix_filter": {
|
|
22
|
-
"locked": {
|
|
23
|
-
"lastModified": 1757882181,
|
|
24
|
-
"narHash": "sha256-+cCxYIh2UNalTz364p+QYmWHs0P+6wDhiWR4jDIKQIU=",
|
|
25
|
-
"owner": "numtide",
|
|
26
|
-
"repo": "nix-filter",
|
|
27
|
-
"rev": "59c44d1909c72441144b93cf0f054be7fe764de5",
|
|
28
|
-
"type": "github"
|
|
29
|
-
},
|
|
30
|
-
"original": {
|
|
31
|
-
"owner": "numtide",
|
|
32
|
-
"repo": "nix-filter",
|
|
33
|
-
"type": "github"
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
"nixpkgs": {
|
|
37
|
-
"locked": {
|
|
38
|
-
"lastModified": 1758690382,
|
|
39
|
-
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
|
|
40
|
-
"owner": "nixos",
|
|
41
|
-
"repo": "nixpkgs",
|
|
42
|
-
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
|
|
43
|
-
"type": "github"
|
|
44
|
-
},
|
|
45
|
-
"original": {
|
|
46
|
-
"owner": "nixos",
|
|
47
|
-
"ref": "nixos-unstable",
|
|
48
|
-
"repo": "nixpkgs",
|
|
49
|
-
"type": "github"
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
"nixpkgs-lib": {
|
|
53
|
-
"locked": {
|
|
54
|
-
"lastModified": 1761765539,
|
|
55
|
-
"narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=",
|
|
56
|
-
"owner": "nix-community",
|
|
57
|
-
"repo": "nixpkgs.lib",
|
|
58
|
-
"rev": "719359f4562934ae99f5443f20aa06c2ffff91fc",
|
|
59
|
-
"type": "github"
|
|
60
|
-
},
|
|
61
|
-
"original": {
|
|
62
|
-
"owner": "nix-community",
|
|
63
|
-
"repo": "nixpkgs.lib",
|
|
64
|
-
"type": "github"
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
"nixpkgs_2": {
|
|
68
|
-
"locked": {
|
|
69
|
-
"lastModified": 1758690382,
|
|
70
|
-
"narHash": "sha256-NY3kSorgqE5LMm1LqNwGne3ZLMF2/ILgLpFr1fS4X3o=",
|
|
71
|
-
"owner": "nixos",
|
|
72
|
-
"repo": "nixpkgs",
|
|
73
|
-
"rev": "e643668fd71b949c53f8626614b21ff71a07379d",
|
|
74
|
-
"type": "github"
|
|
75
|
-
},
|
|
76
|
-
"original": {
|
|
77
|
-
"owner": "nixos",
|
|
78
|
-
"ref": "nixos-unstable",
|
|
79
|
-
"repo": "nixpkgs",
|
|
80
|
-
"type": "github"
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
"nixpkgs_3": {
|
|
84
|
-
"locked": {
|
|
85
|
-
"lastModified": 1761373498,
|
|
86
|
-
"narHash": "sha256-Q/uhWNvd7V7k1H1ZPMy/vkx3F8C13ZcdrKjO7Jv7v0c=",
|
|
87
|
-
"owner": "nixos",
|
|
88
|
-
"repo": "nixpkgs",
|
|
89
|
-
"rev": "6a08e6bb4e46ff7fcbb53d409b253f6bad8a28ce",
|
|
90
|
-
"type": "github"
|
|
91
|
-
},
|
|
92
|
-
"original": {
|
|
93
|
-
"owner": "nixos",
|
|
94
|
-
"ref": "nixos-unstable",
|
|
95
|
-
"repo": "nixpkgs",
|
|
96
|
-
"type": "github"
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
"nixpkgs_flake": {
|
|
100
|
-
"locked": {
|
|
101
|
-
"lastModified": 1778253243,
|
|
102
|
-
"narHash": "sha256-KkH2QvU6iRLDTGGEwH5jnMqHWj4zMTuHxi1S1zdr01w=",
|
|
103
|
-
"owner": "nixos",
|
|
104
|
-
"repo": "nixpkgs",
|
|
105
|
-
"rev": "4fcda7103530b23c5ca44286344912082aad4220",
|
|
106
|
-
"type": "github"
|
|
107
|
-
},
|
|
108
|
-
"original": {
|
|
109
|
-
"owner": "nixos",
|
|
110
|
-
"repo": "nixpkgs",
|
|
111
|
-
"type": "github"
|
|
112
|
-
}
|
|
113
|
-
},
|
|
114
|
-
"pyproject-build-systems": {
|
|
115
|
-
"inputs": {
|
|
116
|
-
"nixpkgs": "nixpkgs",
|
|
117
|
-
"pyproject-nix": "pyproject-nix",
|
|
118
|
-
"uv2nix": "uv2nix"
|
|
119
|
-
},
|
|
120
|
-
"locked": {
|
|
121
|
-
"lastModified": 1761781027,
|
|
122
|
-
"narHash": "sha256-YDvxPAm2WnxrznRqWwHLjryBGG5Ey1ATEJXrON+TWt8=",
|
|
123
|
-
"owner": "pyproject-nix",
|
|
124
|
-
"repo": "build-system-pkgs",
|
|
125
|
-
"rev": "795a980d25301e5133eca37adae37283ec3c8e66",
|
|
126
|
-
"type": "github"
|
|
127
|
-
},
|
|
128
|
-
"original": {
|
|
129
|
-
"owner": "pyproject-nix",
|
|
130
|
-
"repo": "build-system-pkgs",
|
|
131
|
-
"type": "github"
|
|
132
|
-
}
|
|
133
|
-
},
|
|
134
|
-
"pyproject-nix": {
|
|
135
|
-
"inputs": {
|
|
136
|
-
"nixpkgs": [
|
|
137
|
-
"python_builder",
|
|
138
|
-
"pyproject-build-systems",
|
|
139
|
-
"nixpkgs"
|
|
140
|
-
]
|
|
141
|
-
},
|
|
142
|
-
"locked": {
|
|
143
|
-
"lastModified": 1758265079,
|
|
144
|
-
"narHash": "sha256-amLaLNwKSZPShQHzfgmc/9o76dU8xzN0743dWgvYlr8=",
|
|
145
|
-
"owner": "nix-community",
|
|
146
|
-
"repo": "pyproject.nix",
|
|
147
|
-
"rev": "02e9418fd4af638447dca4b17b1280da95527fc9",
|
|
148
|
-
"type": "github"
|
|
149
|
-
},
|
|
150
|
-
"original": {
|
|
151
|
-
"owner": "nix-community",
|
|
152
|
-
"repo": "pyproject.nix",
|
|
153
|
-
"type": "github"
|
|
154
|
-
}
|
|
155
|
-
},
|
|
156
|
-
"pyproject-nix_2": {
|
|
157
|
-
"inputs": {
|
|
158
|
-
"nixpkgs": "nixpkgs_2"
|
|
159
|
-
},
|
|
160
|
-
"locked": {
|
|
161
|
-
"lastModified": 1762427963,
|
|
162
|
-
"narHash": "sha256-CkPlAbIQ87wmjy5qHibfzk4DmMGBNqFer+lLfXjpP5M=",
|
|
163
|
-
"owner": "pyproject-nix",
|
|
164
|
-
"repo": "pyproject.nix",
|
|
165
|
-
"rev": "4540ea004e04fcd12dd2738d51383d10f956f7b9",
|
|
166
|
-
"type": "github"
|
|
167
|
-
},
|
|
168
|
-
"original": {
|
|
169
|
-
"owner": "pyproject-nix",
|
|
170
|
-
"repo": "pyproject.nix",
|
|
171
|
-
"type": "github"
|
|
172
|
-
}
|
|
173
|
-
},
|
|
174
|
-
"pyproject-nix_3": {
|
|
175
|
-
"inputs": {
|
|
176
|
-
"nixpkgs": [
|
|
177
|
-
"python_builder",
|
|
178
|
-
"uv2nix",
|
|
179
|
-
"nixpkgs"
|
|
180
|
-
]
|
|
181
|
-
},
|
|
182
|
-
"locked": {
|
|
183
|
-
"lastModified": 1760402624,
|
|
184
|
-
"narHash": "sha256-jF6UKLs2uGc2rtved8Vrt58oTWjTQoAssuYs/0578Z4=",
|
|
185
|
-
"owner": "pyproject-nix",
|
|
186
|
-
"repo": "pyproject.nix",
|
|
187
|
-
"rev": "84c4ea102127c77058ea1ed7be7300261fafc7d2",
|
|
188
|
-
"type": "github"
|
|
189
|
-
},
|
|
190
|
-
"original": {
|
|
191
|
-
"owner": "pyproject-nix",
|
|
192
|
-
"repo": "pyproject.nix",
|
|
193
|
-
"type": "github"
|
|
194
|
-
}
|
|
195
|
-
},
|
|
196
|
-
"python_builder": {
|
|
197
|
-
"inputs": {
|
|
198
|
-
"nix_filter": "nix_filter",
|
|
199
|
-
"nixpkgs_flake": "nixpkgs_flake",
|
|
200
|
-
"pyproject-build-systems": "pyproject-build-systems",
|
|
201
|
-
"pyproject-nix": "pyproject-nix_2",
|
|
202
|
-
"shell-helpers": "shell-helpers",
|
|
203
|
-
"uv2nix": "uv2nix_2"
|
|
204
|
-
},
|
|
205
|
-
"locked": {
|
|
206
|
-
"dir": "common/utils/python-builder",
|
|
207
|
-
"lastModified": 1787078362,
|
|
208
|
-
"narHash": "sha256-HYL7Rn6SuNjYxkt/PwFLksZjsauCiY+ENbOWryLsIlw=",
|
|
209
|
-
"ref": "refs/heads/trunk",
|
|
210
|
-
"rev": "09fd25a13309eb5e3b5b2a061bb340df3ae5d281",
|
|
211
|
-
"shallow": true,
|
|
212
|
-
"type": "git",
|
|
213
|
-
"url": "ssh://git@gitlab.com/fluidattacks/universe"
|
|
214
|
-
},
|
|
215
|
-
"original": {
|
|
216
|
-
"dir": "common/utils/python-builder",
|
|
217
|
-
"rev": "09fd25a13309eb5e3b5b2a061bb340df3ae5d281",
|
|
218
|
-
"shallow": true,
|
|
219
|
-
"type": "git",
|
|
220
|
-
"url": "ssh://git@gitlab.com/fluidattacks/universe"
|
|
221
|
-
}
|
|
222
|
-
},
|
|
223
|
-
"root": {
|
|
224
|
-
"inputs": {
|
|
225
|
-
"python_builder": "python_builder"
|
|
226
|
-
}
|
|
227
|
-
},
|
|
228
|
-
"shell-helpers": {
|
|
229
|
-
"inputs": {
|
|
230
|
-
"flake-parts": "flake-parts",
|
|
231
|
-
"nixpkgs": [
|
|
232
|
-
"python_builder",
|
|
233
|
-
"nixpkgs_flake"
|
|
234
|
-
]
|
|
235
|
-
},
|
|
236
|
-
"locked": {
|
|
237
|
-
"dir": "common/utils/shell-helpers",
|
|
238
|
-
"lastModified": 1762806066,
|
|
239
|
-
"narHash": "sha256-Wz99Fl7SpPU1NkTHJ36XOo6DjOEAMXCw3ThRABOS2Hs=",
|
|
240
|
-
"ref": "refs/heads/trunk",
|
|
241
|
-
"rev": "d73cfdc7ae9e7f547e22a4481d4c2ccce38b26a8",
|
|
242
|
-
"shallow": true,
|
|
243
|
-
"type": "git",
|
|
244
|
-
"url": "ssh://git@gitlab.com/fluidattacks/universe"
|
|
245
|
-
},
|
|
246
|
-
"original": {
|
|
247
|
-
"dir": "common/utils/shell-helpers",
|
|
248
|
-
"rev": "d73cfdc7ae9e7f547e22a4481d4c2ccce38b26a8",
|
|
249
|
-
"shallow": true,
|
|
250
|
-
"type": "git",
|
|
251
|
-
"url": "ssh://git@gitlab.com/fluidattacks/universe"
|
|
252
|
-
}
|
|
253
|
-
},
|
|
254
|
-
"uv2nix": {
|
|
255
|
-
"inputs": {
|
|
256
|
-
"nixpkgs": [
|
|
257
|
-
"python_builder",
|
|
258
|
-
"pyproject-build-systems",
|
|
259
|
-
"nixpkgs"
|
|
260
|
-
],
|
|
261
|
-
"pyproject-nix": [
|
|
262
|
-
"python_builder",
|
|
263
|
-
"pyproject-build-systems",
|
|
264
|
-
"pyproject-nix"
|
|
265
|
-
]
|
|
266
|
-
},
|
|
267
|
-
"locked": {
|
|
268
|
-
"lastModified": 1758933732,
|
|
269
|
-
"narHash": "sha256-HAmm1GBS1myZCFuog0DC2ZLaynvZtiUI2Crmo+cdQI0=",
|
|
270
|
-
"owner": "pyproject-nix",
|
|
271
|
-
"repo": "uv2nix",
|
|
272
|
-
"rev": "273ce18f913d8559e0d04f820d724308966d7c4d",
|
|
273
|
-
"type": "github"
|
|
274
|
-
},
|
|
275
|
-
"original": {
|
|
276
|
-
"owner": "pyproject-nix",
|
|
277
|
-
"repo": "uv2nix",
|
|
278
|
-
"type": "github"
|
|
279
|
-
}
|
|
280
|
-
},
|
|
281
|
-
"uv2nix_2": {
|
|
282
|
-
"inputs": {
|
|
283
|
-
"nixpkgs": "nixpkgs_3",
|
|
284
|
-
"pyproject-nix": "pyproject-nix_3"
|
|
285
|
-
},
|
|
286
|
-
"locked": {
|
|
287
|
-
"lastModified": 1761872265,
|
|
288
|
-
"narHash": "sha256-i25GRgp2vUOebY70L3NTAgkd+Pr1hnn5xM3qHxH0ONU=",
|
|
289
|
-
"owner": "pyproject-nix",
|
|
290
|
-
"repo": "uv2nix",
|
|
291
|
-
"rev": "74dfb62871be152ad3673b143b0cc56105a4f3c5",
|
|
292
|
-
"type": "github"
|
|
293
|
-
},
|
|
294
|
-
"original": {
|
|
295
|
-
"owner": "pyproject-nix",
|
|
296
|
-
"repo": "uv2nix",
|
|
297
|
-
"type": "github"
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
},
|
|
301
|
-
"root": "root",
|
|
302
|
-
"version": 7
|
|
303
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
description = "Fluid Attacks Core models package.";
|
|
3
|
-
|
|
4
|
-
inputs = {
|
|
5
|
-
python_builder = {
|
|
6
|
-
url = "git+ssh://git@gitlab.com/fluidattacks/universe?shallow=1&rev=09fd25a13309eb5e3b5b2a061bb340df3ae5d281&dir=common/utils/python-builder";
|
|
7
|
-
};
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
outputs =
|
|
11
|
-
{ self, ... }@inputs:
|
|
12
|
-
let
|
|
13
|
-
build_args =
|
|
14
|
-
{
|
|
15
|
-
system,
|
|
16
|
-
python_version,
|
|
17
|
-
nixpkgs,
|
|
18
|
-
builders,
|
|
19
|
-
scripts,
|
|
20
|
-
}:
|
|
21
|
-
import ./build {
|
|
22
|
-
src = import ./build/filter.nix nixpkgs.nix-filter self;
|
|
23
|
-
workspace_root = ./.;
|
|
24
|
-
};
|
|
25
|
-
in
|
|
26
|
-
{
|
|
27
|
-
packages = inputs.python_builder.outputs.build build_args;
|
|
28
|
-
};
|
|
29
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_loader_env.py
RENAMED
|
File without changes
|
{fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_root_scanner.py
RENAMED
|
File without changes
|
{fluidattacks_core_models-14.0.0 → fluidattacks_core_models-14.2.0}/tests/test_state_machines.py
RENAMED
|
File without changes
|