qontract-reconcile 0.10.2.dev135__tar.gz → 0.10.2.dev137__tar.gz
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.dev135 → qontract_reconcile-0.10.2.dev137}/PKG-INFO +1 -1
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/pyproject.toml +0 -36
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_ami_share.py +4 -2
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_ecr_image_pull_secrets.py +15 -7
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_garbage_collector.py +1 -1
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_iam_keys.py +24 -17
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_iam_password_reset.py +4 -2
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_support_cases_sos.py +19 -6
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/closedbox_endpoint_monitoring_base.py +4 -3
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/client.py +3 -3
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/integration.py +4 -5
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/state.py +3 -3
- qontract_reconcile-0.10.2.dev137/reconcile/email_sender.py +125 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/aws.py +1 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gcr_mirror.py +11 -9
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/github_org.py +57 -52
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/github_owners.py +8 -5
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/github_repo_invites.py +1 -1
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/github_repo_permissions_validator.py +3 -3
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/github_users.py +16 -12
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/github_validator.py +1 -1
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_fork_compliance.py +9 -8
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_labeler.py +1 -1
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_mr_sqs_consumer.py +6 -3
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_owners.py +29 -12
- qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/email_sender/apps.py +64 -0
- qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/email_sender/emails.py +133 -0
- qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/email_sender/users.py +62 -0
- qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/fragments/email_service.py +32 -0
- qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/fragments/email_user.py +28 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/queries.py +0 -44
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jinja2/utils.py +4 -2
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/smtp_client.py +1 -1
- qontract_reconcile-0.10.2.dev137/tools/saas_promotion_state/__init__.py +0 -0
- qontract_reconcile-0.10.2.dev135/reconcile/email_sender.py +0 -116
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/README.md +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/acs_notifiers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/acs_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/acs_rbac.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/advanced_upgrade_service.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/aus_label_source.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/cluster_version_data.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/healthchecks.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/node_pool_spec.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/ocm_addons_upgrade_scheduler_org.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/ocm_upgrade_scheduler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/ocm_upgrade_scheduler_org.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/upgrades.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/version_gate_approver.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/version_gates/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/version_gates/handler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/version_gates/ingress_gate_handler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/version_gates/ocp_gate_handler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aus/version_gates/sts_version_gate_handler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/automated_actions/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/automated_actions/config/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/automated_actions/config/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/README.md +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_account_manager/utils.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_ami_cleanup/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_ami_cleanup/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_cloudwatch_log_retention/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_cloudwatch_log_retention/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_saml_idp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_saml_idp/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_saml_roles/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_saml_roles/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_version_sync/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_version_sync/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_version_sync/merge_request_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_version_sync/merge_request_manager/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_version_sync/merge_request_manager/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_version_sync/utils.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/blackbox_exporter_endpoint_monitoring.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/README.md +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/approver.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/bundle.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/change_log_tracking.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/change_owners.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/change_types.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/changes.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/decision.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/diff.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/implicit_ownership.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/self_service_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/change_owners/tester.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/checkpoint.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cli.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cluster_auth_rhidp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cluster_auth_rhidp/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cluster_deployment_mapper.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/assets/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/assets/asset.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/assets/asset_factory.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/assets/null.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dashdotdb_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dashdotdb_cso.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dashdotdb_dora.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dashdotdb_dvo.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dashdotdb_slo.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/database_access_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/deadmanssnitch.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/model.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/dynatrace_token_provider/validate.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/endpoints_discovery/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/endpoints_discovery/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/endpoints_discovery/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/endpoints_discovery/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/factories.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/integration_secrets_sync.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/model.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/secrets_sync.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/external_resources/state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/validate.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/fleet_labeler/vcs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gabi_authorized_users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_housekeeping.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_members.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gitlab_projects.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip/README.md +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip_project_alerts/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip_project_alerts/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip_project_dsn/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/glitchtip_project_dsn/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/acs/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/acs/acs_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/acs/acs_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/acs/acs_rbac.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/advanced_upgrade_service/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/advanced_upgrade_service/aus_clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/advanced_upgrade_service/aus_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/app_interface_metrics_exporter/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/app_interface_metrics_exporter/onboarding_status.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/app_sre_tekton_access_revalidation/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/app_sre_tekton_access_revalidation/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/app_sre_tekton_access_revalidation/users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/automated_actions/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/automated_actions/instance.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_account_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_account_manager/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_ami_cleanup/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_ami_cleanup/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_saml_idp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_saml_idp/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_saml_roles/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_saml_roles/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_saml_roles/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_version_sync/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_version_sync/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/aws_version_sync/namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/change_owners/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/change_owners/queries/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/change_owners/queries/change_types.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/change_owners/queries/self_service_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cluster_auth_rhidp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cluster_auth_rhidp/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cna/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cna/queries/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cna/queries/cna_provisioners.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cna/queries/cna_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/alerting_services_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_code_component_repos.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_interface_custom_messages.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_interface_dms_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_interface_repo_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_interface_state_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_interface_vault_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/app_quay_repos_escalation_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/aws_vpc_requests.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/aws_vpcs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/clusters_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/clusters_with_dms.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/clusters_with_peering.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/github_orgs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/jira_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/jiralert_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/namespaces_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/ocm_env_telemeter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/ocm_environments.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/pagerduty_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/pgp_reencryption_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/pipeline_providers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/quay_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/quay_orgs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/reserved_networks.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/saas_files.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/saas_target_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/saasherder_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/slack_workspaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/smtp_client_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/state_aws_account.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/common/users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cost_report/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cost_report/app_names.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cost_report/cost_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/cost_report/settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/dashdotdb_slo/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/dashdotdb_slo/slo_documents_query.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/dynatrace_token_provider/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/dynatrace_token_provider/dynatrace_bootstrap_tokens.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/dynatrace_token_provider/token_specs.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/endpoints_discovery → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/email_sender}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/external_resources → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/endpoints_discovery}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/endpoints_discovery/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/external_resources/fragments → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/external_resources}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/external_resources/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/external_resources/external_resources_modules.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/external_resources/external_resources_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/external_resources/external_resources_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/fleet_labeler → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/external_resources/fragments}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/external_resources/fragments/external_resources_module_overrides.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/fragments → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/fleet_labeler}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fleet_labeler/fleet_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/gitlab_members → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/fragments}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aus_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_account_common.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_account_managed.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_account_sso.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_infra_management_account.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_vpc.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_vpc_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/aws_vpc_request_subnet.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/deplopy_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/disable.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/jumphost_common_fields.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/membership_source.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/minimal_ocm_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/oc_connection_cluster.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/ocm_environment.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/pipeline_provider_retention.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/prometheus_instance.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/resource_limits_requirements.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/resource_requests_requirements.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/resource_values.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/saas_target_namespace.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/serviceaccount_token.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/terraform_state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/upgrade_policy.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/user.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/fragments/vault_secret.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/glitchtip → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/gitlab_members}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/gitlab_members/gitlab_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/gitlab_members/permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/glitchtip_project_alerts → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/glitchtip}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/glitchtip/glitchtip_instance.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/glitchtip/glitchtip_project.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/integrations → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/glitchtip_project_alerts}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/glitchtip_project_alerts/glitchtip_project.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/jenkins_configs → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/integrations}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/integrations/integrations.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/introspection.json +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/jira → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/jenkins_configs}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/jenkins_configs/jenkins_configs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/jenkins_configs/jenkins_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/jira_permissions_validator → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/jira}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/jira/jira_servers.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/jumphosts → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/jira_permissions_validator}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/jira_permissions_validator/jira_boards_for_permissions_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/ldap_groups → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/jumphosts}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/jumphosts/jumphosts.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/maintenance → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/ldap_groups}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/ldap_groups/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/ldap_groups/settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/membershipsources → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/maintenance}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/maintenance/maintenances.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/ocm_labels → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/membershipsources}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/membershipsources/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/ocm_oidc_idp → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/ocm_labels}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/ocm_labels/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/ocm_labels/organizations.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/ocm_subscription_labels → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/ocm_oidc_idp}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/openshift_cluster_bots → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/ocm_subscription_labels}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/openshift_groups → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/openshift_cluster_bots}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/openshift_cluster_bots/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/openshift_serviceaccount_tokens → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/openshift_groups}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/openshift_groups/managed_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/openshift_groups/managed_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/quay_membership → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/openshift_serviceaccount_tokens}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/openshift_serviceaccount_tokens/tokens.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/rhidp → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/quay_membership}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/quay_membership/quay_membership.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/service_dependencies → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/rhidp}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/rhidp/organizations.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/sharding → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/service_dependencies}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/service_dependencies/jenkins_instance_fragment.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/service_dependencies/service_dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/skupper_network → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/sharding}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/sharding/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/sharding/ocm_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/slack_usergroups → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/skupper_network}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/skupper_network/site_controller_template.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/skupper_network/skupper_networks.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/slo_documents → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/slack_usergroups}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/slack_usergroups/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/slack_usergroups/permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/slack_usergroups/users.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/status_board → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/slo_documents}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/slo_documents/slo_documents.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/statuspage → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/status_board}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/status_board/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/templating → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/statuspage}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/statuspage/statuspages.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_cloudflare_dns → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/templating}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/templating/template_collection.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/templating/templates.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_cloudflare_resources → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_cloudflare_dns}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_cloudflare_dns/app_interface_cloudflare_dns_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_cloudflare_dns/terraform_cloudflare_zones.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_cloudflare_users → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_cloudflare_resources}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_cloudflare_resources/terraform_cloudflare_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_cloudflare_resources/terraform_cloudflare_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_init → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_cloudflare_users}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_cloudflare_users/app_interface_setting_cloudflare_and_vault.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_cloudflare_users/terraform_cloudflare_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_repo → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_init}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_init/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_resources → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_repo}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_repo/terraform_repo.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/terraform_tgw_attachments → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_resources}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_resources/database_access_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/unleash_feature_toggles → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/terraform_tgw_attachments}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/terraform_tgw_attachments/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/vault_instances → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/unleash_feature_toggles}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/unleash_feature_toggles/feature_toggles.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/vault_policies → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/vault_instances}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/vault_instances/vault_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/gql_definitions/vpc_peerings_validator → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/vault_policies}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/vault_policies/vault_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/jenkins → qontract_reconcile-0.10.2.dev137/reconcile/gql_definitions/vpc_peerings_validator}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator_peered_cluster_fragment.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/integrations_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/ldap_groups → qontract_reconcile-0.10.2.dev137/reconcile/jenkins}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins/types.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_job_builder.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_job_builds_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_job_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_webhooks.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_webhooks_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jenkins_worker_fleets.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jira_permissions_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/jira_watcher.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/ocm → qontract_reconcile-0.10.2.dev137/reconcile/ldap_groups}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ldap_groups/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ldap_users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/mr_client_gateway.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/ocm_internal_notifications → qontract_reconcile-0.10.2.dev137/reconcile/ocm}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm/types.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_additional_routers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_addons.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_addons_upgrade_tests_trigger.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_aws_infrastructure_access.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_external_configuration_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_github_idp.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/ocm_labels → qontract_reconcile-0.10.2.dev137/reconcile/ocm_internal_notifications}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_internal_notifications/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/oum → qontract_reconcile-0.10.2.dev137/reconcile/ocm_labels}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_labels/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_machine_pools.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_update_recommended_version.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/ocm_upgrade_scheduler_org_updater.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_cluster_bots.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_clusterrolebindings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_limitranges.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_namespace_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_network_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_prometheus_rules.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_resourcequotas.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_resources_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_rolebindings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_routes.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_change_tester.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_trigger_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_trigger_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_trigger_configs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_trigger_images.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_trigger_moving_commits.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_saas_deploy_trigger_upstream_jobs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_serviceaccount_tokens.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_tekton_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_upgrade_watcher.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/openshift_vault_secrets.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/prometheus_rules_tester → qontract_reconcile-0.10.2.dev137/reconcile/oum}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/oum/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/oum/labelset.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/oum/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/oum/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/oum/providers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/oum/standalone.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/rhidp → qontract_reconcile-0.10.2.dev137/reconcile/prometheus_rules_tester}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/prometheus_rules_tester/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/quay_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/quay_membership.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/quay_mirror.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/quay_mirror_org.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/quay_permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/quay_repos.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/query_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/requests_sender.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/resource_scraper.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/resource_template_tester.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/rhidp/ocm_oidc_idp → qontract_reconcile-0.10.2.dev137/reconcile/rhidp}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/common.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/rhidp/sso_client → qontract_reconcile-0.10.2.dev137/reconcile/rhidp/ocm_oidc_idp}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/ocm_oidc_idp/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/ocm_oidc_idp/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/ocm_oidc_idp/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/saas_auto_promotions_manager → qontract_reconcile-0.10.2.dev137/reconcile/rhidp/sso_client}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/sso_client/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/sso_client/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/rhidp/sso_client/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/run_integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/saas_auto_promotions_manager/merge_request_manager → qontract_reconcile-0.10.2.dev137/reconcile/saas_auto_promotions_manager}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/saas_auto_promotions_manager/utils → qontract_reconcile-0.10.2.dev137/reconcile/saas_auto_promotions_manager/merge_request_manager}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/batcher.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/desired_state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/merge_request_manager_v2.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/mr_parser.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/open_merge_requests.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/merge_request_manager/renderer.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/publisher.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/s3_exporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/subscriber.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/skupper_network → qontract_reconcile-0.10.2.dev137/reconcile/saas_auto_promotions_manager/utils}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_auto_promotions_manager/utils/saas_files_inventory.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/saas_file_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/sendgrid_teammates.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/service_dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/signalfx_endpoint_monitoring.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/statuspage → qontract_reconcile-0.10.2.dev137/reconcile/skupper_network}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/skupper_network/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/skupper_network/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/skupper_network/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/skupper_network/site_controller.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/slack_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/slack_usergroups.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/sql_query.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/status.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/statuspage/integrations → qontract_reconcile-0.10.2.dev137/reconcile/statuspage}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/atlassian.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/templates → qontract_reconcile-0.10.2.dev137/reconcile/statuspage/integrations}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/integrations/components.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/integrations/maintenances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/page.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/statuspage/status.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/templating → qontract_reconcile-0.10.2.dev137/reconcile/templates}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templates/aws_access_key_email.j2 +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templates/email.yml.j2 +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templates/jira-checkpoint-missinginfo.j2 +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templates/rosa-classic-cluster-creation.sh.j2 +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templates/rosa-hcp-cluster-creation.sh.j2 +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/templating/lib → qontract_reconcile-0.10.2.dev137/reconcile/templating}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/terraform_init → qontract_reconcile-0.10.2.dev137/reconcile/templating/lib}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templating/lib/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templating/lib/model.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templating/lib/rendering.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templating/renderer.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/templating/validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_aws_route53.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_cloudflare_dns.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_cloudflare_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_cloudflare_users.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/terraform_vpc_resources → qontract_reconcile-0.10.2.dev137/reconcile/terraform_init}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_init/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_init/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_init/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_repo.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_tgw_attachments.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_vpc_peerings.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/typed_queries/app_interface_metrics_exporter → qontract_reconcile-0.10.2.dev137/reconcile/terraform_vpc_resources}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_vpc_resources/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_vpc_resources/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/terraform_vpc_resources/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/alerting_services_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_custom_messages.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_deadmanssnitch_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/typed_queries/cost_report → qontract_reconcile-0.10.2.dev137/reconcile/typed_queries/app_interface_metrics_exporter}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_metrics_exporter/onboarding_status.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_metrics_exporter/terraform_repo.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_repo_url.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_state_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_interface_vault_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/app_quay_repos_escalation_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/aws_vpc_requests.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/aws_vpcs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/cloudflare.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/clusters_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/clusters_with_dms.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/clusters_with_peering.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/typed_queries/terraform_tgw_attachments → qontract_reconcile-0.10.2.dev137/reconcile/typed_queries/cost_report}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/cost_report/app_names.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/cost_report/cost_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/cost_report/settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/dynatrace.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/dynatrace_environments.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/dynatrace_token_provider_token_specs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/external_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/fleet_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/get_state_aws_account.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/github_orgs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/gitlab_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/glitchtip.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/jenkins.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/jira.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/jira_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/jiralert_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/namespaces_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/pagerduty_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/quay.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/repos.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/reserved_networks.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/saas_files.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/slack.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/slo_documents.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/smtp.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/tekton_pipeline_providers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/terraform_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/unleash_feature_toggles → qontract_reconcile-0.10.2.dev137/reconcile/typed_queries/terraform_tgw_attachments}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/terraform_tgw_attachments/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/unleash.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/users.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/typed_queries/vault.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils → qontract_reconcile-0.10.2.dev137/reconcile/unleash_feature_toggles}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/unleash_feature_toggles/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/acs → qontract_reconcile-0.10.2.dev137/reconcile/utils}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/aws_api_typed → qontract_reconcile-0.10.2.dev137/reconcile/utils/acs}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/acs/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/acs/notifiers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/acs/policies.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/acs/rbac.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aggregated_list.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/amtool.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/cloud_resource_best_practice → qontract_reconcile-0.10.2.dev137/reconcile/utils/aws_api_typed}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/account.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/dynamodb.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/iam.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/organization.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/s3.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/service_quotas.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/sts.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_api_typed/support.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/aws_helper.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/batches.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/binary.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/clusterhealth → qontract_reconcile-0.10.2.dev137/reconcile/utils/cloud_resource_best_practice}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/cloud_resource_best_practice/aws_rds.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/dynatrace → qontract_reconcile-0.10.2.dev137/reconcile/utils/clusterhealth}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/clusterhealth/providerbase.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/clusterhealth/telemeter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/config.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/constants.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/deadmanssnitch_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/defer.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/differ.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/disabled_integrations.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/dnsutils.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/internal_groups → qontract_reconcile-0.10.2.dev137/reconcile/utils/dynatrace}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/dynatrace/client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/early_exit_cache.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/elasticsearch_exceptions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/environ.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/exceptions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/expiration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/extended_early_exit.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/external_resource_spec.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/external_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/filtering.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/git.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/github_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/gitlab_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/glitchtip/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/glitchtip/client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/glitchtip/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/gpg.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/gql.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/grouping.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/helm.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/helpers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/imap_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/instrumented_wrappers.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/jinja2 → qontract_reconcile-0.10.2.dev137/reconcile/utils/internal_groups}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/internal_groups/client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/internal_groups/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jenkins_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/jobcontroller → qontract_reconcile-0.10.2.dev137/reconcile/utils/jinja2}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jinja2/extensions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jinja2/filters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jira_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jjb_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/membershipsources → qontract_reconcile-0.10.2.dev137/reconcile/utils/jobcontroller}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jobcontroller/controller.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jobcontroller/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jsonpath.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/jump_host.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/keycloak.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ldap_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/lean_terraform_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/make.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/merge_request_manager → qontract_reconcile-0.10.2.dev137/reconcile/utils/membershipsources}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/membershipsources/app_interface_resolver.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/membershipsources/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/membershipsources/resolver.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/rosa → qontract_reconcile-0.10.2.dev137/reconcile/utils/merge_request_manager}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/merge_request_manager/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/merge_request_manager/parser.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/README.md +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/app_interface_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/app_sre_tekton_access_report.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/aws_access.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/clusters_updates.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/glitchtip_access_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/notificator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/ocm_update_recommended_version.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/ocm_upgrade_scheduler_org_updates.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/promote_qontract.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/update_access_report_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/mr/user_maintenance.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/oauth2_backend_application_session.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/oc.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/oc_connection_parameters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/oc_filters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/oc_map.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/addons.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/base.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/cluster_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/identity_providers.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/label_sources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/manifests.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/products.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/search_filters.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/service_log.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/sre_capability_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/subscriptions.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/syncsets.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm/upgrades.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ocm_base_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/openshift_resource.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/openssl.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/output.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/pagerduty_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/parse_dhms_duration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/password_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/prometheus.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/promotion_state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/promtool.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/quay_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/raw_github_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/repo_owners.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/rest_api_base.py +0 -0
- {qontract_reconcile-0.10.2.dev135/reconcile/utils/terrascript → qontract_reconcile-0.10.2.dev137/reconcile/utils/rosa}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/rosa/rosa_cli.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/rosa/session.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/ruamel.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/desired_state_diff.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/environment.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/runner.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/runtime/sharding.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/saasherder/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/saasherder/interfaces.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/saasherder/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/saasherder/saasherder.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/secret_reader.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/semver_helper.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/sharding.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/slack_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/sqs_gateway.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/structs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/template.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terraform/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terraform/config.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terraform/config_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terraform_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135/tools → qontract_reconcile-0.10.2.dev137/reconcile/utils/terrascript}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terrascript/cloudflare_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terrascript/cloudflare_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terrascript/models.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terrascript/resources.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/terrascript_aws_client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/three_way_diff_strategy.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/throughput.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/unleash/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/unleash/client.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/unleash/server.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/vault.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/vaultsecretref.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/utils/vcs.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/vault_replication.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/vpc_peerings_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev135/tools/cli_commands → qontract_reconcile-0.10.2.dev137/tools}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/app_interface_metrics_exporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/app_interface_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/app_sre_tekton_access_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/app_sre_tekton_access_revalidation.py +0 -0
- {qontract_reconcile-0.10.2.dev135/tools/cli_commands/cost_report → qontract_reconcile-0.10.2.dev137/tools/cli_commands}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/container_images_report.py +0 -0
- {qontract_reconcile-0.10.2.dev135/tools/saas_metrics_exporter → qontract_reconcile-0.10.2.dev137/tools/cli_commands/cost_report}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/aws.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/cost_management_api.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/model.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/openshift.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/openshift_cost_optimization.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/response.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/util.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/cost_report/view.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/erv2.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/gpg_encrypt.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/cli_commands/systems_and_tools.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/glitchtip_access_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/glitchtip_access_revalidation.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/qontract_cli.py +0 -0
- {qontract_reconcile-0.10.2.dev135/tools/saas_metrics_exporter/commit_distance → qontract_reconcile-0.10.2.dev137/tools/saas_metrics_exporter}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135/tools/saas_promotion_state → qontract_reconcile-0.10.2.dev137/tools/saas_metrics_exporter/commit_distance}/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/saas_metrics_exporter/commit_distance/channel.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/saas_metrics_exporter/commit_distance/commit_distance.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/saas_metrics_exporter/commit_distance/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/saas_metrics_exporter/main.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/saas_promotion_state/saas_promotion_state.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/sd_app_sre_alert_report.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/sre_checkpoints/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/sre_checkpoints/util.py +0 -0
- {qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/tools/template_validation.py +0 -0
@@ -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.dev137
|
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
|
@@ -250,31 +250,8 @@ disallow_incomplete_defs = true
|
|
250
250
|
[[tool.mypy.overrides]]
|
251
251
|
# Untyped modules
|
252
252
|
module = [
|
253
|
-
"reconcile.aws_ami_share",
|
254
|
-
"reconcile.aws_ecr_image_pull_secrets",
|
255
|
-
"reconcile.aws_garbage_collector",
|
256
|
-
"reconcile.aws_iam_keys",
|
257
|
-
"reconcile.aws_iam_password_reset",
|
258
|
-
"reconcile.aws_support_cases_sos",
|
259
253
|
"reconcile.cli",
|
260
|
-
"reconcile.closedbox_endpoint_monitoring_base",
|
261
|
-
"reconcile.cna.client",
|
262
|
-
"reconcile.cna.integration",
|
263
|
-
"reconcile.cna.state",
|
264
|
-
"reconcile.email_sender",
|
265
|
-
"reconcile.gabi_authorized_users",
|
266
|
-
"reconcile.gcr_mirror",
|
267
|
-
"reconcile.github_org",
|
268
|
-
"reconcile.github_owners",
|
269
|
-
"reconcile.github_repo_invites",
|
270
|
-
"reconcile.github_repo_permissions_validator",
|
271
|
-
"reconcile.github_users",
|
272
|
-
"reconcile.github_validator",
|
273
|
-
"reconcile.gitlab_fork_compliance",
|
274
254
|
"reconcile.gitlab_housekeeping",
|
275
|
-
"reconcile.gitlab_labeler",
|
276
|
-
"reconcile.gitlab_mr_sqs_consumer",
|
277
|
-
"reconcile.gitlab_owners",
|
278
255
|
"reconcile.gitlab_permissions",
|
279
256
|
"reconcile.gitlab_projects",
|
280
257
|
"reconcile.integrations_manager",
|
@@ -365,12 +342,6 @@ module = [
|
|
365
342
|
"reconcile.vpc_peerings_validator",
|
366
343
|
"tools.sre_checkpoints.util",
|
367
344
|
# untyped tests
|
368
|
-
"reconcile.test.cna.test_integration",
|
369
|
-
"reconcile.test.cna.test_state_assembly",
|
370
|
-
"reconcile.test.cna.test_state_diff",
|
371
|
-
"reconcile.test.cna.test_state_overrides",
|
372
|
-
"reconcile.test.conftest",
|
373
|
-
"reconcile.test.fixtures",
|
374
345
|
"reconcile.test.oc.test_oc_connection_parameters",
|
375
346
|
"reconcile.test.oc.test_oc_map",
|
376
347
|
"reconcile.test.ocm_labels.test_ocm_labels_integration",
|
@@ -402,19 +373,12 @@ module = [
|
|
402
373
|
"reconcile.test.statuspage.test_statuspage_state",
|
403
374
|
"reconcile.test.statuspage.test_statuspage_status",
|
404
375
|
"reconcile.test.test_acs_rbac",
|
405
|
-
"reconcile.test.test_aws_ami_share",
|
406
|
-
"reconcile.test.test_aws_iam_keys",
|
407
|
-
"reconcile.test.test_aws_iam_password_reset",
|
408
|
-
"reconcile.test.test_aws_support_cases_sos",
|
409
376
|
"reconcile.test.test_checkpoint",
|
410
377
|
"reconcile.test.test_cli",
|
411
378
|
"reconcile.test.test_closedbox_endpoint_monitoring",
|
412
379
|
"reconcile.test.test_dashdotdb_dora",
|
413
380
|
"reconcile.test.test_database_access_manager",
|
414
|
-
"reconcile.test.test_github_org",
|
415
|
-
"reconcile.test.test_github_repo_invites",
|
416
381
|
"reconcile.test.test_gitlab_housekeeping",
|
417
|
-
"reconcile.test.test_gitlab_labeler",
|
418
382
|
"reconcile.test.test_gitlab_members",
|
419
383
|
"reconcile.test.test_integrations_manager",
|
420
384
|
"reconcile.test.test_jenkins_worker_fleets",
|
{qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_ami_share.py
RENAMED
@@ -1,5 +1,6 @@
|
|
1
1
|
import logging
|
2
2
|
from collections.abc import (
|
3
|
+
Callable,
|
3
4
|
Iterable,
|
4
5
|
Mapping,
|
5
6
|
)
|
@@ -37,12 +38,13 @@ def get_region(
|
|
37
38
|
|
38
39
|
|
39
40
|
@defer
|
40
|
-
def run(dry_run, defer=None):
|
41
|
+
def run(dry_run: bool, defer: Callable | None = None) -> None:
|
41
42
|
accounts = queries.get_aws_accounts(sharing=True)
|
42
43
|
sharing_accounts = filter_accounts(accounts)
|
43
44
|
settings = queries.get_app_interface_settings()
|
44
45
|
aws_api = AWSApi(1, sharing_accounts, settings=settings, init_users=False)
|
45
|
-
defer
|
46
|
+
if defer:
|
47
|
+
defer(aws_api.cleanup)
|
46
48
|
|
47
49
|
for src_account in sharing_accounts:
|
48
50
|
sharing = src_account.get("sharing")
|
@@ -1,6 +1,8 @@
|
|
1
1
|
import base64
|
2
2
|
import json
|
3
3
|
import logging
|
4
|
+
from collections.abc import Mapping
|
5
|
+
from typing import Any
|
4
6
|
|
5
7
|
from reconcile import queries
|
6
8
|
from reconcile.utils.aws_api import AWSApi
|
@@ -9,15 +11,15 @@ from reconcile.utils.vault import VaultClient
|
|
9
11
|
QONTRACT_INTEGRATION = "aws-ecr-image-pull-secrets"
|
10
12
|
|
11
13
|
|
12
|
-
def enc_dec(data):
|
14
|
+
def enc_dec(data: str) -> str:
|
13
15
|
return base64.b64encode(data.encode("utf-8")).decode("utf-8")
|
14
16
|
|
15
17
|
|
16
|
-
def get_password(token):
|
18
|
+
def get_password(token: str) -> str:
|
17
19
|
return base64.b64decode(token).decode("utf-8").split(":")[1]
|
18
20
|
|
19
21
|
|
20
|
-
def construct_dockercfg_secret_data(data):
|
22
|
+
def construct_dockercfg_secret_data(data: Mapping[str, Any]) -> dict[str, str]:
|
21
23
|
auth_data = data["authorizationData"][0]
|
22
24
|
server = auth_data["proxyEndpoint"]
|
23
25
|
token = auth_data["authorizationToken"]
|
@@ -36,7 +38,7 @@ def construct_dockercfg_secret_data(data):
|
|
36
38
|
return {".dockerconfigjson": enc_dec(json.dumps(data))}
|
37
39
|
|
38
40
|
|
39
|
-
def construct_basic_auth_secret_data(data):
|
41
|
+
def construct_basic_auth_secret_data(data: Mapping[str, Any]) -> dict[str, str]:
|
40
42
|
auth_data = data["authorizationData"][0]
|
41
43
|
token = auth_data["authorizationToken"]
|
42
44
|
password = get_password(token)
|
@@ -44,17 +46,23 @@ def construct_basic_auth_secret_data(data):
|
|
44
46
|
return {"user": enc_dec("AWS"), "token": enc_dec(password), "url": url}
|
45
47
|
|
46
48
|
|
47
|
-
def write_output_to_vault(
|
49
|
+
def write_output_to_vault(
|
50
|
+
dry_run: bool,
|
51
|
+
vault_path: str,
|
52
|
+
account: str,
|
53
|
+
secret_data: Mapping[str, str],
|
54
|
+
name: str,
|
55
|
+
) -> None:
|
48
56
|
integration_name = QONTRACT_INTEGRATION
|
49
57
|
secret_path = f"{vault_path}/{integration_name}/{account}/{name}"
|
50
58
|
secret = {"path": secret_path, "data": secret_data}
|
51
59
|
logging.info(["write_secret", secret_path])
|
52
60
|
vault_client = VaultClient()
|
53
61
|
if not dry_run:
|
54
|
-
vault_client.write(secret)
|
62
|
+
vault_client.write(secret) # type: ignore
|
55
63
|
|
56
64
|
|
57
|
-
def run(dry_run, vault_output_path=""):
|
65
|
+
def run(dry_run: bool, vault_output_path: str = "") -> None:
|
58
66
|
accounts = [a for a in queries.get_aws_accounts() if a.get("ecrs")]
|
59
67
|
settings = queries.get_app_interface_settings()
|
60
68
|
with AWSApi(1, accounts, settings=settings, init_ecr_auth_tokens=True) as aws:
|
@@ -4,7 +4,7 @@ from reconcile.utils.aws_api import AWSApi
|
|
4
4
|
QONTRACT_INTEGRATION = "aws-garbage-collector"
|
5
5
|
|
6
6
|
|
7
|
-
def run(dry_run, thread_pool_size=10):
|
7
|
+
def run(dry_run: bool, thread_pool_size: int = 10) -> None:
|
8
8
|
accounts = [a for a in queries.get_aws_accounts() if a.get("garbageCollection")]
|
9
9
|
settings = queries.get_app_interface_settings()
|
10
10
|
with AWSApi(thread_pool_size, accounts, settings=settings) as aws:
|
{qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/aws_iam_keys.py
RENAMED
@@ -1,28 +1,28 @@
|
|
1
1
|
import logging
|
2
2
|
import shutil
|
3
3
|
import sys
|
4
|
+
from collections.abc import Callable, Iterable, Mapping
|
4
5
|
from typing import Any
|
5
6
|
|
6
7
|
from reconcile import queries
|
7
8
|
from reconcile.utils.aws_api import AWSApi
|
8
9
|
from reconcile.utils.defer import defer
|
9
|
-
from reconcile.utils.state import
|
10
|
-
State,
|
11
|
-
init_state,
|
12
|
-
)
|
10
|
+
from reconcile.utils.state import State, init_state
|
13
11
|
from reconcile.utils.terrascript_aws_client import TerrascriptClient as Terrascript
|
14
12
|
|
15
13
|
QONTRACT_INTEGRATION = "aws-iam-keys"
|
16
14
|
|
17
15
|
|
18
|
-
def filter_accounts(
|
16
|
+
def filter_accounts(
|
17
|
+
accounts: Iterable[dict[str, Any]], account_name: str | None
|
18
|
+
) -> list[dict[str, Any]]:
|
19
19
|
accounts = [a for a in accounts if a.get("deleteKeys")]
|
20
20
|
if account_name:
|
21
21
|
accounts = [a for a in accounts if a["name"] == account_name]
|
22
22
|
return accounts
|
23
23
|
|
24
24
|
|
25
|
-
def get_keys_to_delete(accounts) -> dict[str, list[str]]:
|
25
|
+
def get_keys_to_delete(accounts: Iterable[dict[str, Any]]) -> dict[str, list[str]]:
|
26
26
|
return {
|
27
27
|
account["name"]: account["deleteKeys"]
|
28
28
|
for account in accounts
|
@@ -37,13 +37,17 @@ def should_run(state: State, keys_to_delete: dict[str, list[str]]) -> bool:
|
|
37
37
|
return False
|
38
38
|
|
39
39
|
|
40
|
-
def update_state(state: State, keys_to_update: dict[str, list[str]]):
|
40
|
+
def update_state(state: State, keys_to_update: dict[str, list[str]]) -> None:
|
41
41
|
for account_name, keys in keys_to_update.items():
|
42
42
|
if state.get(account_name, []) != keys:
|
43
43
|
state.add(account_name, keys, force=True)
|
44
44
|
|
45
45
|
|
46
|
-
def init_tf_working_dirs(
|
46
|
+
def init_tf_working_dirs(
|
47
|
+
accounts: Iterable[dict[str, Any]],
|
48
|
+
thread_pool_size: int,
|
49
|
+
settings: Mapping[str, Any],
|
50
|
+
) -> dict[str, str]:
|
47
51
|
# copied here to avoid circular dependency
|
48
52
|
QONTRACT_INTEGRATION = "terraform_resources"
|
49
53
|
QONTRACT_TF_PREFIX = "qrtf"
|
@@ -64,19 +68,19 @@ def init_tf_working_dirs(accounts, thread_pool_size, settings):
|
|
64
68
|
return ts.dump()
|
65
69
|
|
66
70
|
|
67
|
-
def cleanup(working_dirs):
|
71
|
+
def cleanup(working_dirs: Mapping[str, str]) -> None:
|
68
72
|
for wd in working_dirs.values():
|
69
73
|
shutil.rmtree(wd)
|
70
74
|
|
71
75
|
|
72
76
|
@defer
|
73
77
|
def run(
|
74
|
-
dry_run,
|
75
|
-
thread_pool_size=10,
|
76
|
-
disable_service_account_keys=False,
|
77
|
-
account_name=None,
|
78
|
-
defer=None,
|
79
|
-
):
|
78
|
+
dry_run: bool,
|
79
|
+
thread_pool_size: int = 10,
|
80
|
+
disable_service_account_keys: bool = False,
|
81
|
+
account_name: str | None = None,
|
82
|
+
defer: Callable | None = None,
|
83
|
+
) -> None:
|
80
84
|
accounts = filter_accounts(
|
81
85
|
queries.get_aws_accounts(terraform_state=True), account_name
|
82
86
|
)
|
@@ -88,7 +92,8 @@ def run(
|
|
88
92
|
|
89
93
|
settings = queries.get_app_interface_settings()
|
90
94
|
state = init_state(integration=QONTRACT_INTEGRATION)
|
91
|
-
defer
|
95
|
+
if defer:
|
96
|
+
defer(state.cleanup)
|
92
97
|
keys_to_delete = get_keys_to_delete(accounts)
|
93
98
|
if not should_run(state, keys_to_delete):
|
94
99
|
logging.debug("nothing to do here")
|
@@ -97,7 +102,9 @@ def run(
|
|
97
102
|
return
|
98
103
|
|
99
104
|
working_dirs = init_tf_working_dirs(accounts, thread_pool_size, settings)
|
100
|
-
defer
|
105
|
+
if defer:
|
106
|
+
defer(lambda: cleanup(working_dirs))
|
107
|
+
|
101
108
|
with AWSApi(thread_pool_size, accounts, settings=settings) as aws:
|
102
109
|
error, service_account_recycle_complete = aws.delete_keys(
|
103
110
|
dry_run, keys_to_delete, working_dirs, disable_service_account_keys
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import logging
|
2
2
|
import sys
|
3
3
|
from collections.abc import (
|
4
|
+
Callable,
|
4
5
|
Iterable,
|
5
6
|
Mapping,
|
6
7
|
)
|
@@ -44,12 +45,13 @@ class AwsAccountWithResets(BaseModel):
|
|
44
45
|
|
45
46
|
|
46
47
|
@defer
|
47
|
-
def run(dry_run, defer=None):
|
48
|
+
def run(dry_run: bool, defer: Callable | None = None) -> None:
|
48
49
|
accounts = queries.get_aws_accounts(reset_passwords=True)
|
49
50
|
settings = queries.get_app_interface_settings()
|
50
51
|
roles = queries.get_roles(aws=True, saas_files=False)
|
51
52
|
state = init_state(integration=QONTRACT_INTEGRATION)
|
52
|
-
defer
|
53
|
+
if defer:
|
54
|
+
defer(state.cleanup)
|
53
55
|
|
54
56
|
accounts_to_reset: list[AwsAccountWithResets] = []
|
55
57
|
|
@@ -1,5 +1,7 @@
|
|
1
1
|
import itertools
|
2
2
|
import logging
|
3
|
+
from collections.abc import Callable, Iterable, Mapping
|
4
|
+
from typing import Any
|
3
5
|
|
4
6
|
from reconcile import (
|
5
7
|
mr_client_gateway,
|
@@ -12,11 +14,11 @@ from reconcile.utils.mr import CreateDeleteAwsAccessKey
|
|
12
14
|
QONTRACT_INTEGRATION = "aws-support-cases-sos"
|
13
15
|
|
14
16
|
|
15
|
-
def filter_accounts(accounts):
|
17
|
+
def filter_accounts(accounts: Iterable[dict[str, Any]]) -> list[dict[str, Any]]:
|
16
18
|
return [a for a in accounts if a.get("premiumSupport")]
|
17
19
|
|
18
20
|
|
19
|
-
def get_deleted_keys(accounts):
|
21
|
+
def get_deleted_keys(accounts: Iterable[dict[str, Any]]) -> dict[str, list[str]]:
|
20
22
|
return {
|
21
23
|
account["name"]: account["deleteKeys"]
|
22
24
|
for account in accounts
|
@@ -24,7 +26,9 @@ def get_deleted_keys(accounts):
|
|
24
26
|
}
|
25
27
|
|
26
28
|
|
27
|
-
def get_keys_to_delete(
|
29
|
+
def get_keys_to_delete(
|
30
|
+
aws_support_cases: Mapping[str, Iterable[Mapping[str, Any]]],
|
31
|
+
) -> list[dict[str, str]]:
|
28
32
|
search_pattern = "We have become aware that the AWS Access Key "
|
29
33
|
keys = []
|
30
34
|
# ref:
|
@@ -43,10 +47,17 @@ def get_keys_to_delete(aws_support_cases):
|
|
43
47
|
|
44
48
|
|
45
49
|
@defer
|
46
|
-
def act(
|
50
|
+
def act(
|
51
|
+
dry_run: bool,
|
52
|
+
gitlab_project_id: str | None,
|
53
|
+
accounts: Iterable[dict[str, Any]],
|
54
|
+
keys_to_delete: list[dict[str, str]],
|
55
|
+
defer: Callable | None = None,
|
56
|
+
) -> None:
|
47
57
|
if not dry_run and keys_to_delete:
|
48
58
|
mr_cli = mr_client_gateway.init(gitlab_project_id=gitlab_project_id)
|
49
|
-
defer
|
59
|
+
if defer:
|
60
|
+
defer(mr_cli.cleanup)
|
50
61
|
|
51
62
|
for k in keys_to_delete:
|
52
63
|
account = k["account"]
|
@@ -59,7 +70,9 @@ def act(dry_run, gitlab_project_id, accounts, keys_to_delete, defer=None):
|
|
59
70
|
mr.submit(cli=mr_cli)
|
60
71
|
|
61
72
|
|
62
|
-
def run(
|
73
|
+
def run(
|
74
|
+
dry_run: bool, gitlab_project_id: str | None = None, thread_pool_size: int = 10
|
75
|
+
) -> None:
|
63
76
|
accounts = filter_accounts(queries.get_aws_accounts())
|
64
77
|
settings = queries.get_app_interface_settings()
|
65
78
|
deleted_keys = get_deleted_keys(accounts)
|
@@ -63,7 +63,7 @@ class EndpointMonitoringProvider:
|
|
63
63
|
return None
|
64
64
|
|
65
65
|
@property
|
66
|
-
def metric_labels(self):
|
66
|
+
def metric_labels(self) -> dict[str, Any]:
|
67
67
|
return json.loads(self.metricLabels) if self.metricLabels else {}
|
68
68
|
|
69
69
|
|
@@ -136,7 +136,7 @@ def run_for_provider(
|
|
136
136
|
thread_pool_size: int,
|
137
137
|
internal: bool,
|
138
138
|
use_jump_host: bool,
|
139
|
-
defer=None,
|
139
|
+
defer: Callable | None = None,
|
140
140
|
) -> None:
|
141
141
|
# prepare
|
142
142
|
desired_endpoints = get_endpoints(provider)
|
@@ -152,7 +152,8 @@ def run_for_provider(
|
|
152
152
|
integration_version=integration_version,
|
153
153
|
override_managed_types=["Probe"],
|
154
154
|
)
|
155
|
-
defer
|
155
|
+
if defer:
|
156
|
+
defer(oc_map.cleanup)
|
156
157
|
|
157
158
|
# reconcile
|
158
159
|
for ep_mon_provider, endpoints in desired_endpoints.items():
|
{qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/client.py
RENAMED
@@ -23,7 +23,7 @@ class CNAClient:
|
|
23
23
|
cnas = self._ocm_client.get(api_path="/api/cna-management/v1/cnas")
|
24
24
|
return cnas.get("items", [])
|
25
25
|
|
26
|
-
def create(self, asset: Asset, dry_run: bool = False):
|
26
|
+
def create(self, asset: Asset, dry_run: bool = False) -> None:
|
27
27
|
if dry_run:
|
28
28
|
logging.info("CREATE %s", asset)
|
29
29
|
return
|
@@ -32,7 +32,7 @@ class CNAClient:
|
|
32
32
|
data=asset.api_payload(),
|
33
33
|
)
|
34
34
|
|
35
|
-
def delete(self, asset: Asset, dry_run: bool = False):
|
35
|
+
def delete(self, asset: Asset, dry_run: bool = False) -> None:
|
36
36
|
if dry_run:
|
37
37
|
logging.info("DELETE %s", asset)
|
38
38
|
return
|
@@ -41,7 +41,7 @@ class CNAClient:
|
|
41
41
|
api_path=asset.href,
|
42
42
|
)
|
43
43
|
|
44
|
-
def update(self, asset: Asset, dry_run: bool = False):
|
44
|
+
def update(self, asset: Asset, dry_run: bool = False) -> None:
|
45
45
|
if dry_run:
|
46
46
|
logging.info("UPDATE %s", asset)
|
47
47
|
return
|
{qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/integration.py
RENAMED
@@ -46,13 +46,13 @@ class CNAIntegration:
|
|
46
46
|
namespaces: Iterable[NamespaceV1],
|
47
47
|
desired_states: Mapping[str, State] | None = None,
|
48
48
|
current_states: Mapping[str, State] | None = None,
|
49
|
-
):
|
49
|
+
) -> None:
|
50
50
|
self._cna_clients = cna_clients
|
51
51
|
self._namespaces = namespaces
|
52
52
|
self._desired_states = desired_states or defaultdict(State)
|
53
53
|
self._current_states = current_states or defaultdict(State)
|
54
54
|
|
55
|
-
def assemble_desired_states(self):
|
55
|
+
def assemble_desired_states(self) -> None:
|
56
56
|
self._desired_states = defaultdict(State)
|
57
57
|
for namespace in self._namespaces:
|
58
58
|
for provider in namespace.external_resources or []:
|
@@ -64,7 +64,7 @@ class CNAIntegration:
|
|
64
64
|
asset_factory_from_schema(resource)
|
65
65
|
)
|
66
66
|
|
67
|
-
def assemble_current_states(self):
|
67
|
+
def assemble_current_states(self) -> None:
|
68
68
|
self._current_states = defaultdict(State)
|
69
69
|
for name, client in self._cna_clients.items():
|
70
70
|
cnas = client.list_assets()
|
@@ -72,7 +72,7 @@ class CNAIntegration:
|
|
72
72
|
state.add_raw_data(cnas)
|
73
73
|
self._current_states[name] = state
|
74
74
|
|
75
|
-
def provision(self, dry_run: bool = False):
|
75
|
+
def provision(self, dry_run: bool = False) -> None:
|
76
76
|
for provisioner_name, cna_client in self._cna_clients.items():
|
77
77
|
desired_state = self._desired_states[provisioner_name]
|
78
78
|
current_state = self._current_states[provisioner_name]
|
@@ -119,7 +119,6 @@ def run(
|
|
119
119
|
dry_run: bool,
|
120
120
|
# TODO: Threadpool not used yet - will be used once we understand scopes in more detail
|
121
121
|
thread_pool_size: int,
|
122
|
-
defer=None,
|
123
122
|
) -> None:
|
124
123
|
settings = get_app_interface_vault_settings()
|
125
124
|
secret_reader = create_secret_reader(use_vault=settings.vault)
|
{qontract_reconcile-0.10.2.dev135 → qontract_reconcile-0.10.2.dev137}/reconcile/cna/state.py
RENAMED
@@ -50,7 +50,7 @@ class State:
|
|
50
50
|
# pytest should show nice diff
|
51
51
|
return str(self._assets)
|
52
52
|
|
53
|
-
def _validate_addition(self, asset: Asset):
|
53
|
+
def _validate_addition(self, asset: Asset) -> None:
|
54
54
|
if asset.kind not in self._assets:
|
55
55
|
raise CNAStateError(f"State doesn't know asset_kind {asset.kind}")
|
56
56
|
if asset.name in self._assets[asset.kind]:
|
@@ -58,11 +58,11 @@ class State:
|
|
58
58
|
f"Duplicate asset name found in state: kind={asset.kind}, name={asset.name}"
|
59
59
|
)
|
60
60
|
|
61
|
-
def add_asset(self, asset: Asset):
|
61
|
+
def add_asset(self, asset: Asset) -> None:
|
62
62
|
self._validate_addition(asset=asset)
|
63
63
|
self._assets[asset.kind][asset.name] = asset
|
64
64
|
|
65
|
-
def add_raw_data(self, data: Iterable[Mapping[str, Any]]):
|
65
|
+
def add_raw_data(self, data: Iterable[Mapping[str, Any]]) -> None:
|
66
66
|
for cna in data:
|
67
67
|
asset = asset_factory_from_raw_data(cna)
|
68
68
|
self._validate_addition(asset=asset)
|
@@ -0,0 +1,125 @@
|
|
1
|
+
import logging
|
2
|
+
import sys
|
3
|
+
from collections.abc import Callable
|
4
|
+
|
5
|
+
from reconcile import typed_queries
|
6
|
+
from reconcile.gql_definitions.email_sender.apps import query as apps_query
|
7
|
+
from reconcile.gql_definitions.email_sender.emails import (
|
8
|
+
AppInterfaceEmailAudienceV1,
|
9
|
+
AppInterfaceEmailV1,
|
10
|
+
)
|
11
|
+
from reconcile.gql_definitions.email_sender.emails import query as emails_query
|
12
|
+
from reconcile.gql_definitions.email_sender.users import query as users_query
|
13
|
+
from reconcile.gql_definitions.fragments.email_service import EmailServiceOwners
|
14
|
+
from reconcile.gql_definitions.fragments.email_user import EmailUser
|
15
|
+
from reconcile.typed_queries.app_interface_vault_settings import (
|
16
|
+
get_app_interface_vault_settings,
|
17
|
+
)
|
18
|
+
from reconcile.utils import gql
|
19
|
+
from reconcile.utils.defer import defer
|
20
|
+
from reconcile.utils.secret_reader import create_secret_reader
|
21
|
+
from reconcile.utils.smtp_client import (
|
22
|
+
DEFAULT_SMTP_TIMEOUT,
|
23
|
+
SmtpClient,
|
24
|
+
get_smtp_server_connection,
|
25
|
+
)
|
26
|
+
from reconcile.utils.state import init_state
|
27
|
+
|
28
|
+
QONTRACT_INTEGRATION = "email-sender"
|
29
|
+
|
30
|
+
|
31
|
+
def collect_to(
|
32
|
+
to: AppInterfaceEmailAudienceV1,
|
33
|
+
all_users: list[EmailUser],
|
34
|
+
all_services: list[EmailServiceOwners],
|
35
|
+
) -> set[str]:
|
36
|
+
"""Collect audience to send email to from to object
|
37
|
+
|
38
|
+
Arguments:
|
39
|
+
to -- AppInterfaceEmailAudience_v1 object
|
40
|
+
all_users -- List of all app-interface users
|
41
|
+
all_services -- List of all app-interface apps/services with owners
|
42
|
+
|
43
|
+
Raises:
|
44
|
+
AttributeError: Unknown alias
|
45
|
+
|
46
|
+
Returns:
|
47
|
+
set -- Audience to send email to
|
48
|
+
"""
|
49
|
+
audience: set[str] = set()
|
50
|
+
|
51
|
+
for alias in to.aliases or []:
|
52
|
+
match alias:
|
53
|
+
case "all-users":
|
54
|
+
to.users = all_users
|
55
|
+
case "all-service-owners":
|
56
|
+
to.services = all_services
|
57
|
+
case _:
|
58
|
+
raise AttributeError(f"unknown alias: {alias}")
|
59
|
+
|
60
|
+
for service in to.services or []:
|
61
|
+
audience.update(
|
62
|
+
service_owner.email for service_owner in service.service_owners or []
|
63
|
+
)
|
64
|
+
|
65
|
+
for account in to.aws_accounts or []:
|
66
|
+
audience.update(
|
67
|
+
account_owner.email for account_owner in account.account_owners or []
|
68
|
+
)
|
69
|
+
|
70
|
+
for role in to.roles or []:
|
71
|
+
audience.update(user.org_username for user in role.users or [])
|
72
|
+
|
73
|
+
# SmtpClient supports sending to org_username and email addresses
|
74
|
+
audience.update(user.org_username for user in to.users or [])
|
75
|
+
|
76
|
+
if to.clusters or to.namespaces:
|
77
|
+
raise NotImplementedError("clusters and namespaces are not implemented yet")
|
78
|
+
return audience
|
79
|
+
|
80
|
+
|
81
|
+
def get_emails(query_func: Callable) -> list[AppInterfaceEmailV1]:
|
82
|
+
return emails_query(query_func).emails or []
|
83
|
+
|
84
|
+
|
85
|
+
@defer
|
86
|
+
def run(dry_run: bool, defer: Callable | None = None) -> None:
|
87
|
+
gql_api = gql.get_api()
|
88
|
+
vault_settings = get_app_interface_vault_settings()
|
89
|
+
secret_reader = create_secret_reader(use_vault=vault_settings.vault)
|
90
|
+
state = init_state(integration=QONTRACT_INTEGRATION, secret_reader=secret_reader)
|
91
|
+
if defer:
|
92
|
+
defer(state.cleanup)
|
93
|
+
|
94
|
+
emails = get_emails(gql_api.query)
|
95
|
+
if not emails:
|
96
|
+
logging.info("no emails to send")
|
97
|
+
sys.exit(0)
|
98
|
+
|
99
|
+
all_users = users_query(gql_api.query).users or []
|
100
|
+
all_services = apps_query(gql_api.query).apps or []
|
101
|
+
smtp_settings = typed_queries.smtp.settings()
|
102
|
+
smtp_client = SmtpClient(
|
103
|
+
server=get_smtp_server_connection(
|
104
|
+
secret_reader=secret_reader,
|
105
|
+
secret=smtp_settings.credentials,
|
106
|
+
),
|
107
|
+
mail_address=smtp_settings.mail_address,
|
108
|
+
timeout=smtp_settings.timeout or DEFAULT_SMTP_TIMEOUT,
|
109
|
+
)
|
110
|
+
# validate no 2 emails have the same name
|
111
|
+
email_names = {e.name for e in emails}
|
112
|
+
if len(emails) != len(email_names):
|
113
|
+
logging.error("email names must be unique.")
|
114
|
+
sys.exit(1)
|
115
|
+
|
116
|
+
emails_to_send = [e for e in emails if not state.exists(e.name)]
|
117
|
+
for email in emails_to_send:
|
118
|
+
logging.info(["send_email", email.name, email.subject])
|
119
|
+
|
120
|
+
if not dry_run:
|
121
|
+
names = collect_to(
|
122
|
+
email.q_to, all_users=all_users, all_services=all_services
|
123
|
+
)
|
124
|
+
smtp_client.send_mail(names, email.subject, email.body)
|
125
|
+
state.add(email.name)
|