qontract-reconcile 0.10.2.dev48__py3-none-any.whl → 0.10.2.dev50__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.
- {qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/METADATA +1 -1
- {qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/RECORD +6 -6
- reconcile/utils/jjb_client.py +5 -1
- tools/qontract_cli.py +34 -0
- {qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/WHEEL +0 -0
- {qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/entry_points.txt +0 -0
{qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/METADATA
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: qontract-reconcile
|
3
|
-
Version: 0.10.2.
|
3
|
+
Version: 0.10.2.dev50
|
4
4
|
Summary: Collection of tools to reconcile services with their desired state as defined in the app-interface DB.
|
5
5
|
Project-URL: homepage, https://github.com/app-sre/qontract-reconcile
|
6
6
|
Project-URL: repository, https://github.com/app-sre/qontract-reconcile
|
{qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/RECORD
RENAMED
@@ -599,7 +599,7 @@ reconcile/utils/imap_client.py,sha256=h8YDiCSCvroErhpH_-KGYI7Y2WU2Q2oSpuxDFbOkSb
|
|
599
599
|
reconcile/utils/instrumented_wrappers.py,sha256=aAO4q6LMpHjJIaFdrouwCEIEl5u3thCCBPSuoEloC60,1082
|
600
600
|
reconcile/utils/jenkins_api.py,sha256=RaKuZmO7_lbI-hE6c_Pq2a6CQdmBVj7BcP2jR68cIbI,7081
|
601
601
|
reconcile/utils/jira_client.py,sha256=oWi7rcAP1C59oIBTPg6kRntI25Zm4e7FyvdVYvZ9RZ8,7881
|
602
|
-
reconcile/utils/jjb_client.py,sha256=
|
602
|
+
reconcile/utils/jjb_client.py,sha256=4YqeXEkO4p6QtJE_fkaD1XuLKbe9l3g0W7AVpcjJ3yg,15187
|
603
603
|
reconcile/utils/jsonpath.py,sha256=wdxOMqR-GMpQf5vRPWRMqAF7bCiXDBkkcFfY2U4j_tk,5536
|
604
604
|
reconcile/utils/jump_host.py,sha256=gi8vGUDgdTVwJvROvRVauFxtL0YAramhbWvG70L7AY8,5137
|
605
605
|
reconcile/utils/keycloak.py,sha256=YWSEUGrOVqFaJUk055dKUWpLDPdDRvhcmvR-lfbmxdE,3388
|
@@ -751,7 +751,7 @@ tools/app_sre_tekton_access_reporter.py,sha256=o9prLUgQpwO3msRWc2as1xT1y9OB3znkp
|
|
751
751
|
tools/app_sre_tekton_access_revalidation.py,sha256=66nHEaY-bIqxIhpcmwN8AvQZu6ZXenfkg4Fut0pVZRM,2726
|
752
752
|
tools/glitchtip_access_reporter.py,sha256=o01A6b88t3Wie6tj_tJWWVo2J01LxQ_a9giGm4UzEaU,2901
|
753
753
|
tools/glitchtip_access_revalidation.py,sha256=8kbBJk04mkq28kWoRDDkfCGIF3GRg3pJrFAh1sW0dbk,2821
|
754
|
-
tools/qontract_cli.py,sha256=
|
754
|
+
tools/qontract_cli.py,sha256=157wUZMwEpCkLj68zCJX96AnhEDqoIiMEFK9BKFw5OU,148485
|
755
755
|
tools/sd_app_sre_alert_report.py,sha256=jQpJdXVID68bSNtJNOGDh0-ei1CfEUS4Itr4MAaBNFA,5062
|
756
756
|
tools/template_validation.py,sha256=qpKYaTgk0GOPGa2Ct5_5sKdwIHtCAKIBGzsMPuJU5fw,3371
|
757
757
|
tools/cli_commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -778,7 +778,7 @@ tools/saas_promotion_state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
778
778
|
tools/saas_promotion_state/saas_promotion_state.py,sha256=UfwwRLS5Ya4_Nh1w5n1dvoYtchQvYE9yj1VANt2IKqI,3925
|
779
779
|
tools/sre_checkpoints/__init__.py,sha256=CDaDaywJnmRCLyl_NCcvxi-Zc0hTi_3OdwKiFOyS39I,145
|
780
780
|
tools/sre_checkpoints/util.py,sha256=zEDbGr18ZeHNQwW8pUsr2JRjuXIPz--WAGJxZo9sv_Y,894
|
781
|
-
qontract_reconcile-0.10.2.
|
782
|
-
qontract_reconcile-0.10.2.
|
783
|
-
qontract_reconcile-0.10.2.
|
784
|
-
qontract_reconcile-0.10.2.
|
781
|
+
qontract_reconcile-0.10.2.dev50.dist-info/METADATA,sha256=B2AMHGotzRtpMLxiYEUCPdydbBpl2lWfLQsbxypXd_A,24665
|
782
|
+
qontract_reconcile-0.10.2.dev50.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
783
|
+
qontract_reconcile-0.10.2.dev50.dist-info/entry_points.txt,sha256=5i9l54La3vQrDLAdwDKQWC0iG4sV9RRfOb1BpvzOWLc,698
|
784
|
+
qontract_reconcile-0.10.2.dev50.dist-info/RECORD,,
|
reconcile/utils/jjb_client.py
CHANGED
@@ -186,7 +186,11 @@ class JJB: # pylint: disable=too-many-public-methods
|
|
186
186
|
if equal:
|
187
187
|
continue
|
188
188
|
|
189
|
-
instance,
|
189
|
+
instance, *items, _ = f.replace(replace_path + "/", "").split("/")
|
190
|
+
if len(items) != 1:
|
191
|
+
name = "/".join(items)
|
192
|
+
raise ValueError(f"Invalid job name contains '/' in {instance}: {name}")
|
193
|
+
item = items[0]
|
190
194
|
item_type = et.parse(f).getroot().tag
|
191
195
|
item_type = item_type.replace("hudson.model.ListView", "view")
|
192
196
|
item_type = item_type.replace("project", "job")
|
tools/qontract_cli.py
CHANGED
@@ -4510,5 +4510,39 @@ def tekton_roles_and_users(ctx, app_name):
|
|
4510
4510
|
print_output(ctx.obj["options"], results, columns)
|
4511
4511
|
|
4512
4512
|
|
4513
|
+
@get.command(
|
4514
|
+
help="Get log group storage information from CloudWatch. This is an API-intensive operation so use wisely"
|
4515
|
+
)
|
4516
|
+
@click.argument("aws-account")
|
4517
|
+
@click.pass_context
|
4518
|
+
def log_group_usage(ctx, aws_account):
|
4519
|
+
accounts = queries.get_aws_accounts(name=aws_account)
|
4520
|
+
if not accounts:
|
4521
|
+
print("no aws account found with that name")
|
4522
|
+
sys.exit(1)
|
4523
|
+
account = accounts[0]
|
4524
|
+
|
4525
|
+
settings = queries.get_app_interface_settings()
|
4526
|
+
secret_reader = SecretReader(settings=settings)
|
4527
|
+
columns = ["log_group", "stored_bytes", "retention_days"]
|
4528
|
+
results = []
|
4529
|
+
|
4530
|
+
with AWSApi(1, [account], settings, secret_reader) as aws:
|
4531
|
+
session = aws.get_session(account["name"])
|
4532
|
+
cloudwatch_client = aws.get_session_client(session, "logs")
|
4533
|
+
paginator = cloudwatch_client.get_paginator("describe_log_groups")
|
4534
|
+
for page in paginator.paginate(PaginationConfig={}):
|
4535
|
+
results.extend(
|
4536
|
+
{
|
4537
|
+
"log_group": group["logGroupName"],
|
4538
|
+
"stored_bytes": group["storedBytes"],
|
4539
|
+
"retention_days": group["retentionInDays"],
|
4540
|
+
}
|
4541
|
+
for group in page["logGroups"]
|
4542
|
+
if group["storedBytes"] != 0
|
4543
|
+
)
|
4544
|
+
print_output(ctx.obj["options"], results, columns)
|
4545
|
+
|
4546
|
+
|
4513
4547
|
if __name__ == "__main__":
|
4514
4548
|
root() # pylint: disable=no-value-for-parameter
|
{qontract_reconcile-0.10.2.dev48.dist-info → qontract_reconcile-0.10.2.dev50.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|