atlas-init 0.4.0__py3-none-any.whl → 0.4.1__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.
- atlas_init/__init__.py +1 -1
- atlas_init/cli.py +1 -1
- atlas_init/cli_cfn/aws.py +2 -2
- atlas_init/cli_helper/go.py +1 -1
- atlas_init/cli_helper/run.py +3 -3
- atlas_init/cli_helper/run_manager.py +3 -3
- atlas_init/cli_tf/debug_logs.py +3 -3
- atlas_init/cli_tf/github_logs.py +2 -2
- atlas_init/cli_tf/go_test_run.py +1 -1
- atlas_init/cli_tf/hcl/parser.py +1 -1
- atlas_init/cli_tf/schema_table.py +1 -3
- atlas_init/cli_tf/schema_v3.py +1 -1
- atlas_init/settings/env_vars.py +1 -1
- atlas_init/settings/env_vars_generated.py +1 -1
- atlas_init/tf/modules/cfn/cfn.tf +1 -1
- atlas_init/tf/modules/cloud_provider/cloud_provider.tf +1 -1
- {atlas_init-0.4.0.dist-info → atlas_init-0.4.1.dist-info}/METADATA +6 -6
- {atlas_init-0.4.0.dist-info → atlas_init-0.4.1.dist-info}/RECORD +20 -21
- atlas_init/cli_tf/go_test_run_format.py +0 -31
- {atlas_init-0.4.0.dist-info → atlas_init-0.4.1.dist-info}/WHEEL +0 -0
- {atlas_init-0.4.0.dist-info → atlas_init-0.4.1.dist-info}/entry_points.txt +0 -0
atlas_init/__init__.py
CHANGED
atlas_init/cli.py
CHANGED
@@ -78,7 +78,7 @@ def apply(context: typer.Context, *, skip_outputs: bool = False):
|
|
78
78
|
hook_func() # type: ignore
|
79
79
|
|
80
80
|
|
81
|
-
def _plan_or_apply(extra_args: list[str], command: Literal["plan", "apply"], *, skip_outputs: bool) -> list[TestSuite]:
|
81
|
+
def _plan_or_apply(extra_args: list[str], command: Literal["plan", "apply"], *, skip_outputs: bool) -> list[TestSuite]: # type: ignore
|
82
82
|
settings = init_settings()
|
83
83
|
logger.info(f"using the '{command}' command, extra args: {extra_args}")
|
84
84
|
try:
|
atlas_init/cli_cfn/aws.py
CHANGED
@@ -50,7 +50,7 @@ def deregister_cfn_resource_type(type_name: str, deregister: bool, region_filter
|
|
50
50
|
logger.info(f"deregistering: {arn}")
|
51
51
|
client.deregister_type(Arn=arn)
|
52
52
|
if default_version_arn is not None:
|
53
|
-
logger.info(f"deregistering default-arn: {
|
53
|
+
logger.info(f"deregistering default-arn: {default_version_arn}")
|
54
54
|
client.deregister_type(Arn=default_version_arn)
|
55
55
|
except Exception as e:
|
56
56
|
if "The type does not exist" in repr(e):
|
@@ -336,7 +336,7 @@ def get_last_cfn_type(
|
|
336
336
|
"Filters": {"Category": category, "TypeNamePrefix": prefix},
|
337
337
|
"MaxResults": 100,
|
338
338
|
}
|
339
|
-
next_token = ""
|
339
|
+
next_token = "" # nosec
|
340
340
|
for _ in range(100):
|
341
341
|
types_response: ListTypesOutputTypeDef = client.list_types(**kwargs) # type: ignore
|
342
342
|
next_token = types_response.get("NextToken", "")
|
atlas_init/cli_helper/go.py
CHANGED
atlas_init/cli_helper/run.py
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import os
|
2
|
-
import subprocess
|
2
|
+
import subprocess # nosec
|
3
3
|
import sys
|
4
4
|
from logging import Logger
|
5
5
|
from pathlib import Path
|
@@ -34,7 +34,7 @@ def run_command_is_ok(
|
|
34
34
|
stdout=output,
|
35
35
|
cwd=cwd,
|
36
36
|
env=env,
|
37
|
-
shell=True, # noqa: S602 # We control the calls to this function and don't suspect any shell injection
|
37
|
+
shell=True, # noqa: S602 # We control the calls to this function and don't suspect any shell injection #nosec
|
38
38
|
)
|
39
39
|
is_ok = exit_code == 0
|
40
40
|
if is_ok:
|
@@ -104,6 +104,6 @@ def run_command_is_ok_output(command: str, cwd: Path, logger: Logger, env: dict
|
|
104
104
|
|
105
105
|
def add_to_clipboard(clipboard_content: str, logger: Logger):
|
106
106
|
if pb_binary := find_binary_on_path("pbcopy", logger, allow_missing=True):
|
107
|
-
subprocess.run(pb_binary, text=True, input=clipboard_content, check=True)
|
107
|
+
subprocess.run(pb_binary, text=True, input=clipboard_content, check=True) # nosec
|
108
108
|
else:
|
109
109
|
logger.warning("pbcopy not found on $PATH")
|
@@ -3,7 +3,7 @@ from __future__ import annotations
|
|
3
3
|
import logging
|
4
4
|
import os
|
5
5
|
import signal
|
6
|
-
import subprocess
|
6
|
+
import subprocess # nosec
|
7
7
|
import sys
|
8
8
|
import threading
|
9
9
|
import time
|
@@ -194,7 +194,7 @@ class RunManager:
|
|
194
194
|
sys_stderr = sys.stderr
|
195
195
|
|
196
196
|
def read_stderr(process: subprocess.Popen):
|
197
|
-
for line in process.stderr:
|
197
|
+
for line in process.stderr: # type: ignore
|
198
198
|
sys_stderr.write(line)
|
199
199
|
result._add_line(line)
|
200
200
|
|
@@ -211,7 +211,7 @@ class RunManager:
|
|
211
211
|
stderr=subprocess.PIPE,
|
212
212
|
stdin=sys.stdin,
|
213
213
|
start_new_session=True,
|
214
|
-
shell=True, # noqa: S602 # We control the calls to this function and don't suspect any shell injection
|
214
|
+
shell=True, # noqa: S602 # We control the calls to this function and don't suspect any shell injection #nosec
|
215
215
|
bufsize=0,
|
216
216
|
text=True, # This makes it return strings instead of bytes
|
217
217
|
) as process:
|
atlas_init/cli_tf/debug_logs.py
CHANGED
@@ -154,7 +154,7 @@ MARKER_TEST = "Starting TestSteps: "
|
|
154
154
|
|
155
155
|
|
156
156
|
class FileRef(NamedTuple):
|
157
|
-
|
157
|
+
request_index: int
|
158
158
|
line_start: int
|
159
159
|
line_end: int
|
160
160
|
|
@@ -249,12 +249,12 @@ def parse_raw_req_responses(
|
|
249
249
|
in_response = True
|
250
250
|
current_start = i + 1
|
251
251
|
if in_request and line.startswith(MARKER_END):
|
252
|
-
key = FileRef(
|
252
|
+
key = FileRef(request_index=request_count, line_start=current_start, line_end=i)
|
253
253
|
requests[key] = log_lines[current_start:i]
|
254
254
|
request_count += 1
|
255
255
|
in_request = False
|
256
256
|
if in_response and line.startswith(MARKER_END):
|
257
|
-
key = FileRef(
|
257
|
+
key = FileRef(request_index=request_count, line_start=current_start, line_end=i)
|
258
258
|
responses[key] = log_lines[current_start:i]
|
259
259
|
response_count += 1
|
260
260
|
in_response = False
|
atlas_init/cli_tf/github_logs.py
CHANGED
@@ -27,7 +27,7 @@ from atlas_init.settings.path import (
|
|
27
27
|
|
28
28
|
logger = logging.getLogger(__name__)
|
29
29
|
|
30
|
-
GH_TOKEN_ENV_NAME = "GH_TOKEN" # noqa: S105
|
30
|
+
GH_TOKEN_ENV_NAME = "GH_TOKEN" # noqa: S105 #nosec
|
31
31
|
GITHUB_CI_RUN_LOGS_ENV_NAME = "GITHUB_CI_RUN_LOGS"
|
32
32
|
GITHUB_CI_SUMMARY_DIR_ENV_NAME = "GITHUB_CI_SUMMARY_DIR_ENV_NAME"
|
33
33
|
REQUIRED_GH_ENV_VARS = [GH_TOKEN_ENV_NAME, GITHUB_CI_RUN_LOGS_ENV_NAME]
|
@@ -88,7 +88,7 @@ def find_test_runs(
|
|
88
88
|
repository = tf_repo()
|
89
89
|
for workflow in repository.get_workflow_runs(
|
90
90
|
created=f">{since.strftime('%Y-%m-%d')}",
|
91
|
-
branch=branch,
|
91
|
+
branch=branch, # type: ignore
|
92
92
|
exclude_pull_requests=True, # type: ignore
|
93
93
|
):
|
94
94
|
if not include_workflow(workflow):
|
atlas_init/cli_tf/go_test_run.py
CHANGED
atlas_init/cli_tf/hcl/parser.py
CHANGED
@@ -108,7 +108,7 @@ def iter_blocks(block: Block, level: int | None = None) -> Iterable[Block]:
|
|
108
108
|
hcl="\n".join(block_lines),
|
109
109
|
)
|
110
110
|
if line_level_start_names.get(level) is not None:
|
111
|
-
raise ValueError(f"Unfinished block @ {line_nr} in {block.name} at level {level}")
|
111
|
+
raise ValueError(f"Unfinished block @ {line_nr} in {block.name} at level {level}") # pyright: ignore
|
112
112
|
|
113
113
|
|
114
114
|
def hcl_attrs(block: Block) -> dict[str, str]:
|
atlas_init/cli_tf/schema_v3.py
CHANGED
atlas_init/settings/env_vars.py
CHANGED
@@ -254,7 +254,7 @@ class AtlasInitSettings(AtlasInitPaths, ExternalSettings):
|
|
254
254
|
return variables
|
255
255
|
|
256
256
|
|
257
|
-
def active_suites(settings: AtlasInitSettings) -> list[TestSuite]:
|
257
|
+
def active_suites(settings: AtlasInitSettings) -> list[TestSuite]: # type: ignore
|
258
258
|
repo_path, cwd_rel_path = repo_path_rel_path()
|
259
259
|
return config_active_suites(settings.config, repo_path, cwd_rel_path, settings.test_suites_parsed)
|
260
260
|
|
@@ -21,7 +21,7 @@ class RealmSettings(_EnvVarsGenerated):
|
|
21
21
|
MONGODB_REALM_FUNCTION_ID: str
|
22
22
|
MONGODB_REALM_FUNCTION_NAME: str
|
23
23
|
MONGODB_REALM_BASE_URL: str
|
24
|
-
RANDOM_INT_100K: str = Field(default_factory=lambda: str(random.randint(0, 100_000))) # noqa: S311 # not used for cryptographic purposes
|
24
|
+
RANDOM_INT_100K: str = Field(default_factory=lambda: str(random.randint(0, 100_000))) # noqa: S311 # not used for cryptographic purposes # nosec
|
25
25
|
|
26
26
|
|
27
27
|
class EnvVarsGenerated(AtlasSettings):
|
atlas_init/tf/modules/cfn/cfn.tf
CHANGED
@@ -11,7 +11,7 @@ locals {
|
|
11
11
|
resource_actions_yaml = file("${path.module}/resource_actions.yaml")
|
12
12
|
services = yamldecode(local.services_yaml)
|
13
13
|
resource_actions = yamldecode(local.resource_actions_yaml)
|
14
|
-
role_name = "
|
14
|
+
role_name = "mongodb-atlas-cfn-${var.cfn_profile}"
|
15
15
|
iam_policy_statement = {
|
16
16
|
Sid = "Original"
|
17
17
|
Action = local.resource_actions
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: atlas-init
|
3
|
-
Version: 0.4.
|
3
|
+
Version: 0.4.1
|
4
4
|
Project-URL: Documentation, https://github.com/EspenAlbert/atlas-init#readme
|
5
5
|
Project-URL: Issues, https://github.com/EspenAlbert/atlas-init/issues
|
6
6
|
Project-URL: Source, https://github.com/EspenAlbert/atlas-init
|
@@ -11,19 +11,19 @@ Classifier: Programming Language :: Python
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.12
|
12
12
|
Requires-Python: >=3.12
|
13
13
|
Requires-Dist: appdirs==1.4.4
|
14
|
-
Requires-Dist: boto3==1.
|
14
|
+
Requires-Dist: boto3==1.35.92
|
15
15
|
Requires-Dist: gitpython==3.1.42
|
16
16
|
Requires-Dist: humanize==4.9.0
|
17
17
|
Requires-Dist: model-lib==0.0.30
|
18
18
|
Requires-Dist: mypy-boto3-cloudformation==1.34.66
|
19
|
-
Requires-Dist: orjson==3.
|
20
|
-
Requires-Dist: pydantic-settings==2.
|
19
|
+
Requires-Dist: orjson==3.10.13
|
20
|
+
Requires-Dist: pydantic-settings==2.7.1
|
21
21
|
Requires-Dist: pygithub==2.3.0
|
22
|
-
Requires-Dist: requests==2.
|
22
|
+
Requires-Dist: requests==2.32.2
|
23
23
|
Requires-Dist: rich==13.7.1
|
24
24
|
Requires-Dist: stringcase==1.2.0
|
25
25
|
Requires-Dist: tenacity==8.2.3
|
26
|
-
Requires-Dist: typer==0.
|
26
|
+
Requires-Dist: typer==0.15.1
|
27
27
|
Description-Content-Type: text/markdown
|
28
28
|
|
29
29
|
# Atlas Init - A CLI for developing integrations with MongoDB Atlas
|
@@ -1,22 +1,22 @@
|
|
1
|
-
atlas_init/__init__.py,sha256=
|
1
|
+
atlas_init/__init__.py,sha256=hcYIXZJV2-mrLNX9jKTnKK2SSftQXbrqcaDq8Wspcyc,372
|
2
2
|
atlas_init/__main__.py,sha256=dY1dWWvwxRZMmnOFla6RSfti-hMeLeKdoXP7SVYqMUc,52
|
3
3
|
atlas_init/atlas_init.yaml,sha256=DN9zGb8Ll6krET9FgRSSYkvwLAaRNhrd1n-yPanbv9w,2283
|
4
|
-
atlas_init/cli.py,sha256=
|
4
|
+
atlas_init/cli.py,sha256=znbyirZl_tChG4SoGQPEM5iSsJiSVslCdExSja1qvUo,9262
|
5
5
|
atlas_init/cli_args.py,sha256=tiwUYAE0JBSl9lHV6VJ41vFCU90ChBZ4mKvi-YoF_HY,541
|
6
6
|
atlas_init/humps.py,sha256=l0ZXXuI34wwd9TskXhCjULfGbUyK-qNmiyC6_2ow6kU,7339
|
7
7
|
atlas_init/terraform.yaml,sha256=qPrnbzBEP-JAQVkYadHsggRnDmshrOJyiv0ckyZCxwY,2734
|
8
8
|
atlas_init/typer_app.py,sha256=RjOZRIV-hacWksgjLB0ip4DgA1fz5x-yHRWuSwSGEws,4254
|
9
9
|
atlas_init/cli_cfn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
10
10
|
atlas_init/cli_cfn/app.py,sha256=DCwEp7kwJMytuy13jHr2M1jJ6sMWTthOc-LkHtNvoew,6104
|
11
|
-
atlas_init/cli_cfn/aws.py,sha256=
|
11
|
+
atlas_init/cli_cfn/aws.py,sha256=KtJWJmYDknPFtd4j6evMFRwmnFGcLYUFHArV6J49TjI,17911
|
12
12
|
atlas_init/cli_cfn/cfn_parameter_finder.py,sha256=tAadNF1M_U2BTY-m9fXVXFXNQRvfudOja97jT3AiVaI,10811
|
13
13
|
atlas_init/cli_cfn/contract.py,sha256=6gRCvKRh6bn6BiQ3wyai_XNUwbWSqSRlg5GFvSdEcRc,7886
|
14
14
|
atlas_init/cli_cfn/example.py,sha256=_JuFyNEb7QvD4T8jQyAPI3TgnHW0wz0kVuncB5UkbEA,8530
|
15
15
|
atlas_init/cli_cfn/files.py,sha256=kwKDh__O__it2Shz3pHhnle4XUesRd4P929twxUODfI,2651
|
16
16
|
atlas_init/cli_helper/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
|
-
atlas_init/cli_helper/go.py,sha256=
|
18
|
-
atlas_init/cli_helper/run.py,sha256=
|
19
|
-
atlas_init/cli_helper/run_manager.py,sha256=
|
17
|
+
atlas_init/cli_helper/go.py,sha256=9a-hyQMZs_u4D3N2U7aVJGtd972TdcqJ05VlZTbuiBY,8652
|
18
|
+
atlas_init/cli_helper/run.py,sha256=va1eFP-hRvM76lVzvqH8eqGnyfcbzgR0zCMbL9Neb58,3660
|
19
|
+
atlas_init/cli_helper/run_manager.py,sha256=USNRHSm1zuu4H9NRamnxQ2D4gKzrHLk8dZe0G95Be14,9022
|
20
20
|
atlas_init/cli_helper/sdk.py,sha256=exh58-VZwxtosaxM269C62EEy1VnpJPOVziPDPkGsmE,2983
|
21
21
|
atlas_init/cli_helper/sdk_auto_changes.py,sha256=oWyXw7P0PdO28hclRvza_RcIVXAyzu0lCYTJTNBDMeo,189
|
22
22
|
atlas_init/cli_helper/tf_runner.py,sha256=ZEh4WlI-6RV84uBtGNcFgAr8M03As-BLz4fu9wCPULw,3327
|
@@ -26,30 +26,29 @@ atlas_init/cli_root/trigger.py,sha256=In3oS-z8gYYsPxQjHsGmqB1AsUtHPDTxwva5arsajv
|
|
26
26
|
atlas_init/cli_tf/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
27
27
|
atlas_init/cli_tf/app.py,sha256=0Y5c-Pc9ibOz6kXvFlL-yhH_fx1nHLgBgK9OAVqjX9s,11390
|
28
28
|
atlas_init/cli_tf/changelog.py,sha256=biWYKf1pZvXZ-jEgcZ5q9sY7nTGrL2PuI0h9mCILf_g,3181
|
29
|
-
atlas_init/cli_tf/debug_logs.py,sha256=
|
29
|
+
atlas_init/cli_tf/debug_logs.py,sha256=P78XnlvBj0rBSceLF3nIuHPIRBnKKw1Ya2gY2zkbTsU,10046
|
30
30
|
atlas_init/cli_tf/debug_logs_test_data.py,sha256=s85x78pFweVyqL2BchkLuvuG9hm-bwl8zcSO-IQqm6c,9736
|
31
31
|
atlas_init/cli_tf/debug_logs_test_data_package_config.py,sha256=BOAgln1pWne_ZhP6a0SM2ddn2csr0sgGkYf2kMS_V9o,1666
|
32
|
-
atlas_init/cli_tf/github_logs.py,sha256=
|
33
|
-
atlas_init/cli_tf/go_test_run.py,sha256=
|
34
|
-
atlas_init/cli_tf/go_test_run_format.py,sha256=OUd6QPHDeTzbwVuh6MhP-xXgjOOGP9W_sCLJ8KylBTs,1201
|
32
|
+
atlas_init/cli_tf/github_logs.py,sha256=3QnN77qGM9fWNxamh_j7HfXcNPKrg26ut38g9cVoF6g,8280
|
33
|
+
atlas_init/cli_tf/go_test_run.py,sha256=N1iUUKjtyVc97TvQX8U43SIX4llOxnEXkPeC40SCcXw,6799
|
35
34
|
atlas_init/cli_tf/go_test_summary.py,sha256=agr4SITgxchjgOzRpScoTUk-iG38QDLkpnsMtTW9GTY,5382
|
36
35
|
atlas_init/cli_tf/mock_tf_log.py,sha256=-ZOtQmy9w7k7HvrywMqlgohZ6Kerojk-P_xtiTaZ4sc,7555
|
37
36
|
atlas_init/cli_tf/schema.py,sha256=iwvb4wD2Wba0MMu7ooTNAIi1jHbpLiXGPOT51_o_YW8,12431
|
38
37
|
atlas_init/cli_tf/schema_go_parser.py,sha256=PiRfFFVnkhltxcGFfOCgH53wwzIEynw2BXmSfaINLL8,8294
|
39
38
|
atlas_init/cli_tf/schema_inspection.py,sha256=ujLvGfg3baByND4nRD0drZoI45STxo3VfYvim-PfVOc,1764
|
40
|
-
atlas_init/cli_tf/schema_table.py,sha256=
|
39
|
+
atlas_init/cli_tf/schema_table.py,sha256=sxH-WUvBOHPI-HH2-2Y_MwKN-_POlQX3599h6YbfY1U,5261
|
41
40
|
atlas_init/cli_tf/schema_table_models.py,sha256=9gS3gYris0MjEWsY_gbLWcZwJokCUJS1TcVXnq7w5SA,5003
|
42
41
|
atlas_init/cli_tf/schema_v2.py,sha256=NtVW3lPKxHtCMBEwo9zThARpy9oQRbsKd0NrhymAyyE,21960
|
43
42
|
atlas_init/cli_tf/schema_v2_api_parsing.py,sha256=8XtwHNU84VPMATD3CbE-TLeVlgxqZggxY5QQ5YjhX4w,12888
|
44
43
|
atlas_init/cli_tf/schema_v2_sdk.py,sha256=AsAERT18FC97Gdb8r-qFInr4pSA15IGMUvCn-065XGE,12630
|
45
|
-
atlas_init/cli_tf/schema_v3.py,sha256=
|
44
|
+
atlas_init/cli_tf/schema_v3.py,sha256=LUeI2kniUDfd-5iP1TCLXb-Js92VYSXB6FCVLDYAIak,5788
|
46
45
|
atlas_init/cli_tf/schema_v3_sdk.py,sha256=5RWbhqKT8jEGgJrQaaT7xTRToviIzZZOxuJO5MNLYwo,9929
|
47
46
|
atlas_init/cli_tf/schema_v3_sdk_base.py,sha256=oe7WRZc0R_UYP5Yry4kDAMxOKAUHvQrc9bIdjfLshYk,2131
|
48
47
|
atlas_init/cli_tf/schema_v3_sdk_create.py,sha256=64AluGbQP47RRdY6Cz4KZRN9DdQISW5lLxQ-E1od5dc,8342
|
49
48
|
atlas_init/cli_tf/hcl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
50
49
|
atlas_init/cli_tf/hcl/cli.py,sha256=6V1kU_a1c4LA3rS7sWN821gQex00fb70AUyd07xO0es,5760
|
51
50
|
atlas_init/cli_tf/hcl/cluster_mig.py,sha256=kMb_0V_XWr_iQj-mZZ-mmzIvYOLfuC4FYGYYSe9VKkQ,12496
|
52
|
-
atlas_init/cli_tf/hcl/parser.py,sha256=
|
51
|
+
atlas_init/cli_tf/hcl/parser.py,sha256=wqj0YIn9nyEfjRqZnM7FH4yL43-K9ANvRiy9RCahImc,4833
|
53
52
|
atlas_init/cloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
54
53
|
atlas_init/cloud/aws.py,sha256=AXVobJ724S6OeEs_uXH9dvecc_klnXqejRnI7KaLyzo,4935
|
55
54
|
atlas_init/repos/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -58,8 +57,8 @@ atlas_init/repos/go_sdk.py,sha256=1OzM9DjHEAzAAuI9ygoRRuhUK2gqpOhXExXRqhqa0tg,17
|
|
58
57
|
atlas_init/repos/path.py,sha256=wrT8e01OBoAHj8iMrxqutgqWu-BHPe9-bEWtcZRu238,4187
|
59
58
|
atlas_init/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
60
59
|
atlas_init/settings/config.py,sha256=jQvLmPEocnXyfcKkTshp3TfQNPEuTayRauuOUqixPBA,6378
|
61
|
-
atlas_init/settings/env_vars.py,sha256=
|
62
|
-
atlas_init/settings/env_vars_generated.py,sha256=
|
60
|
+
atlas_init/settings/env_vars.py,sha256=1M4EKveUbrHaEuSyWyZ_bdK7MUTHhBu8-tFGSimqCCI,10659
|
61
|
+
atlas_init/settings/env_vars_generated.py,sha256=c3dMShnSvqLsiJTIMoHCpC9Tvk35b5lra40Ske9l4gE,980
|
63
62
|
atlas_init/settings/interactive.py,sha256=Xy1Z5WMAOSaJ-vQI_4xjAbSR92rWQgnffwVoDT27L68,340
|
64
63
|
atlas_init/settings/path.py,sha256=KkXysu6-0AuSjsvYGknYGJX1hL2j1RD-Fpf8KsVYpkE,2618
|
65
64
|
atlas_init/settings/rich_utils.py,sha256=aIENYZ18XDqpK-f8zSNwL8PnOlW4Wv0BUT4x3REWHBM,1993
|
@@ -75,11 +74,11 @@ atlas_init/tf/modules/aws_vars/aws_vars.tf,sha256=0SItDIZUWQCpw4o0y2jZjUY1LnUeUd
|
|
75
74
|
atlas_init/tf/modules/aws_vpc/aws_vpc.tf,sha256=TnWyDFLHi_aYEnqRCNLDjQmCSUPA0x_4A9fCvXL0vO0,1838
|
76
75
|
atlas_init/tf/modules/aws_vpc/provider.tf,sha256=0c2_hW9dSnwbK_1xdD4iSLiD6PACneBx5rEW06uWYlM,210
|
77
76
|
atlas_init/tf/modules/cfn/assume_role_services.yaml,sha256=Sv-FPsLeZ0K_3x0Eq5iJcf7yGe5ax8I0uqzvUlMZDOY,94
|
78
|
-
atlas_init/tf/modules/cfn/cfn.tf,sha256=
|
77
|
+
atlas_init/tf/modules/cfn/cfn.tf,sha256=ajBFLh0RYwAqRhp9-yanYKqfjNus0r88_gxRFdFfEj4,3019
|
79
78
|
atlas_init/tf/modules/cfn/kms.tf,sha256=W-HfFbQ2J1GQC279Ou-PLq4huf0mGn235BCEgO7n9aI,1635
|
80
79
|
atlas_init/tf/modules/cfn/resource_actions.yaml,sha256=rPQZ46YiN-PnpY91hDPOFJgZtlAiyIiyVE3P9yvo50o,540
|
81
80
|
atlas_init/tf/modules/cfn/variables.tf,sha256=qbYffl4ly0K8IRTwG3P7-Yyzm5OBTVRZCmDP69WMp44,379
|
82
|
-
atlas_init/tf/modules/cloud_provider/cloud_provider.tf,sha256=
|
81
|
+
atlas_init/tf/modules/cloud_provider/cloud_provider.tf,sha256=l1Tf0FegoeHYUvBmMBv60ZtZjeKIkT9S6mS4cc6815M,1281
|
83
82
|
atlas_init/tf/modules/cloud_provider/provider.tf,sha256=IDpMSLO3GjkxCvF-4qdHugxYq_w-Epujr51HZf_xB0Y,237
|
84
83
|
atlas_init/tf/modules/cluster/cluster.tf,sha256=TId4JsmSDlSHtIzmo3p4GKUVRhzZK9eoiI7DmoYgdq0,3041
|
85
84
|
atlas_init/tf/modules/cluster/provider.tf,sha256=RmUmMzMfOT5LZIWYqxM2EgtkI7JWqZfj3p3TxZkZoLk,161
|
@@ -91,7 +90,7 @@ atlas_init/tf/modules/vpc_peering/vpc_peering.tf,sha256=hJ3KJdGbLpOQednUpVuiJ0Cq
|
|
91
90
|
atlas_init/tf/modules/vpc_privatelink/atlas-privatelink.tf,sha256=FloaaX1MNDvoMZxBnEopeLKyfIlq6kaX2dmx8WWlXNU,1298
|
92
91
|
atlas_init/tf/modules/vpc_privatelink/variables.tf,sha256=gktHCDYD4rz6CEpLg5aiXcFbugw4L5S2Fqc52QYdJyc,255
|
93
92
|
atlas_init/tf/modules/vpc_privatelink/versions.tf,sha256=G0u5V_Hvvrkux_tqfOY05pA-GzSp_qILpfx1dZaTGDc,237
|
94
|
-
atlas_init-0.4.
|
95
|
-
atlas_init-0.4.
|
96
|
-
atlas_init-0.4.
|
97
|
-
atlas_init-0.4.
|
93
|
+
atlas_init-0.4.1.dist-info/METADATA,sha256=SHZ54VmuOMTcNQp_1wQpDAlw0LHeAEYifDrk15yva3g,5662
|
94
|
+
atlas_init-0.4.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
95
|
+
atlas_init-0.4.1.dist-info/entry_points.txt,sha256=oSNFIEAS9nUZyyZ8Fc-0F0U5j-NErygy01LpJVSHapQ,57
|
96
|
+
atlas_init-0.4.1.dist-info/RECORD,,
|
@@ -1,31 +0,0 @@
|
|
1
|
-
from collections import Counter
|
2
|
-
|
3
|
-
from github.WorkflowJob import WorkflowJob
|
4
|
-
from zero_3rdparty import datetime_utils
|
5
|
-
|
6
|
-
from atlas_init.cli_tf.go_test_run import GoTestRun, GoTestStatus
|
7
|
-
|
8
|
-
|
9
|
-
def format_job(job: WorkflowJob) -> str:
|
10
|
-
date = datetime_utils.date_filename(job.created_at)
|
11
|
-
exec_time = "0s"
|
12
|
-
if complete_ts := job.completed_at:
|
13
|
-
exec_time = f"{(complete_ts - job.created_at).total_seconds()}s"
|
14
|
-
return f"{date}_{job.workflow_name}_attempt{job.run_attempt}_ ({exec_time})"
|
15
|
-
|
16
|
-
|
17
|
-
def job_summary(runs: list[GoTestRun]) -> tuple[WorkflowJob, str]:
|
18
|
-
status_counts: dict[GoTestStatus, int] = Counter()
|
19
|
-
for run in runs:
|
20
|
-
status_counts[run.status] += 1
|
21
|
-
line = [f"{key}={status_counts[key]}" for key in sorted(status_counts.keys())]
|
22
|
-
job = runs[0].job
|
23
|
-
return job, f"{format_job(job)}:" + ",".join(line)
|
24
|
-
|
25
|
-
|
26
|
-
def fail_test_summary(runs: list[GoTestRun]) -> str:
|
27
|
-
failed_runs = [r for r in runs if r.is_failure]
|
28
|
-
failed_details: list[str] = [run.finish_summary() for run in failed_runs]
|
29
|
-
failed_names = [f"- {run.name}" for run in failed_runs]
|
30
|
-
delimiter = "\n" + "-" * 40 + "\n"
|
31
|
-
return "\n".join(failed_details) + delimiter + "\n".join(failed_names)
|
File without changes
|
File without changes
|