qontract-reconcile 0.10.1rc773__py3-none-any.whl → 0.10.1rc775__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qontract-reconcile
3
- Version: 0.10.1rc773
3
+ Version: 0.10.1rc775
4
4
  Summary: Collection of tools to reconcile services with their desired state as defined in the app-interface DB.
5
5
  Home-page: https://github.com/app-sre/qontract-reconcile
6
6
  Author: Red Hat App-SRE Team
@@ -15,7 +15,7 @@ reconcile/closedbox_endpoint_monitoring_base.py,sha256=SMhkcQqprWvThrIJa3U_3uh5w
15
15
  reconcile/cluster_deployment_mapper.py,sha256=2Ah-nu-Mdig0pjuiZl_XLrmVAjYzFjORR3dMlCgkmw0,2352
16
16
  reconcile/dashdotdb_base.py,sha256=a5aPLVxyqPSbjdB0Ty-uliOtxwvEbbEljHJKxdK3-Zk,4813
17
17
  reconcile/dashdotdb_cso.py,sha256=FoXrWGpOwXG5jf0eklN84tjJVUAYzKat7rtq_28JMlQ,3672
18
- reconcile/dashdotdb_dora.py,sha256=n9EJXhxCoMYuldj4Fa5s0TqfiiolSrqDEOCaLBV3uag,17235
18
+ reconcile/dashdotdb_dora.py,sha256=hwGqjRbySKJeP7ekN96fwW5UFUpTWiQ-IZ_tzWQYbKY,17565
19
19
  reconcile/dashdotdb_dvo.py,sha256=YXqpI6fBQAql-ybGI0grj9gWMzmKiAvPE__pNju6obk,8996
20
20
  reconcile/dashdotdb_slo.py,sha256=bf1WSh5JP9obHVQsMy0OO71_VTYZgwAopElFZM6DmRo,6714
21
21
  reconcile/database_access_manager.py,sha256=42dBJyihdwx4WjEBjwi3lUiDzQ1t_2ZFViJri2c4_aE,25716
@@ -647,7 +647,7 @@ reconcile/utils/pagerduty_api.py,sha256=fcSAUez6w51woDvbm0plJW2qSw6_NXQs1Fit_KTN
647
647
  reconcile/utils/parse_dhms_duration.py,sha256=TONpLnec5gHeF7k815YNJpQyDjXhkxZIcv9s8ffbTSY,1840
648
648
  reconcile/utils/password_validator.py,sha256=XwuWg-8CPlcuG7dl_oQ1G1h2gSVSnfMym_VkuprpWVg,2183
649
649
  reconcile/utils/prometheus.py,sha256=i5aCQ_I4WOg76iEjglVxxO9-OKby2N80ScErAbDtHE8,3848
650
- reconcile/utils/promotion_state.py,sha256=cCynjmatVjjBSf0nKUmKVvk3i_Kx24iqHsCWzWRphoA,2638
650
+ reconcile/utils/promotion_state.py,sha256=avYxHUf4zK3dBhXEdUEry79EOSgJ7gfStvvOpcedZnI,2575
651
651
  reconcile/utils/promtool.py,sha256=kT2rFZSBaRqW7SSHAuYzGZzQxM5Dzk8KW1NnEUYZU_s,2896
652
652
  reconcile/utils/quay_api.py,sha256=EuOegpb-7ntEjkKLFwM2Oo4Nw7SyFtmyl3sQ9aXMtrM,8152
653
653
  reconcile/utils/raw_github_api.py,sha256=ZHC-SZuAyRe1zaMoOU7Krt1-zecDxENd9c_NzQYqK9g,2968
@@ -750,7 +750,7 @@ reconcile/utils/runtime/sharding.py,sha256=roCdbnBklhTK_g34zbgQYqzpKPaNQ8J6Xd9XL
750
750
  reconcile/utils/saasherder/__init__.py,sha256=J3MBZBFa5YmhqYm08QsjBXz8mFcVOCiOCkyIcw41t7E,343
751
751
  reconcile/utils/saasherder/interfaces.py,sha256=XXY35h8VWQ66z3LBPxaoUAMkIW50264DQiecrzyV6oA,9076
752
752
  reconcile/utils/saasherder/models.py,sha256=1DKXUmiTS_MejUfSpFCeuBLMTgR4ldv2N1tAz8qHAwc,5547
753
- reconcile/utils/saasherder/saasherder.py,sha256=CfTNBjVS9HwH1hlz7K50J-vpT8B5UVJTmyd2ZGbAPAg,86293
753
+ reconcile/utils/saasherder/saasherder.py,sha256=4IQL-r2uo1iejv0krdaPXaW9CnqBKF6t9Skjs2m263I,86170
754
754
  reconcile/utils/terraform/__init__.py,sha256=zNbiyTWo35AT1sFTElL2j_AA0jJ_yWE_bfFn-nD2xik,250
755
755
  reconcile/utils/terraform/config.py,sha256=5UVrd563TMcvi4ooa5JvWVDW1I3bIWg484u79evfV_8,164
756
756
  reconcile/utils/terraform/config_client.py,sha256=py-Ree-QUYD6Hvng6bM40VgSuttteehIKNgwOSoJO1o,4706
@@ -785,8 +785,8 @@ tools/test/test_app_interface_metrics_exporter.py,sha256=SX7qL3D1SIRKFo95FoQztvf
785
785
  tools/test/test_qontract_cli.py,sha256=w2l4BHB09k1d-BGJ1jBUNCqDv7zkqYrMHojQXg-21kQ,4155
786
786
  tools/test/test_sd_app_sre_alert_report.py,sha256=v363r9zM7__0kR5K6mvJoGFcM9BvE33fWAayrqkpojA,2116
787
787
  tools/test/test_sre_checkpoints.py,sha256=SKqPPTl9ua0RFdSSofnoQX-JZE6dFLO3LRhfQzqtfh8,2607
788
- qontract_reconcile-0.10.1rc773.dist-info/METADATA,sha256=BTq0sMtbXDJnJ9rUZhlAz0JpFDJzcRvLfNx2a3jCmFU,2382
789
- qontract_reconcile-0.10.1rc773.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
790
- qontract_reconcile-0.10.1rc773.dist-info/entry_points.txt,sha256=rIxI5zWtHNlfpDeq1a7pZXAPoqf7HG32KMTN3MeWK_8,429
791
- qontract_reconcile-0.10.1rc773.dist-info/top_level.txt,sha256=l5ISPoXzt0SdR4jVdkfa7RPSKNc8zAHYWAnR-Dw8Ey8,24
792
- qontract_reconcile-0.10.1rc773.dist-info/RECORD,,
788
+ qontract_reconcile-0.10.1rc775.dist-info/METADATA,sha256=0RR3_Y0t9TLbpUkHYa4h7bAJ9e63UgmA91c_qqbBBYU,2382
789
+ qontract_reconcile-0.10.1rc775.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
790
+ qontract_reconcile-0.10.1rc775.dist-info/entry_points.txt,sha256=rIxI5zWtHNlfpDeq1a7pZXAPoqf7HG32KMTN3MeWK_8,429
791
+ qontract_reconcile-0.10.1rc775.dist-info/top_level.txt,sha256=l5ISPoXzt0SdR4jVdkfa7RPSKNc8zAHYWAnR-Dw8Ey8,24
792
+ qontract_reconcile-0.10.1rc775.dist-info/RECORD,,
@@ -17,6 +17,7 @@ from typing import (
17
17
 
18
18
  import requests
19
19
  import yaml
20
+ from github import GithubException
20
21
  from psycopg2 import (
21
22
  connect,
22
23
  sql,
@@ -418,7 +419,14 @@ class DashdotdbDORA(DashdotdbBase):
418
419
 
419
420
  LOG.info("Fetching commits %s", rc)
420
421
  if rc.repo_url.startswith("https://github.com"):
421
- commits = self._github_compare_commits(rc)
422
+ try:
423
+ commits = self._github_compare_commits(rc)
424
+ except GithubException as e:
425
+ if e.status == 404:
426
+ LOG.info(
427
+ f"Ignoring RepoChanges for {rc} because could not calculate them: {e.data['message']}"
428
+ )
429
+ return rc, []
422
430
  elif rc.repo_url.startswith(self.gl.server):
423
431
  commits = self._gitlab_compare_commits(rc)
424
432
  else:
@@ -1,6 +1,5 @@
1
1
  import logging
2
2
  from collections import defaultdict
3
- from datetime import datetime
4
3
  from typing import Optional
5
4
 
6
5
  from pydantic import (
@@ -23,7 +22,6 @@ class PromotionData(BaseModel):
23
22
  success: bool
24
23
  target_config_hash: Optional[str]
25
24
  saas_file: Optional[str]
26
- check_in: Optional[datetime]
27
25
 
28
26
  class Config:
29
27
  smart_union = True
@@ -16,7 +16,6 @@ from collections.abc import (
16
16
  Sequence,
17
17
  )
18
18
  from contextlib import suppress
19
- from datetime import datetime, timezone
20
19
  from types import TracebackType
21
20
  from typing import (
22
21
  Any,
@@ -1966,7 +1965,6 @@ class SaasHerder: # pylint: disable=too-many-public-methods
1966
1965
  if not (self.state and self._promotion_state):
1967
1966
  raise Exception("state is not initialized")
1968
1967
 
1969
- now = datetime.now(timezone.utc)
1970
1968
  for promotion in self.promotions:
1971
1969
  if promotion is None:
1972
1970
  continue
@@ -1984,7 +1982,6 @@ class SaasHerder: # pylint: disable=too-many-public-methods
1984
1982
  saas_file=promotion.saas_file,
1985
1983
  success=success,
1986
1984
  target_config_hash=promotion.target_config_hash,
1987
- check_in=now,
1988
1985
  ),
1989
1986
  )
1990
1987
  logging.info(