qontract-reconcile 0.10.2.dev8__py3-none-any.whl → 0.10.2.dev10__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.dev8.dist-info → qontract_reconcile-0.10.2.dev10.dist-info}/METADATA +1 -1
- {qontract_reconcile-0.10.2.dev8.dist-info → qontract_reconcile-0.10.2.dev10.dist-info}/RECORD +10 -10
- reconcile/gql_definitions/introspection.json +6 -14
- reconcile/gql_definitions/terraform_repo/terraform_repo.py +2 -2
- tools/cli_commands/cost_report/aws.py +2 -2
- tools/cli_commands/cost_report/openshift.py +2 -2
- tools/cli_commands/cost_report/openshift_cost_optimization.py +2 -2
- tools/qontract_cli.py +11 -6
- {qontract_reconcile-0.10.2.dev8.dist-info → qontract_reconcile-0.10.2.dev10.dist-info}/WHEEL +0 -0
- {qontract_reconcile-0.10.2.dev8.dist-info → qontract_reconcile-0.10.2.dev10.dist-info}/entry_points.txt +0 -0
{qontract_reconcile-0.10.2.dev8.dist-info → qontract_reconcile-0.10.2.dev10.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.dev10
|
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.dev8.dist-info → qontract_reconcile-0.10.2.dev10.dist-info}/RECORD
RENAMED
@@ -215,7 +215,7 @@ reconcile/glitchtip_project_alerts/integration.py,sha256=9faPhmSu5scZ3K3H2IOH31_
|
|
215
215
|
reconcile/glitchtip_project_dsn/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
216
216
|
reconcile/glitchtip_project_dsn/integration.py,sha256=2iugub-kHYkHNK33n0v9_TeWonuxCPah_VkoTPvaajE,8077
|
217
217
|
reconcile/gql_definitions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
218
|
-
reconcile/gql_definitions/introspection.json,sha256=
|
218
|
+
reconcile/gql_definitions/introspection.json,sha256=mlhbQShB7_Xp3xgrT9dzZZaf155i2fkR79gzUsfEGME,2215125
|
219
219
|
reconcile/gql_definitions/acs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
220
220
|
reconcile/gql_definitions/acs/acs_instances.py,sha256=L91WW9LbhJbBSrECqShQpFtjoBOsmNIYLRpMbx1io5o,2181
|
221
221
|
reconcile/gql_definitions/acs/acs_policies.py,sha256=bN5i4mks10Z23KJSj7jqp966Osq2dps4d-sPH9gjxEA,7008
|
@@ -402,7 +402,7 @@ reconcile/gql_definitions/terraform_cloudflare_users/terraform_cloudflare_roles.
|
|
402
402
|
reconcile/gql_definitions/terraform_init/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
403
403
|
reconcile/gql_definitions/terraform_init/aws_accounts.py,sha256=OJ0hDbRachRaDkL-OGT6-byr9cKdBiQDnNCpwUe3oJ8,2674
|
404
404
|
reconcile/gql_definitions/terraform_repo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
405
|
-
reconcile/gql_definitions/terraform_repo/terraform_repo.py,sha256=
|
405
|
+
reconcile/gql_definitions/terraform_repo/terraform_repo.py,sha256=9cDKdP9ziBh9J_mw2Gi6GUOP4mFxMABY_D62qSeMtJI,3881
|
406
406
|
reconcile/gql_definitions/terraform_resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
407
407
|
reconcile/gql_definitions/terraform_resources/database_access_manager.py,sha256=yv0_YC-LmhaKD_gyGG3le1w5BtypBjlsO894-Zgdg4U,4813
|
408
408
|
reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py,sha256=_man82NXH9Jw7OvgDiQCKiLDG6Q7aV_ktOAi12QCXbI,42793
|
@@ -739,7 +739,7 @@ tools/app_interface_metrics_exporter.py,sha256=f1qwTmQfEcs98uBVRyBa0k7GQXdiSwd7w
|
|
739
739
|
tools/app_interface_reporter.py,sha256=oZPib4HPq0aZ2Zui1QGJGk6qQdfpeihujGDBnSdKyGE,17627
|
740
740
|
tools/glitchtip_access_reporter.py,sha256=oPBnk_YoDuljU3v0FaChzOwwnk4vap1xEE67QEjzdqs,2948
|
741
741
|
tools/glitchtip_access_revalidation.py,sha256=8kbBJk04mkq28kWoRDDkfCGIF3GRg3pJrFAh1sW0dbk,2821
|
742
|
-
tools/qontract_cli.py,sha256=
|
742
|
+
tools/qontract_cli.py,sha256=0xR_PhqrgtLr2yCdblGBlojtCPSX8qdhnW1XE4IVQ-4,144009
|
743
743
|
tools/sd_app_sre_alert_report.py,sha256=e9vAdyenUz2f5c8-z-5WY0wv-SJ9aePKDH2r4IwB6pc,5063
|
744
744
|
tools/template_validation.py,sha256=qpKYaTgk0GOPGa2Ct5_5sKdwIHtCAKIBGzsMPuJU5fw,3371
|
745
745
|
tools/cli_commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -748,11 +748,11 @@ tools/cli_commands/erv2.py,sha256=pWjd6yBhzakB1Lz4DUaESTbzEIO9-Njc7p7k_gvZj1U,22
|
|
748
748
|
tools/cli_commands/gpg_encrypt.py,sha256=x02JOMn834z89YSNvr5B-oJky7rR1C0begCkPh45eHk,4958
|
749
749
|
tools/cli_commands/systems_and_tools.py,sha256=EMHOF1AtUDaoSk0bbjl6oUKYAz4rTZjIBaF-6E6GspM,16816
|
750
750
|
tools/cli_commands/cost_report/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
751
|
-
tools/cli_commands/cost_report/aws.py,sha256=
|
751
|
+
tools/cli_commands/cost_report/aws.py,sha256=JtwDfhaYLfa4Uz1LR6OfSBh_3nBlb90kQq6i3MV_ims,4563
|
752
752
|
tools/cli_commands/cost_report/cost_management_api.py,sha256=UZVD1P755gRqKSln5gn1vBiwi9BAhpx5mQuMKEDfI3o,4671
|
753
753
|
tools/cli_commands/cost_report/model.py,sha256=7W6mi8p_hRn8z5YyRCEoDionGHM3RXL7ItDWqQXaCMg,1082
|
754
|
-
tools/cli_commands/cost_report/openshift.py,sha256=
|
755
|
-
tools/cli_commands/cost_report/openshift_cost_optimization.py,sha256=
|
754
|
+
tools/cli_commands/cost_report/openshift.py,sha256=cV1k3BIY_XcSSgiATPwVNDWnIUF6m2GMdCCVah3LxGg,5545
|
755
|
+
tools/cli_commands/cost_report/openshift_cost_optimization.py,sha256=2mmfOVQWQzu3SSWDZdvoC5NC_GhV-OqDZqlaB7m59KU,6753
|
756
756
|
tools/cli_commands/cost_report/response.py,sha256=l5fVNMg8zzoNWm8LquYJsWM3VqxABBG8KT_qN0L3P6c,2689
|
757
757
|
tools/cli_commands/cost_report/util.py,sha256=lKSWjjUfDzMfSSTbFqc4Ln8JfzlWiW8kR2i51VJbEnc,2497
|
758
758
|
tools/cli_commands/cost_report/view.py,sha256=2uNO_fWIUydEL2kQXV959crRkHqzjp9c1OrefXNiJ5s,14033
|
@@ -766,7 +766,7 @@ tools/saas_promotion_state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
766
766
|
tools/saas_promotion_state/saas_promotion_state.py,sha256=5LJ9rygZ304vxfsIuRfuxueoYRb72EZNKKITEcJ4Mtk,3908
|
767
767
|
tools/sre_checkpoints/__init__.py,sha256=CDaDaywJnmRCLyl_NCcvxi-Zc0hTi_3OdwKiFOyS39I,145
|
768
768
|
tools/sre_checkpoints/util.py,sha256=zEDbGr18ZeHNQwW8pUsr2JRjuXIPz--WAGJxZo9sv_Y,894
|
769
|
-
qontract_reconcile-0.10.2.
|
770
|
-
qontract_reconcile-0.10.2.
|
771
|
-
qontract_reconcile-0.10.2.
|
772
|
-
qontract_reconcile-0.10.2.
|
769
|
+
qontract_reconcile-0.10.2.dev10.dist-info/METADATA,sha256=La8J_79sKGDY6o_5VGgejGYryBVNCjNdaRwYOhQzrAQ,24665
|
770
|
+
qontract_reconcile-0.10.2.dev10.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
771
|
+
qontract_reconcile-0.10.2.dev10.dist-info/entry_points.txt,sha256=JniHZPadNOILPyfSl0LF2YSp3Db7K2_W2CN7i9f3Gos,540
|
772
|
+
qontract_reconcile-0.10.2.dev10.dist-info/RECORD,,
|
@@ -32452,13 +32452,9 @@
|
|
32452
32452
|
"description": null,
|
32453
32453
|
"args": [],
|
32454
32454
|
"type": {
|
32455
|
-
"kind": "
|
32456
|
-
"name":
|
32457
|
-
"ofType":
|
32458
|
-
"kind": "OBJECT",
|
32459
|
-
"name": "VaultSecret_v1",
|
32460
|
-
"ofType": null
|
32461
|
-
}
|
32455
|
+
"kind": "OBJECT",
|
32456
|
+
"name": "VaultSecret_v1",
|
32457
|
+
"ofType": null
|
32462
32458
|
},
|
32463
32459
|
"isDeprecated": false,
|
32464
32460
|
"deprecationReason": null
|
@@ -32468,13 +32464,9 @@
|
|
32468
32464
|
"description": null,
|
32469
32465
|
"args": [],
|
32470
32466
|
"type": {
|
32471
|
-
"kind": "
|
32472
|
-
"name":
|
32473
|
-
"ofType":
|
32474
|
-
"kind": "OBJECT",
|
32475
|
-
"name": "VaultSecret_v1",
|
32476
|
-
"ofType": null
|
32477
|
-
}
|
32467
|
+
"kind": "OBJECT",
|
32468
|
+
"name": "VaultSecret_v1",
|
32469
|
+
"ofType": null
|
32478
32470
|
},
|
32479
32471
|
"isDeprecated": false,
|
32480
32472
|
"deprecationReason": null
|
@@ -100,8 +100,8 @@ class AppV1(ConfiguredBaseModel):
|
|
100
100
|
|
101
101
|
|
102
102
|
class TerraformRepoVariablesV1(ConfiguredBaseModel):
|
103
|
-
inputs: VaultSecret = Field(..., alias="inputs")
|
104
|
-
outputs: VaultSecret = Field(..., alias="outputs")
|
103
|
+
inputs: Optional[VaultSecret] = Field(..., alias="inputs")
|
104
|
+
outputs: Optional[VaultSecret] = Field(..., alias="outputs")
|
105
105
|
|
106
106
|
|
107
107
|
class TerraformRepoV1(ConfiguredBaseModel):
|
@@ -125,7 +125,7 @@ class AwsCostReportCommand:
|
|
125
125
|
)
|
126
126
|
|
127
127
|
@classmethod
|
128
|
-
def create(cls) -> Self:
|
128
|
+
def create(cls, thread_pool_size: int = THREAD_POOL_SIZE) -> Self:
|
129
129
|
gql_api = gql.get_api()
|
130
130
|
secret = fetch_cost_report_secret(gql_api)
|
131
131
|
cost_management_api = CostManagementApi.create_from_secret(secret)
|
@@ -133,5 +133,5 @@ class AwsCostReportCommand:
|
|
133
133
|
gql_api=gql_api,
|
134
134
|
cost_management_api=cost_management_api,
|
135
135
|
cost_management_console_base_url=secret["console_base_url"],
|
136
|
-
thread_pool_size=
|
136
|
+
thread_pool_size=thread_pool_size,
|
137
137
|
)
|
@@ -155,12 +155,12 @@ class OpenShiftCostReportCommand:
|
|
155
155
|
)
|
156
156
|
|
157
157
|
@classmethod
|
158
|
-
def create(cls) -> Self:
|
158
|
+
def create(cls, thread_pool_size: int = THREAD_POOL_SIZE) -> Self:
|
159
159
|
gql_api = gql.get_api()
|
160
160
|
secret = fetch_cost_report_secret(gql_api)
|
161
161
|
cost_management_api = CostManagementApi.create_from_secret(secret)
|
162
162
|
return cls(
|
163
163
|
gql_api=gql_api,
|
164
164
|
cost_management_api=cost_management_api,
|
165
|
-
thread_pool_size=
|
165
|
+
thread_pool_size=thread_pool_size,
|
166
166
|
)
|
@@ -176,12 +176,12 @@ class OpenShiftCostOptimizationReportCommand:
|
|
176
176
|
return f"{round(response.amount)}{response.format}"
|
177
177
|
|
178
178
|
@classmethod
|
179
|
-
def create(cls) -> Self:
|
179
|
+
def create(cls, thread_pool_size: int = THREAD_POOL_SIZE) -> Self:
|
180
180
|
gql_api = gql.get_api()
|
181
181
|
secret = fetch_cost_report_secret(gql_api)
|
182
182
|
cost_management_api = CostManagementApi.create_from_secret(secret)
|
183
183
|
return cls(
|
184
184
|
gql_api=gql_api,
|
185
185
|
cost_management_api=cost_management_api,
|
186
|
-
thread_pool_size=
|
186
|
+
thread_pool_size=thread_pool_size,
|
187
187
|
)
|
tools/qontract_cli.py
CHANGED
@@ -2771,22 +2771,27 @@ def alerts(ctx, file_path):
|
|
2771
2771
|
|
2772
2772
|
@get.command()
|
2773
2773
|
@click.pass_context
|
2774
|
-
|
2775
|
-
|
2774
|
+
@thread_pool_size(default=5)
|
2775
|
+
def aws_cost_report(ctx, thread_pool_size):
|
2776
|
+
command = AwsCostReportCommand.create(thread_pool_size=thread_pool_size)
|
2776
2777
|
print(command.execute())
|
2777
2778
|
|
2778
2779
|
|
2779
2780
|
@get.command()
|
2780
2781
|
@click.pass_context
|
2781
|
-
|
2782
|
-
|
2782
|
+
@thread_pool_size(default=5)
|
2783
|
+
def openshift_cost_report(ctx, thread_pool_size):
|
2784
|
+
command = OpenShiftCostReportCommand.create(thread_pool_size=thread_pool_size)
|
2783
2785
|
print(command.execute())
|
2784
2786
|
|
2785
2787
|
|
2786
2788
|
@get.command()
|
2787
2789
|
@click.pass_context
|
2788
|
-
|
2789
|
-
|
2790
|
+
@thread_pool_size(default=5)
|
2791
|
+
def openshift_cost_optimization_report(ctx, thread_pool_size):
|
2792
|
+
command = OpenShiftCostOptimizationReportCommand.create(
|
2793
|
+
thread_pool_size=thread_pool_size
|
2794
|
+
)
|
2790
2795
|
print(command.execute())
|
2791
2796
|
|
2792
2797
|
|
{qontract_reconcile-0.10.2.dev8.dist-info → qontract_reconcile-0.10.2.dev10.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|