devsecops-engine-tools 1.91.0__py3-none-any.whl → 1.93.0__py3-none-any.whl
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.
Potentially problematic release.
This version of devsecops-engine-tools might be problematic. Click here for more details.
- devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +11 -2
- devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/cdxgen/__init__.py +0 -0
- devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/cdxgen/cdxgen.py +123 -0
- devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +1 -1
- devsecops_engine_tools/engine_integrations/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/applications/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/applications/runner_engine_integrations.py +169 -0
- devsecops_engine_tools/engine_integrations/src/domain/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/domain/usecases/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/domain/usecases/handle_integrations.py +42 -0
- devsecops_engine_tools/engine_integrations/src/infrastructure/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/infrastructure/entry_points/__init__.py +0 -0
- devsecops_engine_tools/engine_integrations/src/infrastructure/entry_points/entry_point_integrations.py +33 -0
- devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py +1 -1
- devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +1 -1
- devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py +9 -94
- devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py +5 -3
- devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py +7 -10
- devsecops_engine_tools/version.py +1 -1
- {devsecops_engine_tools-1.91.0.dist-info → devsecops_engine_tools-1.93.0.dist-info}/METADATA +5 -1
- {devsecops_engine_tools-1.91.0.dist-info → devsecops_engine_tools-1.93.0.dist-info}/RECORD +26 -14
- devsecops_engine_tools-1.93.0.dist-info/entry_points.txt +3 -0
- devsecops_engine_tools-1.91.0.dist-info/entry_points.txt +0 -3
- /devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/{ContextDependencies.py → context_dependencies.py} +0 -0
- {devsecops_engine_tools-1.91.0.dist-info → devsecops_engine_tools-1.93.0.dist-info}/WHEEL +0 -0
- {devsecops_engine_tools-1.91.0.dist-info → devsecops_engine_tools-1.93.0.dist-info}/top_level.txt +0 -0
|
@@ -22,7 +22,13 @@ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.s
|
|
|
22
22
|
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.printer_pretty_table.printer_pretty_table import (
|
|
23
23
|
PrinterPrettyTable,
|
|
24
24
|
)
|
|
25
|
-
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.syft.syft import
|
|
25
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.syft.syft import (
|
|
26
|
+
Syft
|
|
27
|
+
)
|
|
28
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.cdxgen.cdxgen import (
|
|
29
|
+
CdxGen
|
|
30
|
+
)
|
|
31
|
+
|
|
26
32
|
import sys
|
|
27
33
|
import argparse
|
|
28
34
|
from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
|
|
@@ -285,7 +291,10 @@ def application_core():
|
|
|
285
291
|
}.get(args["remote_config_source"])
|
|
286
292
|
metrics_manager_gateway = S3Manager()
|
|
287
293
|
printer_table_gateway = PrinterPrettyTable()
|
|
288
|
-
sbom_tool_gateway =
|
|
294
|
+
sbom_tool_gateway = {
|
|
295
|
+
"syft": Syft(),
|
|
296
|
+
"cdxgen": CdxGen()
|
|
297
|
+
}
|
|
289
298
|
|
|
290
299
|
init_engine_core(
|
|
291
300
|
vulnerability_management_gateway,
|
|
File without changes
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
from dataclasses import dataclass
|
|
2
|
+
import requests
|
|
3
|
+
import subprocess
|
|
4
|
+
import platform
|
|
5
|
+
|
|
6
|
+
from devsecops_engine_tools.engine_core.src.domain.model.gateway.sbom_manager import (
|
|
7
|
+
SbomManagerGateway,
|
|
8
|
+
)
|
|
9
|
+
from devsecops_engine_tools.engine_utilities.sbom.deserealizator import (
|
|
10
|
+
get_list_component,
|
|
11
|
+
)
|
|
12
|
+
from devsecops_engine_tools.engine_core.src.domain.model.component import (
|
|
13
|
+
Component,
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
|
|
17
|
+
from devsecops_engine_tools.engine_utilities import settings
|
|
18
|
+
|
|
19
|
+
logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
@dataclass
|
|
23
|
+
class CdxGen(SbomManagerGateway):
|
|
24
|
+
|
|
25
|
+
def get_components(self, artifact, config, service_name) -> "list[Component]":
|
|
26
|
+
try:
|
|
27
|
+
cdxgen_version = config["CDXGEN"]["CDXGEN_VERSION"]
|
|
28
|
+
slim = "-slim" if config["CDXGEN"]["SLIM_BINARY"] else ""
|
|
29
|
+
os_platform = platform.system()
|
|
30
|
+
base_url = (
|
|
31
|
+
f"https://github.com/CycloneDX/cdxgen/releases/download/v{cdxgen_version}/"
|
|
32
|
+
)
|
|
33
|
+
|
|
34
|
+
command_prefix = "cdxgen"
|
|
35
|
+
if os_platform == "Linux":
|
|
36
|
+
file = f"cdxgen-linux-amd64{slim}"
|
|
37
|
+
command_prefix = self._install_tool_unix(
|
|
38
|
+
file, base_url + file, command_prefix
|
|
39
|
+
)
|
|
40
|
+
elif os_platform == "Darwin":
|
|
41
|
+
file = f"cdxgen-darwin-amd64{slim}"
|
|
42
|
+
command_prefix = self._install_tool_unix(
|
|
43
|
+
file, base_url + file, command_prefix
|
|
44
|
+
)
|
|
45
|
+
elif os_platform == "Windows":
|
|
46
|
+
file = f"cdxgen-windows-amd64{slim}.exe"
|
|
47
|
+
command_prefix = self._install_tool_windows(
|
|
48
|
+
file, base_url + file, "cdxgen.exe"
|
|
49
|
+
)
|
|
50
|
+
else:
|
|
51
|
+
logger.warning(f"{os_platform} is not supported.")
|
|
52
|
+
return None
|
|
53
|
+
|
|
54
|
+
result_sbom = self._run_cdxgen(command_prefix, artifact, service_name)
|
|
55
|
+
return get_list_component(result_sbom, config["CDXGEN"]["OUTPUT_FORMAT"])
|
|
56
|
+
except Exception as e:
|
|
57
|
+
logger.error(f"Error generating SBOM: {e}")
|
|
58
|
+
return None
|
|
59
|
+
|
|
60
|
+
def _run_cdxgen(self, command_prefix, artifact, service_name):
|
|
61
|
+
result_file = f"{service_name}_SBOM.json"
|
|
62
|
+
command = [
|
|
63
|
+
command_prefix,
|
|
64
|
+
artifact,
|
|
65
|
+
"-o",
|
|
66
|
+
result_file,
|
|
67
|
+
]
|
|
68
|
+
|
|
69
|
+
try:
|
|
70
|
+
subprocess.run(
|
|
71
|
+
command,
|
|
72
|
+
check=True,
|
|
73
|
+
stdout=subprocess.PIPE,
|
|
74
|
+
stderr=subprocess.PIPE,
|
|
75
|
+
text=True,
|
|
76
|
+
)
|
|
77
|
+
print(f"SBOM generated and saved to: {result_file}")
|
|
78
|
+
return result_file
|
|
79
|
+
except Exception as e:
|
|
80
|
+
logger.error(f"Error running cdxgen: {e}")
|
|
81
|
+
|
|
82
|
+
def _install_tool_unix(self, file, url, command_prefix):
|
|
83
|
+
installed = subprocess.run(
|
|
84
|
+
["which", command_prefix],
|
|
85
|
+
stdout=subprocess.PIPE,
|
|
86
|
+
stderr=subprocess.PIPE,
|
|
87
|
+
)
|
|
88
|
+
if installed.returncode == 1:
|
|
89
|
+
try:
|
|
90
|
+
self._download_tool(file, url)
|
|
91
|
+
subprocess.run(
|
|
92
|
+
["chmod", "+x", f"./{file}"],
|
|
93
|
+
stdout=subprocess.PIPE,
|
|
94
|
+
stderr=subprocess.PIPE,
|
|
95
|
+
)
|
|
96
|
+
return f"./{file}"
|
|
97
|
+
except Exception as e:
|
|
98
|
+
logger.error(f"Error installing cdxgen: {e}")
|
|
99
|
+
else:
|
|
100
|
+
return installed.stdout.decode("utf-8").strip()
|
|
101
|
+
|
|
102
|
+
def _install_tool_windows(self, file, url, command_prefix):
|
|
103
|
+
try:
|
|
104
|
+
installed = subprocess.run(
|
|
105
|
+
[command_prefix, "--version"],
|
|
106
|
+
stdout=subprocess.PIPE,
|
|
107
|
+
stderr=subprocess.PIPE,
|
|
108
|
+
)
|
|
109
|
+
return installed.stdout.decode("utf-8").strip()
|
|
110
|
+
except:
|
|
111
|
+
try:
|
|
112
|
+
self._download_tool(file, url)
|
|
113
|
+
return f"{file}"
|
|
114
|
+
except Exception as e:
|
|
115
|
+
logger.error(f"Error installing cdxgen: {e}")
|
|
116
|
+
|
|
117
|
+
def _download_tool(self, file, url):
|
|
118
|
+
try:
|
|
119
|
+
response = requests.get(url, allow_redirects=True)
|
|
120
|
+
with open(file, "wb") as compress_file:
|
|
121
|
+
compress_file.write(response.content)
|
|
122
|
+
except Exception as e:
|
|
123
|
+
logger.error(f"Error downloading cdxgen: {e}")
|
|
@@ -14,7 +14,6 @@ from devsecops_engine_tools.engine_utilities.utils.printers import (
|
|
|
14
14
|
Printers,
|
|
15
15
|
)
|
|
16
16
|
|
|
17
|
-
|
|
18
17
|
def init_engine_core(
|
|
19
18
|
vulnerability_management_gateway: any,
|
|
20
19
|
secrets_manager_gateway: any,
|
|
@@ -29,6 +28,7 @@ def init_engine_core(
|
|
|
29
28
|
args["remote_config_repo"], "/engine_core/ConfigTool.json", args["remote_config_branch"]
|
|
30
29
|
)
|
|
31
30
|
Printers.print_logo_tool(config_tool["BANNER"])
|
|
31
|
+
sbom_tool_gateway = sbom_tool_gateway.get(config_tool["SBOM_MANAGER"]["TOOL"].lower())
|
|
32
32
|
|
|
33
33
|
if config_tool[args["module"].upper()]["ENABLED"]:
|
|
34
34
|
if args["module"] == "engine_risk":
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.azure.azure_devops import (
|
|
2
|
+
AzureDevops
|
|
3
|
+
)
|
|
4
|
+
from devsecops_engine_tools.engine_integrations.src.infrastructure.entry_points.entry_point_integrations import (
|
|
5
|
+
init_engine_integrations
|
|
6
|
+
)
|
|
7
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.secrets_manager import (
|
|
8
|
+
SecretsManager
|
|
9
|
+
)
|
|
10
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.azure.azure_devops import (
|
|
11
|
+
AzureDevops
|
|
12
|
+
)
|
|
13
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.github.github_actions import (
|
|
14
|
+
GithubActions,
|
|
15
|
+
)
|
|
16
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.runtime_local.runtime_local import (
|
|
17
|
+
RuntimeLocal,
|
|
18
|
+
)
|
|
19
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.defect_dojo.defect_dojo import (
|
|
20
|
+
DefectDojoPlatform
|
|
21
|
+
)
|
|
22
|
+
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.s3_manager import (
|
|
23
|
+
S3Manager,
|
|
24
|
+
)
|
|
25
|
+
import sys
|
|
26
|
+
import argparse
|
|
27
|
+
from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
|
|
28
|
+
from devsecops_engine_tools.engine_utilities import settings
|
|
29
|
+
|
|
30
|
+
logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
|
|
31
|
+
|
|
32
|
+
def get_inputs_from_cli(args):
|
|
33
|
+
parser = argparse.ArgumentParser()
|
|
34
|
+
parser.add_argument(
|
|
35
|
+
"--integration",
|
|
36
|
+
choices=["report_sonar"],
|
|
37
|
+
type=str,
|
|
38
|
+
required=True,
|
|
39
|
+
help="Name of the integration to run",
|
|
40
|
+
)
|
|
41
|
+
parser.add_argument(
|
|
42
|
+
"-rcf",
|
|
43
|
+
"--remote_config_repo",
|
|
44
|
+
type=str,
|
|
45
|
+
required=True,
|
|
46
|
+
help="Name of Config Repo",
|
|
47
|
+
)
|
|
48
|
+
parser.add_argument(
|
|
49
|
+
"-rcb",
|
|
50
|
+
"--remote_config_branch",
|
|
51
|
+
type=str,
|
|
52
|
+
required=False,
|
|
53
|
+
default="",
|
|
54
|
+
help="Name of the branch of Config Repo",
|
|
55
|
+
)
|
|
56
|
+
parser.add_argument(
|
|
57
|
+
"-pd",
|
|
58
|
+
"--platform_devops",
|
|
59
|
+
choices=["azure", "github", "local"],
|
|
60
|
+
type=str,
|
|
61
|
+
required=True,
|
|
62
|
+
help="Platform where is executed",
|
|
63
|
+
)
|
|
64
|
+
parser.add_argument(
|
|
65
|
+
"-rcs",
|
|
66
|
+
"--remote_config_source",
|
|
67
|
+
choices=["azure", "github", "local"],
|
|
68
|
+
type=str,
|
|
69
|
+
required=False,
|
|
70
|
+
help="Source of the remote config repo",
|
|
71
|
+
)
|
|
72
|
+
parser.add_argument(
|
|
73
|
+
"--use_secrets_manager",
|
|
74
|
+
choices=["true", "false"],
|
|
75
|
+
type=str,
|
|
76
|
+
required=True,
|
|
77
|
+
help="Use Secrets Manager to get the tokens",
|
|
78
|
+
)
|
|
79
|
+
parser.add_argument(
|
|
80
|
+
"--send_metrics",
|
|
81
|
+
choices=["true", "false"],
|
|
82
|
+
type=str,
|
|
83
|
+
required=False,
|
|
84
|
+
help="Enable or Disable the send metrics to the driven adapter metrics",
|
|
85
|
+
)
|
|
86
|
+
# report_sonar flags
|
|
87
|
+
parser.add_argument(
|
|
88
|
+
"--sonar_url",
|
|
89
|
+
required=False,
|
|
90
|
+
help="Url to access sonar API",
|
|
91
|
+
)
|
|
92
|
+
parser.add_argument(
|
|
93
|
+
"--sonar_instance",
|
|
94
|
+
required=False,
|
|
95
|
+
help="Name of the sonar instance to recognize tool config",
|
|
96
|
+
)
|
|
97
|
+
parser.add_argument(
|
|
98
|
+
"--token_cmdb",
|
|
99
|
+
required=False,
|
|
100
|
+
help="Token to connect to the CMDB"
|
|
101
|
+
)
|
|
102
|
+
parser.add_argument(
|
|
103
|
+
"--token_vulnerability_management",
|
|
104
|
+
required=False,
|
|
105
|
+
help="Token to connect to the Vulnerability Management",
|
|
106
|
+
)
|
|
107
|
+
parser.add_argument(
|
|
108
|
+
"--token_sonar",
|
|
109
|
+
required=False,
|
|
110
|
+
help="Token to access sonar server",
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
args = parser.parse_args()
|
|
114
|
+
return {
|
|
115
|
+
"integration": args.integration,
|
|
116
|
+
"remote_config_repo": args.remote_config_repo,
|
|
117
|
+
"remote_config_branch": args.remote_config_branch,
|
|
118
|
+
"platform_devops": args.platform_devops,
|
|
119
|
+
"remote_config_source": args.remote_config_source,
|
|
120
|
+
"use_secrets_manager": args.use_secrets_manager,
|
|
121
|
+
"send_metrics": args.send_metrics,
|
|
122
|
+
"sonar_url": args.sonar_url,
|
|
123
|
+
"sonar_instance": args.sonar_instance,
|
|
124
|
+
"token_cmdb": args.token_cmdb,
|
|
125
|
+
"token_vulnerability_management": args.token_vulnerability_management,
|
|
126
|
+
"token_sonar": args.token_sonar,
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
def runner_engine_integrations():
|
|
130
|
+
try:
|
|
131
|
+
args = get_inputs_from_cli(sys.argv[1:])
|
|
132
|
+
if not args["remote_config_source"]:
|
|
133
|
+
args["remote_config_source"] = args["platform_devops"]
|
|
134
|
+
|
|
135
|
+
vulnerability_management_gateway = DefectDojoPlatform()
|
|
136
|
+
secrets_manager_gateway = SecretsManager()
|
|
137
|
+
devops_platform_gateway = {
|
|
138
|
+
"azure": AzureDevops(),
|
|
139
|
+
"github": GithubActions(),
|
|
140
|
+
"local": RuntimeLocal(),
|
|
141
|
+
}.get(args["platform_devops"])
|
|
142
|
+
remote_config_source_gateway = {
|
|
143
|
+
"azure": AzureDevops(),
|
|
144
|
+
"github": GithubActions(),
|
|
145
|
+
"local": RuntimeLocal(),
|
|
146
|
+
}.get(args["remote_config_source"])
|
|
147
|
+
metrics_manager_gateway = S3Manager()
|
|
148
|
+
|
|
149
|
+
init_engine_integrations(
|
|
150
|
+
vulnerability_management_gateway=vulnerability_management_gateway,
|
|
151
|
+
secrets_manager_gateway=secrets_manager_gateway,
|
|
152
|
+
devops_platform_gateway=devops_platform_gateway,
|
|
153
|
+
remote_config_source_gateway=remote_config_source_gateway,
|
|
154
|
+
metrics_manager_gateway=metrics_manager_gateway,
|
|
155
|
+
args=args,
|
|
156
|
+
)
|
|
157
|
+
|
|
158
|
+
except Exception as e:
|
|
159
|
+
logger.error("Error engine_integrations: {0} ".format(str(e)))
|
|
160
|
+
print(
|
|
161
|
+
devops_platform_gateway.message(
|
|
162
|
+
"error", "Error engine_integrations: {0} ".format(str(e))
|
|
163
|
+
)
|
|
164
|
+
)
|
|
165
|
+
print(devops_platform_gateway.result_pipeline("failed"))
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
if __name__ == "__main__":
|
|
169
|
+
runner_engine_integrations()
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
from devsecops_engine_tools.engine_core.src.domain.model.gateway.vulnerability_management_gateway import (
|
|
2
|
+
VulnerabilityManagementGateway
|
|
3
|
+
)
|
|
4
|
+
from devsecops_engine_tools.engine_core.src.domain.model.gateway.secrets_manager_gateway import (
|
|
5
|
+
SecretsManagerGateway
|
|
6
|
+
)
|
|
7
|
+
from devsecops_engine_tools.engine_core.src.domain.model.gateway.devops_platform_gateway import (
|
|
8
|
+
DevopsPlatformGateway
|
|
9
|
+
)
|
|
10
|
+
from devsecops_engine_tools.engine_core.src.domain.model.gateway.metrics_manager_gateway import (
|
|
11
|
+
MetricsManagerGateway,
|
|
12
|
+
)
|
|
13
|
+
from devsecops_engine_tools.engine_utilities.sonarqube.src.applications.runner_report_sonar import (
|
|
14
|
+
runner_report_sonar
|
|
15
|
+
)
|
|
16
|
+
|
|
17
|
+
class Integrations():
|
|
18
|
+
def __init__(
|
|
19
|
+
self,
|
|
20
|
+
vulnerability_management_gateway: VulnerabilityManagementGateway,
|
|
21
|
+
secrets_manager_gateway: SecretsManagerGateway,
|
|
22
|
+
devops_platform_gateway: DevopsPlatformGateway,
|
|
23
|
+
remote_config_source_gateway: DevopsPlatformGateway,
|
|
24
|
+
metrics_manager_gateway: MetricsManagerGateway,
|
|
25
|
+
):
|
|
26
|
+
self.vulnerability_management_gateway = vulnerability_management_gateway
|
|
27
|
+
self.secrets_manager_gateway = secrets_manager_gateway
|
|
28
|
+
self.devops_platform_gateway = devops_platform_gateway
|
|
29
|
+
self.remote_config_source_gateway = remote_config_source_gateway
|
|
30
|
+
self.metrics_manager_gateway = metrics_manager_gateway
|
|
31
|
+
|
|
32
|
+
def process(self, args):
|
|
33
|
+
integration = args.get("integration")
|
|
34
|
+
if integration == "report_sonar":
|
|
35
|
+
return runner_report_sonar(
|
|
36
|
+
vulnerability_management_gateway=self.vulnerability_management_gateway,
|
|
37
|
+
secrets_manager_gateway=self.secrets_manager_gateway,
|
|
38
|
+
devops_platform_gateway=self.devops_platform_gateway,
|
|
39
|
+
remote_config_source_gateway=self.remote_config_source_gateway,
|
|
40
|
+
metrics_manager_gateway=self.metrics_manager_gateway,
|
|
41
|
+
args=args,
|
|
42
|
+
)
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
from devsecops_engine_tools.engine_integrations.src.domain.usecases.handle_integrations import (
|
|
2
|
+
Integrations
|
|
3
|
+
)
|
|
4
|
+
from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
|
|
5
|
+
from devsecops_engine_tools.engine_utilities import settings
|
|
6
|
+
from devsecops_engine_tools.engine_utilities.utils.printers import (
|
|
7
|
+
Printers,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def init_engine_integrations(
|
|
14
|
+
vulnerability_management_gateway,
|
|
15
|
+
secrets_manager_gateway,
|
|
16
|
+
devops_platform_gateway,
|
|
17
|
+
remote_config_source_gateway,
|
|
18
|
+
metrics_manager_gateway,
|
|
19
|
+
args,
|
|
20
|
+
):
|
|
21
|
+
config_tool = remote_config_source_gateway.get_remote_config(
|
|
22
|
+
args["remote_config_repo"], "/engine_core/ConfigTool.json", args["remote_config_branch"]
|
|
23
|
+
)
|
|
24
|
+
|
|
25
|
+
Printers.print_logo_tool(config_tool["BANNER"])
|
|
26
|
+
|
|
27
|
+
return Integrations(
|
|
28
|
+
vulnerability_management_gateway=vulnerability_management_gateway,
|
|
29
|
+
secrets_manager_gateway=secrets_manager_gateway,
|
|
30
|
+
devops_platform_gateway=devops_platform_gateway,
|
|
31
|
+
remote_config_source_gateway=remote_config_source_gateway,
|
|
32
|
+
metrics_manager_gateway=metrics_manager_gateway,
|
|
33
|
+
).process(args)
|
|
@@ -4,7 +4,7 @@ from devsecops_engine_tools.engine_sca.engine_dependencies.src.domain.model.gate
|
|
|
4
4
|
from devsecops_engine_tools.engine_sca.engine_dependencies.src.infrastructure.driven_adapters.dependency_check.dependency_check_deserialize import (
|
|
5
5
|
DependencyCheckDeserialize,
|
|
6
6
|
)
|
|
7
|
-
from devsecops_engine_tools.engine_sca.engine_dependencies.src.domain.model.
|
|
7
|
+
from devsecops_engine_tools.engine_sca.engine_dependencies.src.domain.model.context_dependencies import (
|
|
8
8
|
ContextDependencies,
|
|
9
9
|
)
|
|
10
10
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from devsecops_engine_tools.engine_sca.engine_dependencies.src.domain.model.gateways.tool_gateway import (
|
|
2
2
|
ToolGateway,
|
|
3
3
|
)
|
|
4
|
-
from devsecops_engine_tools.engine_sca.engine_dependencies.src.domain.model.
|
|
4
|
+
from devsecops_engine_tools.engine_sca.engine_dependencies.src.domain.model.context_dependencies import (
|
|
5
5
|
ContextDependencies,
|
|
6
6
|
)
|
|
7
7
|
|
|
@@ -1,111 +1,30 @@
|
|
|
1
|
-
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.secrets_manager import (
|
|
2
|
-
SecretsManager
|
|
3
|
-
)
|
|
4
|
-
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.azure.azure_devops import (
|
|
5
|
-
AzureDevops
|
|
6
|
-
)
|
|
7
|
-
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.defect_dojo.defect_dojo import (
|
|
8
|
-
DefectDojoPlatform
|
|
9
|
-
)
|
|
10
1
|
from devsecops_engine_tools.engine_utilities.sonarqube.src.infrastructure.driven_adapters.sonarqube.sonarqube_report import(
|
|
11
2
|
SonarAdapter
|
|
12
3
|
)
|
|
13
|
-
from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.s3_manager import (
|
|
14
|
-
S3Manager,
|
|
15
|
-
)
|
|
16
4
|
from devsecops_engine_tools.engine_utilities.sonarqube.src.infrastructure.entry_points.entry_point_report_sonar import (
|
|
17
5
|
init_report_sonar
|
|
18
6
|
)
|
|
19
|
-
import sys
|
|
20
|
-
import argparse
|
|
21
7
|
from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
|
|
22
8
|
from devsecops_engine_tools.engine_utilities import settings
|
|
23
9
|
|
|
24
10
|
logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
|
|
25
11
|
|
|
26
|
-
def
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
)
|
|
35
|
-
parser.add_argument(
|
|
36
|
-
"-rcb",
|
|
37
|
-
"--remote_config_branch",
|
|
38
|
-
type=str,
|
|
39
|
-
required=False,
|
|
40
|
-
default="",
|
|
41
|
-
help="Name of the branch of Config Repo",
|
|
42
|
-
)
|
|
43
|
-
parser.add_argument(
|
|
44
|
-
"--use_secrets_manager",
|
|
45
|
-
choices=["true", "false"],
|
|
46
|
-
type=str,
|
|
47
|
-
required=True,
|
|
48
|
-
help="Use Secrets Manager to get the tokens",
|
|
49
|
-
)
|
|
50
|
-
parser.add_argument(
|
|
51
|
-
"--send_metrics",
|
|
52
|
-
choices=["true", "false"],
|
|
53
|
-
type=str,
|
|
54
|
-
required=False,
|
|
55
|
-
help="Enable or Disable the send metrics to the driven adapter metrics",
|
|
56
|
-
)
|
|
57
|
-
parser.add_argument(
|
|
58
|
-
"--sonar_url",
|
|
59
|
-
required=False,
|
|
60
|
-
help="Url to access sonar API",
|
|
61
|
-
)
|
|
62
|
-
parser.add_argument(
|
|
63
|
-
"--sonar_instance",
|
|
64
|
-
required=False,
|
|
65
|
-
help="Name of the sonar instance to recognize tool config",
|
|
66
|
-
)
|
|
67
|
-
parser.add_argument(
|
|
68
|
-
"--token_cmdb",
|
|
69
|
-
required=False,
|
|
70
|
-
help="Token to connect to the CMDB"
|
|
71
|
-
)
|
|
72
|
-
parser.add_argument(
|
|
73
|
-
"--token_vulnerability_management",
|
|
74
|
-
required=False,
|
|
75
|
-
help="Token to connect to the Vulnerability Management",
|
|
76
|
-
)
|
|
77
|
-
parser.add_argument(
|
|
78
|
-
"--token_sonar",
|
|
79
|
-
required=False,
|
|
80
|
-
help="Token to access sonar server",
|
|
81
|
-
)
|
|
82
|
-
|
|
83
|
-
args = parser.parse_args()
|
|
84
|
-
return {
|
|
85
|
-
"remote_config_repo": args.remote_config_repo,
|
|
86
|
-
"remote_config_branch": args.remote_config_branch,
|
|
87
|
-
"use_secrets_manager": args.use_secrets_manager,
|
|
88
|
-
"send_metrics": args.send_metrics,
|
|
89
|
-
"sonar_url": args.sonar_url,
|
|
90
|
-
"sonar_instance": args.sonar_instance,
|
|
91
|
-
"token_cmdb": args.token_cmdb,
|
|
92
|
-
"token_vulnerability_management": args.token_vulnerability_management,
|
|
93
|
-
"token_sonar": args.token_sonar,
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
def runner_report_sonar():
|
|
12
|
+
def runner_report_sonar(
|
|
13
|
+
vulnerability_management_gateway,
|
|
14
|
+
secrets_manager_gateway,
|
|
15
|
+
devops_platform_gateway,
|
|
16
|
+
remote_config_source_gateway,
|
|
17
|
+
metrics_manager_gateway,
|
|
18
|
+
args
|
|
19
|
+
):
|
|
97
20
|
try:
|
|
98
|
-
vulnerability_management_gateway = DefectDojoPlatform()
|
|
99
|
-
secrets_manager_gateway = SecretsManager()
|
|
100
|
-
devops_platform_gateway = AzureDevops()
|
|
101
21
|
sonar_gateway = SonarAdapter()
|
|
102
|
-
metrics_manager_gateway = S3Manager()
|
|
103
|
-
args = get_inputs_from_cli(sys.argv[1:])
|
|
104
22
|
|
|
105
23
|
init_report_sonar(
|
|
106
24
|
vulnerability_management_gateway=vulnerability_management_gateway,
|
|
107
25
|
secrets_manager_gateway=secrets_manager_gateway,
|
|
108
26
|
devops_platform_gateway=devops_platform_gateway,
|
|
27
|
+
remote_config_source_gateway=remote_config_source_gateway,
|
|
109
28
|
sonar_gateway=sonar_gateway,
|
|
110
29
|
metrics_manager_gateway=metrics_manager_gateway,
|
|
111
30
|
args=args,
|
|
@@ -119,7 +38,3 @@ def runner_report_sonar():
|
|
|
119
38
|
)
|
|
120
39
|
)
|
|
121
40
|
print(devops_platform_gateway.result_pipeline("failed"))
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
if __name__ == "__main__":
|
|
125
|
-
runner_report_sonar()
|
|
@@ -33,11 +33,13 @@ class ReportSonar:
|
|
|
33
33
|
vulnerability_management_gateway: VulnerabilityManagementGateway,
|
|
34
34
|
secrets_manager_gateway: SecretsManagerGateway,
|
|
35
35
|
devops_platform_gateway: DevopsPlatformGateway,
|
|
36
|
+
remote_config_source_gateway: DevopsPlatformGateway,
|
|
36
37
|
sonar_gateway: SonarGateway
|
|
37
38
|
):
|
|
38
39
|
self.vulnerability_management_gateway = vulnerability_management_gateway
|
|
39
40
|
self.secrets_manager_gateway = secrets_manager_gateway
|
|
40
41
|
self.devops_platform_gateway = devops_platform_gateway
|
|
42
|
+
self.remote_config_source_gateway = remote_config_source_gateway
|
|
41
43
|
self.sonar_gateway = sonar_gateway
|
|
42
44
|
|
|
43
45
|
def process(self, args):
|
|
@@ -58,7 +60,7 @@ class ReportSonar:
|
|
|
58
60
|
pipeline_name,
|
|
59
61
|
self.devops_platform_gateway.get_source_code_management_uri()
|
|
60
62
|
)
|
|
61
|
-
config_tool = self.
|
|
63
|
+
config_tool = self.remote_config_source_gateway.get_remote_config(
|
|
62
64
|
args["remote_config_repo"],
|
|
63
65
|
"/engine_core/ConfigTool.json",
|
|
64
66
|
args["remote_config_branch"]
|
|
@@ -78,9 +80,9 @@ class ReportSonar:
|
|
|
78
80
|
secret = args
|
|
79
81
|
secret_tool = None
|
|
80
82
|
|
|
81
|
-
report_config_tool = self.
|
|
83
|
+
report_config_tool = self.remote_config_source_gateway.get_remote_config(
|
|
82
84
|
args["remote_config_repo"],
|
|
83
|
-
"/report_sonar/ConfigTool.json",
|
|
85
|
+
"/engine_integrations/report_sonar/ConfigTool.json",
|
|
84
86
|
args["remote_config_branch"]
|
|
85
87
|
)
|
|
86
88
|
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
from devsecops_engine_tools.engine_utilities.sonarqube.src.domain.usecases.report_sonar import (
|
|
2
2
|
ReportSonar,
|
|
3
3
|
)
|
|
4
|
-
from devsecops_engine_tools.engine_utilities.utils.printers import (
|
|
5
|
-
Printers,
|
|
6
|
-
)
|
|
7
4
|
from devsecops_engine_tools.engine_core.src.domain.usecases.metrics_manager import (
|
|
8
5
|
MetricsManager,
|
|
9
6
|
)
|
|
@@ -18,21 +15,20 @@ def init_report_sonar(
|
|
|
18
15
|
vulnerability_management_gateway,
|
|
19
16
|
secrets_manager_gateway,
|
|
20
17
|
devops_platform_gateway,
|
|
18
|
+
remote_config_source_gateway,
|
|
21
19
|
sonar_gateway,
|
|
22
20
|
metrics_manager_gateway,
|
|
23
21
|
args,
|
|
24
22
|
):
|
|
25
|
-
config_tool =
|
|
23
|
+
config_tool = remote_config_source_gateway.get_remote_config(
|
|
26
24
|
args["remote_config_repo"], "/engine_core/ConfigTool.json", args["remote_config_branch"]
|
|
27
25
|
)
|
|
28
|
-
report_config_tool =
|
|
29
|
-
args["remote_config_repo"], "/report_sonar/ConfigTool.json", args["remote_config_branch"]
|
|
26
|
+
report_config_tool = remote_config_source_gateway.get_remote_config(
|
|
27
|
+
args["remote_config_repo"], "/engine_integrations/report_sonar/ConfigTool.json", args["remote_config_branch"]
|
|
30
28
|
)
|
|
31
|
-
excluded_pipelines =
|
|
32
|
-
args["remote_config_repo"], "/report_sonar/Exclusions.json", args["remote_config_branch"]
|
|
29
|
+
excluded_pipelines = remote_config_source_gateway.get_remote_config(
|
|
30
|
+
args["remote_config_repo"], "/engine_integrations/report_sonar/Exclusions.json", args["remote_config_branch"]
|
|
33
31
|
)
|
|
34
|
-
|
|
35
|
-
Printers.print_logo_tool(config_tool["BANNER"])
|
|
36
32
|
|
|
37
33
|
pipeline_name = devops_platform_gateway.get_variable("pipeline_name")
|
|
38
34
|
branch = devops_platform_gateway.get_variable("branch_tag")
|
|
@@ -61,6 +57,7 @@ def init_report_sonar(
|
|
|
61
57
|
vulnerability_management_gateway,
|
|
62
58
|
secrets_manager_gateway,
|
|
63
59
|
devops_platform_gateway,
|
|
60
|
+
remote_config_source_gateway,
|
|
64
61
|
sonar_gateway,
|
|
65
62
|
).process(args)
|
|
66
63
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
version = '1.
|
|
1
|
+
version = '1.93.0'
|
{devsecops_engine_tools-1.91.0.dist-info → devsecops_engine_tools-1.93.0.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: devsecops-engine-tools
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.93.0
|
|
4
4
|
Summary: Tool for DevSecOps strategy
|
|
5
5
|
Home-page: https://github.com/bancolombia/devsecops-engine-tools
|
|
6
6
|
Author: Bancolombia DevSecOps Team
|
|
@@ -108,6 +108,10 @@ devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_con
|
|
|
108
108
|
┃ ┗ 📂engine_dependencies
|
|
109
109
|
┃ ┗ 📜ConfigTool.json
|
|
110
110
|
┃ ┗ 📜Exclusions.json
|
|
111
|
+
┣ 📂engine_integrations
|
|
112
|
+
┃ ┗ 📂report_sonar
|
|
113
|
+
┃ ┗ 📜ConfigTool.json
|
|
114
|
+
┃ ┗ 📜Exclusions.json
|
|
111
115
|
```
|
|
112
116
|
For more information visit [here](https://github.com/bancolombia/devsecops-engine-tools/blob/trunk/example_remote_config_local/README.md)
|
|
113
117
|
#### Tools available for the modules (Configuration engine_core/ConfigTool.json)
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
devsecops_engine_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
devsecops_engine_tools/version.py,sha256=
|
|
2
|
+
devsecops_engine_tools/version.py,sha256=Cq2d_sTJlpopO1NPuYFPni1ALB_Qz7XCbOThymniec8,19
|
|
3
3
|
devsecops_engine_tools/engine_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
devsecops_engine_tools/engine_core/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
devsecops_engine_tools/engine_core/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
-
devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py,sha256=
|
|
6
|
+
devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py,sha256=tw8E4AVN7SL1bLfqVe_XPJ2pZT5AN8N1KEIfo6Itwpk,10770
|
|
7
7
|
devsecops_engine_tools/engine_core/src/deployment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
8
|
devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
9
|
devsecops_engine_tools/engine_core/src/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -37,6 +37,8 @@ devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_man
|
|
|
37
37
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py,sha256=ELihQBgSPH4f9QCyg2dgjudsFitaqgdsljnVOmaA_v4,1972
|
|
38
38
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py,sha256=dKe8hno53uC7JDzRWeBdBeRbDHAasEYLxVaFSvWUVxU,5863
|
|
40
|
+
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/cdxgen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
|
+
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/cdxgen/cdxgen.py,sha256=t1CTeQG2ePBwUdeNinSYEi3vyMjufD0KuHUIxRZCsAU,4370
|
|
40
42
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
43
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=ZjtlXKAhAwHCSJTkA2X0Z-4utoCY6lvipqYJ6gkk6OU,32417
|
|
42
44
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -50,7 +52,7 @@ devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_lo
|
|
|
50
52
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
53
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/syft.py,sha256=hP5MitHTeZf3Ia-xwi5bUdIU5hIwbUNuDSzcsqlxG5c,4457
|
|
52
54
|
devsecops_engine_tools/engine_core/src/infrastructure/entry_points/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
53
|
-
devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py,sha256=
|
|
55
|
+
devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py,sha256=BjA2jQfWpZrCfk9tpaZFL2A8dSKj26p-zIP61GBLqXk,2627
|
|
54
56
|
devsecops_engine_tools/engine_core/src/infrastructure/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
55
57
|
devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py,sha256=wfy_PosHS0rrvkdiUYczxIcc8ZNwfqzWwqVxrmRTCBI,264
|
|
56
58
|
devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py,sha256=lDtaozInb5m2R8Y-oGQasroksCRw_N_Ltz7gLkSguX8,380
|
|
@@ -89,6 +91,16 @@ devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/entry_point_d
|
|
|
89
91
|
devsecops_engine_tools/engine_dast/src/infrastructure/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
90
92
|
devsecops_engine_tools/engine_dast/src/infrastructure/helpers/file_generator_tool.py,sha256=usSGuFYziitOj3aGa9ifvpfJ-J3qX4c0GXbPm3PmTnQ,2604
|
|
91
93
|
devsecops_engine_tools/engine_dast/src/infrastructure/helpers/json_handler.py,sha256=qQkSO0EXguVGZN6hSb356sB0HS0ZdcjfXsnPelfUnyg,444
|
|
94
|
+
devsecops_engine_tools/engine_integrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
95
|
+
devsecops_engine_tools/engine_integrations/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
|
+
devsecops_engine_tools/engine_integrations/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
97
|
+
devsecops_engine_tools/engine_integrations/src/applications/runner_engine_integrations.py,sha256=oynNsETemfPXG7bKTaQnH161-OkVySt_6brB2Oqh8m8,5594
|
|
98
|
+
devsecops_engine_tools/engine_integrations/src/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
99
|
+
devsecops_engine_tools/engine_integrations/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
100
|
+
devsecops_engine_tools/engine_integrations/src/domain/usecases/handle_integrations.py,sha256=lPGwUNN9Oth3uQp-akNSUkJWnkP_o03lvkv4MnCsnO8,1935
|
|
101
|
+
devsecops_engine_tools/engine_integrations/src/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
102
|
+
devsecops_engine_tools/engine_integrations/src/infrastructure/entry_points/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
103
|
+
devsecops_engine_tools/engine_integrations/src/infrastructure/entry_points/entry_point_integrations.py,sha256=RV2oynZVww4q9KeH8ISCpVTT7ZwbNy6F99MwIGk_B5A,1194
|
|
92
104
|
devsecops_engine_tools/engine_risk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
93
105
|
devsecops_engine_tools/engine_risk/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
94
106
|
devsecops_engine_tools/engine_risk/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -226,8 +238,8 @@ devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_de
|
|
|
226
238
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
227
239
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
228
240
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
229
|
-
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/ContextDependencies.py,sha256=wm_QYNrAWePWsn6YXBtHRriIp1mfx2awuitzuBRwd5o,376
|
|
230
241
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
242
|
+
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/context_dependencies.py,sha256=wm_QYNrAWePWsn6YXBtHRriIp1mfx2awuitzuBRwd5o,376
|
|
231
243
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
232
244
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py,sha256=A4WPW-cNMlitI7-P2L-W2hFUPvIU7Ejk6JxRJGATfwc,301
|
|
233
245
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py,sha256=78WSYsEzt4394FEURSBmwV1pBztlORXaePFQ6GOZGGk,444
|
|
@@ -239,10 +251,10 @@ devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/__init_
|
|
|
239
251
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
240
252
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
241
253
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_deserialize.py,sha256=yT8C4bGIMii8XE8wnJW0bv6NI2DP-fpvGZTnG5H7gSg,8875
|
|
242
|
-
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py,sha256=
|
|
254
|
+
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py,sha256=jlz_6bAgCNPKqWgnPow6twOYYMf7ewUh5d1WPwHCrSk,7318
|
|
243
255
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
244
256
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py,sha256=ZUk-e1PKzV7uRAT7BpET363pgl2eMnXMCGSpewsOpKg,2236
|
|
245
|
-
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py,sha256=
|
|
257
|
+
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py,sha256=lYRl76dPzvfossuRJaRFGwTZNdC9wxJ23AivZdp9nhM,11608
|
|
246
258
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
247
259
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py,sha256=t2nAJ86ZyL6nz_tdrcWZ3cf5pnXhJ_q1AfVAbNhcrSk,3772
|
|
248
260
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -324,19 +336,19 @@ devsecops_engine_tools/engine_utilities/sbom/deserealizator.py,sha256=6mFNI0B-MB
|
|
|
324
336
|
devsecops_engine_tools/engine_utilities/sonarqube/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
325
337
|
devsecops_engine_tools/engine_utilities/sonarqube/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
326
338
|
devsecops_engine_tools/engine_utilities/sonarqube/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
327
|
-
devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py,sha256=
|
|
339
|
+
devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py,sha256=FpCY8WUIa3N1LWTVDjy_ZG8-uOFfNnIJXydJjCPBTYM,1485
|
|
328
340
|
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
329
341
|
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
330
342
|
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
331
343
|
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/sonar_gateway.py,sha256=mgycD3bzC_BYv7qT0tMLAro9hyNOvi4gJRzceYNF0t8,1339
|
|
332
344
|
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
333
|
-
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py,sha256=
|
|
345
|
+
devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py,sha256=KJNOTqgxX-wCOJtD_LlyZt5Pp388_MzQO4IdQDcSIJ0,10912
|
|
334
346
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
335
347
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
336
348
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
337
349
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/sonarqube_report.py,sha256=BpCLMgFQjytZc1HfZ5hXqX44E8T0JhLpAaNOVq5pFjo,4909
|
|
338
350
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
339
|
-
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py,sha256=
|
|
351
|
+
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py,sha256=7Rw310PgVhnGyyltFZ4zvxnC78ukMKQBlMQhI5Z0owI,2790
|
|
340
352
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
341
353
|
devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/utils.py,sha256=SGOWrkzQrvOt9bRhhSfgiMzj1695e1W0B9ox9C1ihQI,294
|
|
342
354
|
devsecops_engine_tools/engine_utilities/ssh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -350,8 +362,8 @@ devsecops_engine_tools/engine_utilities/utils/name_conversion.py,sha256=ADJrRGax
|
|
|
350
362
|
devsecops_engine_tools/engine_utilities/utils/printers.py,sha256=amYAr9YQfYgR6jK9a2l26z3oovFPQ3FAKmhq6BKhEBA,623
|
|
351
363
|
devsecops_engine_tools/engine_utilities/utils/session_manager.py,sha256=Z0fdhB3r-dxU0nGSD9zW_B4r2Qol1rUnUCkhFR0U-HQ,487
|
|
352
364
|
devsecops_engine_tools/engine_utilities/utils/utils.py,sha256=HCjS900TBoNcHrC4LaiP-Kf9frVdtagF130qOUgnO2M,6757
|
|
353
|
-
devsecops_engine_tools-1.
|
|
354
|
-
devsecops_engine_tools-1.
|
|
355
|
-
devsecops_engine_tools-1.
|
|
356
|
-
devsecops_engine_tools-1.
|
|
357
|
-
devsecops_engine_tools-1.
|
|
365
|
+
devsecops_engine_tools-1.93.0.dist-info/METADATA,sha256=42BtV6Bz8Uq6qlx9r_987lu22T7LLOqIOD3teQoeX_M,12218
|
|
366
|
+
devsecops_engine_tools-1.93.0.dist-info/WHEEL,sha256=iAkIy5fosb7FzIOwONchHf19Qu7_1wCWyFNR5gu9nU0,91
|
|
367
|
+
devsecops_engine_tools-1.93.0.dist-info/entry_points.txt,sha256=OWAww5aBsGeMv0kWhSgVNB0ySKKpYuJd4dly0ikFPkc,283
|
|
368
|
+
devsecops_engine_tools-1.93.0.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
|
|
369
|
+
devsecops_engine_tools-1.93.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
[console_scripts]
|
|
2
|
+
devsecops-engine-tools = devsecops_engine_tools.engine_core.src.applications.runner_engine_core:application_core
|
|
3
|
+
devsecops-engine-tools-integrations = devsecops_engine_tools.engine_integrations.src.applications.runner_engine_integrations:runner_engine_integrations
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
[console_scripts]
|
|
2
|
-
devsecops-engine-tools = devsecops_engine_tools.engine_core.src.applications.runner_engine_core:application_core
|
|
3
|
-
devsecops-engine-tools.report-sonar = devsecops_engine_tools.engine_utilities.sonarqube.src.applications.runner_report_sonar:runner_report_sonar
|
|
File without changes
|
|
File without changes
|
{devsecops_engine_tools-1.91.0.dist-info → devsecops_engine_tools-1.93.0.dist-info}/top_level.txt
RENAMED
|
File without changes
|