qontract-reconcile 0.10.2.dev186__tar.gz → 0.10.2.dev187__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.dev186 → qontract_reconcile-0.10.2.dev187}/PKG-INFO +1 -1
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/pyproject.toml +0 -2
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_users.py +29 -1
- qontract_reconcile-0.10.2.dev187/reconcile/gql_definitions/common/ldap_settings.py +68 -0
- qontract_reconcile-0.10.2.dev187/reconcile/gql_definitions/common/users_with_paths.py +102 -0
- qontract_reconcile-0.10.2.dev187/reconcile/ldap_users.py +126 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/providers.py +5 -2
- qontract_reconcile-0.10.2.dev187/reconcile/typed_queries/ldap_settings.py +20 -0
- qontract_reconcile-0.10.2.dev187/reconcile/typed_queries/users_with_paths.py +10 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ldap_client.py +0 -7
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/user_maintenance.py +16 -4
- qontract_reconcile-0.10.2.dev186/reconcile/ldap_users.py +0 -99
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/README.md +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/acs_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/acs_rbac.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/advanced_upgrade_service.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/aus_label_source.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/cluster_version_data.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/healthchecks.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/node_pool_spec.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/ocm_addons_upgrade_scheduler_org.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/ocm_upgrade_scheduler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/ocm_upgrade_scheduler_org.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/upgrades.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/version_gate_approver.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/version_gates/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/version_gates/handler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/version_gates/ingress_gate_handler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/version_gates/ocp_gate_handler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/version_gates/sts_version_gate_handler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/automated_actions/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/automated_actions/config/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/automated_actions/config/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/README.md +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_account_manager/utils.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_ami_cleanup/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_ami_cleanup/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_ami_share.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_cloudwatch_log_retention/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_cloudwatch_log_retention/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_ecr_image_pull_secrets.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_garbage_collector.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_iam_keys.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_iam_password_reset.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_saml_idp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_saml_idp/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_saml_roles/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_saml_roles/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_support_cases_sos.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_version_sync/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_version_sync/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_version_sync/merge_request_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_version_sync/merge_request_manager/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_version_sync/merge_request_manager/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aws_version_sync/utils.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/blackbox_exporter_endpoint_monitoring.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/README.md +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/approver.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/bundle.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/change_log_tracking.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/change_owners.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/change_types.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/changes.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/decision.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/diff.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/implicit_ownership.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/self_service_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/change_owners/tester.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/checkpoint.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cli.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/closedbox_endpoint_monitoring_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cluster_auth_rhidp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cluster_auth_rhidp/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cluster_deployment_mapper.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/assets/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/assets/asset.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/assets/asset_factory.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/assets/null.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/cna/state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dashdotdb_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dashdotdb_cso.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dashdotdb_dora.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dashdotdb_dvo.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dashdotdb_slo.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/database_access_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/deadmanssnitch.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/model.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/dynatrace_token_provider/validate.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/email_sender.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/endpoints_discovery/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/endpoints_discovery/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/endpoints_discovery/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/endpoints_discovery/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/aws.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/factories.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/integration_secrets_sync.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/model.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/secrets_sync.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/external_resources/state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/validate.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/fleet_labeler/vcs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gabi_authorized_users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gcp_image_mirror.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_org.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_owners.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_repo_invites.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_repo_permissions_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_fork_compliance.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_housekeeping.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_labeler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_members.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_mr_sqs_consumer.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_owners.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gitlab_projects.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip/README.md +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip_project_alerts/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip_project_alerts/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip_project_dsn/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/glitchtip_project_dsn/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/acs/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/acs/acs_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/acs/acs_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/acs/acs_rbac.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/advanced_upgrade_service/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/advanced_upgrade_service/aus_clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/advanced_upgrade_service/aus_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/app_interface_metrics_exporter/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/app_interface_metrics_exporter/onboarding_status.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/app_sre_tekton_access_revalidation/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/app_sre_tekton_access_revalidation/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/app_sre_tekton_access_revalidation/users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/automated_actions/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/automated_actions/instance.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_account_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_account_manager/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_ami_cleanup/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_ami_cleanup/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_cloudwatch_log_retention/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_cloudwatch_log_retention/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_saml_idp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_saml_idp/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_saml_roles/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_saml_roles/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_saml_roles/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_version_sync/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_version_sync/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/aws_version_sync/namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/change_owners/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/change_owners/queries/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/change_owners/queries/change_types.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/change_owners/queries/self_service_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cluster_auth_rhidp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cluster_auth_rhidp/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cna/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cna/queries/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cna/queries/cna_provisioners.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cna/queries/cna_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/alerting_services_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_code_component_repos.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_interface_custom_messages.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_interface_dms_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_interface_repo_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_interface_state_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_interface_vault_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/app_quay_repos_escalation_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/aws_vpc_requests.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/aws_vpcs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/clusters_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/clusters_with_dms.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/clusters_with_peering.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/github_orgs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/jira_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/jiralert_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/namespaces_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/ocm_env_telemeter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/ocm_environments.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/pagerduty_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/pgp_reencryption_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/pipeline_providers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/quay_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/quay_orgs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/reserved_networks.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/saas_files.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/saas_target_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/saasherder_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/slack_workspaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/smtp_client_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/state_aws_account.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/common/users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cost_report/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cost_report/app_names.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cost_report/cost_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/cost_report/settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/dashdotdb_slo/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/dashdotdb_slo/slo_documents_query.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/dynatrace_token_provider/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/dynatrace_token_provider/dynatrace_bootstrap_tokens.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/dynatrace_token_provider/token_specs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/email_sender/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/email_sender/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/email_sender/emails.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/email_sender/users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/endpoints_discovery/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/endpoints_discovery/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/external_resources_modules.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/external_resources_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/external_resources_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/fragments/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/external_resources/fragments/external_resources_module_overrides.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fleet_labeler/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fleet_labeler/fleet_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aus_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_account_common.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_account_managed.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_account_sso.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_infra_management_account.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_vpc.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_vpc_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/aws_vpc_request_subnet.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/container_image_mirror.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/deplopy_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/disable.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/email_service.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/email_user.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/jumphost_common_fields.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/membership_source.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/minimal_ocm_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/oc_connection_cluster.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/ocm_environment.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/pipeline_provider_retention.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/prometheus_instance.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/resource_limits_requirements.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/resource_requests_requirements.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/resource_values.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/saas_slo_document.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/saas_target_namespace.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/serviceaccount_token.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/terraform_state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/upgrade_policy.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/user.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/fragments/vault_secret.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/gcp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/gcp/gcp_docker_repos.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/gcp/gcp_projects.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/gitlab_members/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/gitlab_members/gitlab_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/gitlab_members/permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/glitchtip/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/glitchtip/glitchtip_instance.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/glitchtip/glitchtip_project.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/glitchtip_project_alerts/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/glitchtip_project_alerts/glitchtip_project.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/integrations/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/integrations/integrations.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/introspection.json +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jenkins_configs/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jenkins_configs/jenkins_configs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jenkins_configs/jenkins_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jira/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jira/jira_servers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jira_permissions_validator/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jira_permissions_validator/jira_boards_for_permissions_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jumphosts/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/jumphosts/jumphosts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ldap_groups/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ldap_groups/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ldap_groups/settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/maintenance/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/maintenance/maintenances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/membershipsources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/membershipsources/roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ocm_labels/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ocm_labels/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ocm_labels/organizations.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ocm_oidc_idp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/ocm_subscription_labels/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_cluster_bots/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_cluster_bots/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_groups/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_groups/managed_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_groups/managed_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_serviceaccount_tokens/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/openshift_serviceaccount_tokens/tokens.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/quay_membership/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/quay_membership/quay_membership.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/rhidp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/rhidp/organizations.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/service_dependencies/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/service_dependencies/jenkins_instance_fragment.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/service_dependencies/service_dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/sharding/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/sharding/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/sharding/ocm_organization.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/skupper_network/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/skupper_network/site_controller_template.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/skupper_network/skupper_networks.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/slack_usergroups/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/slack_usergroups/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/slack_usergroups/permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/slack_usergroups/users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/slo_documents/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/slo_documents/slo_documents.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/status_board/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/status_board/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/statuspage/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/statuspage/statuspages.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/templating/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/templating/template_collection.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/templating/templates.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_dns/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_dns/app_interface_cloudflare_dns_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_dns/terraform_cloudflare_zones.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_resources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_resources/terraform_cloudflare_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_resources/terraform_cloudflare_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_users/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_users/app_interface_setting_cloudflare_and_vault.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_cloudflare_users/terraform_cloudflare_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_init/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_init/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_repo/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_repo/terraform_repo.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_resources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_resources/database_access_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_tgw_attachments/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/terraform_tgw_attachments/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/unleash_feature_toggles/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/unleash_feature_toggles/feature_toggles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vault_instances/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vault_instances/vault_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vault_policies/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vault_policies/vault_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vpc_peerings_validator/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator_peered_cluster_fragment.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/integrations_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins/types.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_job_builder.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_job_builds_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_job_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_roles.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_webhooks.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_webhooks_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jenkins_worker_fleets.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jira_permissions_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/jira_watcher.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ldap_groups/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ldap_groups/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/mr_client_gateway.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm/types.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_additional_routers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_addons.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_addons_upgrade_tests_trigger.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_aws_infrastructure_access.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_external_configuration_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_github_idp.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_internal_notifications/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_internal_notifications/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_labels/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_labels/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_machine_pools.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_update_recommended_version.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/ocm_upgrade_scheduler_org_updater.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_cluster_bots.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_clusterrolebindings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_limitranges.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_namespace_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_network_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_prometheus_rules.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_resourcequotas.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_resources_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_rolebindings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_routes.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_change_tester.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_trigger_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_trigger_cleaner.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_trigger_configs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_trigger_images.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_trigger_moving_commits.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_saas_deploy_trigger_upstream_jobs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_serviceaccount_tokens.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_tekton_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_upgrade_watcher.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/openshift_vault_secrets.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/labelset.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/standalone.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/prometheus_rules_tester/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/prometheus_rules_tester/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/quay_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/quay_membership.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/quay_mirror.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/quay_mirror_org.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/quay_permissions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/quay_repos.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/queries.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/query_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/requests_sender.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/resource_scraper.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/resource_template_tester.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/common.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/ocm_oidc_idp/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/ocm_oidc_idp/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/ocm_oidc_idp/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/ocm_oidc_idp/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/sso_client/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/sso_client/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/sso_client/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/rhidp/sso_client/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/run_integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/batcher.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/desired_state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/merge_request_manager_v2.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/mr_parser.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/open_merge_requests.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/merge_request_manager/renderer.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/publisher.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/s3_exporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/subscriber.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/utils/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_auto_promotions_manager/utils/saas_files_inventory.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/saas_file_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/sendgrid_teammates.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/service_dependencies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/signalfx_endpoint_monitoring.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/skupper_network/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/skupper_network/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/skupper_network/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/skupper_network/reconciler.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/skupper_network/site_controller.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/slack_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/slack_usergroups.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/sql_query.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/status.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/atlassian.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/integrations/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/integrations/components.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/integrations/maintenances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/page.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/statuspage/status.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templates/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templates/aws_access_key_email.j2 +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templates/email.yml.j2 +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templates/jira-checkpoint-missinginfo.j2 +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templates/rosa-classic-cluster-creation.sh.j2 +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templates/rosa-hcp-cluster-creation.sh.j2 +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/lib/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/lib/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/lib/model.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/lib/rendering.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/renderer.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/templating/validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_aws_route53.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_cloudflare_dns.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_cloudflare_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_cloudflare_users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_init/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_init/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_init/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_init/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_repo.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_tgw_attachments.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_vpc_peerings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_vpc_resources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_vpc_resources/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_vpc_resources/merge_request.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/terraform_vpc_resources/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/alerting_services_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_custom_messages.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_deadmanssnitch_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_metrics_exporter/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_metrics_exporter/onboarding_status.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_metrics_exporter/terraform_repo.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_repo_url.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_state_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_interface_vault_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/app_quay_repos_escalation_policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/apps.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/aws_cloudwatch_log_retention/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/aws_vpc_requests.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/aws_vpcs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/cloudflare.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/clusters_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/clusters_with_dms.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/clusters_with_peering.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/cost_report/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/cost_report/app_names.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/cost_report/cost_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/cost_report/settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/dynatrace.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/dynatrace_environments.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/dynatrace_token_provider_token_specs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/external_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/fleet_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/get_state_aws_account.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/github_orgs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/gitlab_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/glitchtip.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/jenkins.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/jira.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/jira_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/jiralert_settings.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/namespaces_minimal.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/pagerduty_instances.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/quay.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/repos.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/reserved_networks.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/saas_files.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/slack.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/slo_documents.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/smtp.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/tekton_pipeline_providers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/terraform_namespaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/terraform_tgw_attachments/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/terraform_tgw_attachments/aws_accounts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/unleash.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/users.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/typed_queries/vault.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/unleash_feature_toggles/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/unleash_feature_toggles/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/acs/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/acs/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/acs/policies.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/acs/rbac.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aggregated_list.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/amtool.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/account.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/dynamodb.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/iam.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/organization.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/s3.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/service_quotas.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/sts.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_api_typed/support.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/aws_helper.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/batches.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/binary.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/cloud_resource_best_practice/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/cloud_resource_best_practice/aws_rds.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/clusterhealth/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/clusterhealth/providerbase.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/clusterhealth/telemeter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/config.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/constants.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/deadmanssnitch_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/defer.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/differ.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/disabled_integrations.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/dnsutils.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/dynatrace/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/dynatrace/client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/early_exit_cache.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/elasticsearch_exceptions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/environ.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/exceptions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/expiration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/extended_early_exit.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/external_resource_spec.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/external_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/filtering.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/git.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/github_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/gitlab_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/glitchtip/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/glitchtip/client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/glitchtip/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/gpg.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/gql.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/grouping.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/helm.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/helpers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/imap_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/instrumented_wrappers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/internal_groups/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/internal_groups/client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/internal_groups/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jenkins_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jinja2/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jinja2/extensions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jinja2/filters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jinja2/utils.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jira_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jjb_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jobcontroller/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jobcontroller/controller.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jobcontroller/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jsonpath.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/jump_host.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/keycloak.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/lean_terraform_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/make.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/membershipsources/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/membershipsources/app_interface_resolver.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/membershipsources/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/membershipsources/resolver.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/merge_request_manager/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/merge_request_manager/merge_request_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/merge_request_manager/parser.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/README.md +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/app_interface_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/app_sre_tekton_access_report.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/aws_access.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/clusters_updates.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/glitchtip_access_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/notificator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/ocm_update_recommended_version.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/ocm_upgrade_scheduler_org_updates.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/promote_qontract.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/mr/update_access_report_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/oauth2_backend_application_session.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/oc.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/oc_connection_parameters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/oc_filters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/oc_map.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/addons.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/cluster_groups.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/clusters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/identity_providers.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/label_sources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/manifests.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/ocm.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/products.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/search_filters.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/service_log.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/sre_capability_labels.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/status_board.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/subscriptions.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/syncsets.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm/upgrades.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ocm_base_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/openshift_resource.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/openssl.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/output.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/pagerduty_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/parse_dhms_duration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/password_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/prometheus.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/promotion_state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/promtool.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/quay_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/quay_mirror.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/raw_github_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/repo_owners.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/rest_api_base.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/rosa/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/rosa/rosa_cli.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/rosa/session.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ruamel.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/desired_state_diff.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/environment.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/integration.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/meta.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/runner.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/runtime/sharding.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/saasherder/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/saasherder/interfaces.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/saasherder/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/saasherder/saasherder.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/secret_reader.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/semver_helper.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/sharding.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/slack_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/slo_document_manager.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/smtp_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/sqs_gateway.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/structs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/template.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terraform/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terraform/config.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terraform/config_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terraform_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terrascript/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terrascript/cloudflare_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terrascript/cloudflare_resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terrascript/models.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terrascript/resources.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/terrascript_aws_client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/three_way_diff_strategy.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/throughput.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/unleash/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/unleash/client.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/unleash/server.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/vault.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/vaultsecretref.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/vcs.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/vault_replication.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/vpc_peerings_validator.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/alert_report.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/app_interface_metrics_exporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/app_interface_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/app_sre_tekton_access_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/app_sre_tekton_access_revalidation.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/container_images_report.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/aws.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/cost_management_api.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/model.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/openshift.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/openshift_cost_optimization.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/response.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/util.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/cost_report/view.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/erv2.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/gpg_encrypt.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/cli_commands/systems_and_tools.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/glitchtip_access_reporter.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/glitchtip_access_revalidation.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/qontract_cli.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_metrics_exporter/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_metrics_exporter/commit_distance/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_metrics_exporter/commit_distance/channel.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_metrics_exporter/commit_distance/commit_distance.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_metrics_exporter/commit_distance/metrics.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_metrics_exporter/main.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_promotion_state/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/saas_promotion_state/saas_promotion_state.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/sre_checkpoints/__init__.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/tools/sre_checkpoints/util.py +0 -0
- {qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/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.dev187
|
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
|
@@ -263,7 +263,6 @@ module = [
|
|
263
263
|
"reconcile.jenkins_webhooks_cleaner",
|
264
264
|
"reconcile.jenkins_webhooks",
|
265
265
|
"reconcile.jira_watcher",
|
266
|
-
"reconcile.ldap_users",
|
267
266
|
"reconcile.mr_client_gateway",
|
268
267
|
"reconcile.ocm_additional_routers",
|
269
268
|
"reconcile.ocm_addons",
|
@@ -383,7 +382,6 @@ module = [
|
|
383
382
|
"reconcile.test.test_integrations_manager",
|
384
383
|
"reconcile.test.test_jenkins_worker_fleets",
|
385
384
|
"reconcile.test.test_jump_host",
|
386
|
-
"reconcile.test.test_ldap_users",
|
387
385
|
"reconcile.test.test_make",
|
388
386
|
"reconcile.test.test_ocm_additional_routers",
|
389
387
|
"reconcile.test.test_ocm_clusters_manifest_updates",
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/github_users.py
RENAMED
@@ -1,6 +1,7 @@
|
|
1
1
|
import logging
|
2
2
|
import os
|
3
3
|
import re
|
4
|
+
from collections import defaultdict
|
4
5
|
from collections.abc import Callable
|
5
6
|
|
6
7
|
from github import Github
|
@@ -17,9 +18,9 @@ from reconcile import (
|
|
17
18
|
typed_queries,
|
18
19
|
)
|
19
20
|
from reconcile.github_org import get_default_config
|
20
|
-
from reconcile.ldap_users import init_users as init_users_and_paths
|
21
21
|
from reconcile.utils.defer import defer
|
22
22
|
from reconcile.utils.mr import CreateDeleteUserAppInterface
|
23
|
+
from reconcile.utils.mr.user_maintenance import PathSpec, PathTypes
|
23
24
|
from reconcile.utils.secret_reader import SecretReader
|
24
25
|
from reconcile.utils.smtp_client import (
|
25
26
|
DEFAULT_SMTP_TIMEOUT,
|
@@ -39,6 +40,33 @@ def init_github() -> Github:
|
|
39
40
|
return Github(token, base_url=GH_BASE_URL)
|
40
41
|
|
41
42
|
|
43
|
+
def init_users_and_paths() -> list[dict[str, list]]:
|
44
|
+
app_int_users = queries.get_users(refs=True)
|
45
|
+
|
46
|
+
users = defaultdict(list)
|
47
|
+
for user in app_int_users:
|
48
|
+
u = user["org_username"]
|
49
|
+
item = PathSpec(type=PathTypes.USER, path=user["path"])
|
50
|
+
users[u].append(item)
|
51
|
+
for r in user.get("requests"):
|
52
|
+
item = PathSpec(type=PathTypes.REQUEST, path=r["path"])
|
53
|
+
users[u].append(item)
|
54
|
+
for q in user.get("queries"):
|
55
|
+
item = PathSpec(type=PathTypes.QUERY, path=q["path"])
|
56
|
+
users[u].append(item)
|
57
|
+
for g in user.get("gabi_instances"):
|
58
|
+
item = PathSpec(type=PathTypes.GABI, path=g["path"])
|
59
|
+
users[u].append(item)
|
60
|
+
for a in user.get("aws_accounts", []):
|
61
|
+
item = PathSpec(type=PathTypes.AWS_ACCOUNTS, path=a["path"])
|
62
|
+
users[u].append(item)
|
63
|
+
for s in user.get("schedules"):
|
64
|
+
item = PathSpec(type=PathTypes.SCHEDULE, path=s["path"])
|
65
|
+
users[u].append(item)
|
66
|
+
|
67
|
+
return [{"username": username, "paths": paths} for username, paths in users.items()]
|
68
|
+
|
69
|
+
|
42
70
|
@retry(exceptions=(GithubException, ReadTimeout))
|
43
71
|
def get_user_company(user: dict, github: Github) -> UserAndCompany:
|
44
72
|
gh_user = github.get_user(login=user["github_username"])
|
@@ -0,0 +1,68 @@
|
|
1
|
+
"""
|
2
|
+
Generated by qenerate plugin=pydantic_v1. DO NOT MODIFY MANUALLY!
|
3
|
+
"""
|
4
|
+
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
5
|
+
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
6
|
+
from enum import Enum # noqa: F401 # pylint: disable=W0611
|
7
|
+
from typing import ( # noqa: F401 # pylint: disable=W0611
|
8
|
+
Any,
|
9
|
+
Optional,
|
10
|
+
Union,
|
11
|
+
)
|
12
|
+
|
13
|
+
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
14
|
+
BaseModel,
|
15
|
+
Extra,
|
16
|
+
Field,
|
17
|
+
Json,
|
18
|
+
)
|
19
|
+
|
20
|
+
|
21
|
+
DEFINITION = """
|
22
|
+
query LdapSettings {
|
23
|
+
settings: app_interface_settings_v1 {
|
24
|
+
ldap {
|
25
|
+
serverUrl
|
26
|
+
baseDn
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}
|
30
|
+
"""
|
31
|
+
|
32
|
+
|
33
|
+
class ConfiguredBaseModel(BaseModel):
|
34
|
+
class Config:
|
35
|
+
smart_union=True
|
36
|
+
extra=Extra.forbid
|
37
|
+
|
38
|
+
|
39
|
+
class LdapSettingsV1(ConfiguredBaseModel):
|
40
|
+
server_url: str = Field(..., alias="serverUrl")
|
41
|
+
base_dn: str = Field(..., alias="baseDn")
|
42
|
+
|
43
|
+
|
44
|
+
class AppInterfaceSettingsV1(ConfiguredBaseModel):
|
45
|
+
ldap: Optional[LdapSettingsV1] = Field(..., alias="ldap")
|
46
|
+
|
47
|
+
|
48
|
+
class LdapSettingsQueryData(ConfiguredBaseModel):
|
49
|
+
settings: Optional[list[AppInterfaceSettingsV1]] = Field(..., alias="settings")
|
50
|
+
|
51
|
+
|
52
|
+
def query(query_func: Callable, **kwargs: Any) -> LdapSettingsQueryData:
|
53
|
+
"""
|
54
|
+
This is a convenience function which queries and parses the data into
|
55
|
+
concrete types. It should be compatible with most GQL clients.
|
56
|
+
You do not have to use it to consume the generated data classes.
|
57
|
+
Alternatively, you can also mime and alternate the behavior
|
58
|
+
of this function in the caller.
|
59
|
+
|
60
|
+
Parameters:
|
61
|
+
query_func (Callable): Function which queries your GQL Server
|
62
|
+
kwargs: optional arguments that will be passed to the query function
|
63
|
+
|
64
|
+
Returns:
|
65
|
+
LdapSettingsQueryData: queried data parsed into generated classes
|
66
|
+
"""
|
67
|
+
raw_data: dict[Any, Any] = query_func(DEFINITION, **kwargs)
|
68
|
+
return LdapSettingsQueryData(**raw_data)
|
@@ -0,0 +1,102 @@
|
|
1
|
+
"""
|
2
|
+
Generated by qenerate plugin=pydantic_v1. DO NOT MODIFY MANUALLY!
|
3
|
+
"""
|
4
|
+
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
5
|
+
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
6
|
+
from enum import Enum # noqa: F401 # pylint: disable=W0611
|
7
|
+
from typing import ( # noqa: F401 # pylint: disable=W0611
|
8
|
+
Any,
|
9
|
+
Optional,
|
10
|
+
Union,
|
11
|
+
)
|
12
|
+
|
13
|
+
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
14
|
+
BaseModel,
|
15
|
+
Extra,
|
16
|
+
Field,
|
17
|
+
Json,
|
18
|
+
)
|
19
|
+
|
20
|
+
|
21
|
+
DEFINITION = """
|
22
|
+
query UsersWithPaths {
|
23
|
+
users: users_v1 {
|
24
|
+
path
|
25
|
+
org_username
|
26
|
+
aws_accounts {
|
27
|
+
path
|
28
|
+
}
|
29
|
+
requests {
|
30
|
+
path
|
31
|
+
}
|
32
|
+
queries {
|
33
|
+
path
|
34
|
+
}
|
35
|
+
gabi_instances {
|
36
|
+
path
|
37
|
+
}
|
38
|
+
schedules {
|
39
|
+
path
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
43
|
+
"""
|
44
|
+
|
45
|
+
|
46
|
+
class ConfiguredBaseModel(BaseModel):
|
47
|
+
class Config:
|
48
|
+
smart_union=True
|
49
|
+
extra=Extra.forbid
|
50
|
+
|
51
|
+
|
52
|
+
class AWSAccountV1(ConfiguredBaseModel):
|
53
|
+
path: str = Field(..., alias="path")
|
54
|
+
|
55
|
+
|
56
|
+
class CredentialsRequestV1(ConfiguredBaseModel):
|
57
|
+
path: str = Field(..., alias="path")
|
58
|
+
|
59
|
+
|
60
|
+
class AppInterfaceSqlQueryV1(ConfiguredBaseModel):
|
61
|
+
path: str = Field(..., alias="path")
|
62
|
+
|
63
|
+
|
64
|
+
class GabiInstanceV1(ConfiguredBaseModel):
|
65
|
+
path: str = Field(..., alias="path")
|
66
|
+
|
67
|
+
|
68
|
+
class ScheduleV1(ConfiguredBaseModel):
|
69
|
+
path: str = Field(..., alias="path")
|
70
|
+
|
71
|
+
|
72
|
+
class UserV1(ConfiguredBaseModel):
|
73
|
+
path: str = Field(..., alias="path")
|
74
|
+
org_username: str = Field(..., alias="org_username")
|
75
|
+
aws_accounts: Optional[list[AWSAccountV1]] = Field(..., alias="aws_accounts")
|
76
|
+
requests: Optional[list[CredentialsRequestV1]] = Field(..., alias="requests")
|
77
|
+
queries: Optional[list[AppInterfaceSqlQueryV1]] = Field(..., alias="queries")
|
78
|
+
gabi_instances: Optional[list[GabiInstanceV1]] = Field(..., alias="gabi_instances")
|
79
|
+
schedules: Optional[list[ScheduleV1]] = Field(..., alias="schedules")
|
80
|
+
|
81
|
+
|
82
|
+
class UsersWithPathsQueryData(ConfiguredBaseModel):
|
83
|
+
users: Optional[list[UserV1]] = Field(..., alias="users")
|
84
|
+
|
85
|
+
|
86
|
+
def query(query_func: Callable, **kwargs: Any) -> UsersWithPathsQueryData:
|
87
|
+
"""
|
88
|
+
This is a convenience function which queries and parses the data into
|
89
|
+
concrete types. It should be compatible with most GQL clients.
|
90
|
+
You do not have to use it to consume the generated data classes.
|
91
|
+
Alternatively, you can also mime and alternate the behavior
|
92
|
+
of this function in the caller.
|
93
|
+
|
94
|
+
Parameters:
|
95
|
+
query_func (Callable): Function which queries your GQL Server
|
96
|
+
kwargs: optional arguments that will be passed to the query function
|
97
|
+
|
98
|
+
Returns:
|
99
|
+
UsersWithPathsQueryData: queried data parsed into generated classes
|
100
|
+
"""
|
101
|
+
raw_data: dict[Any, Any] = query_func(DEFINITION, **kwargs)
|
102
|
+
return UsersWithPathsQueryData(**raw_data)
|
@@ -0,0 +1,126 @@
|
|
1
|
+
import logging
|
2
|
+
from collections.abc import Callable
|
3
|
+
|
4
|
+
from pydantic import BaseModel, Field
|
5
|
+
|
6
|
+
from reconcile import (
|
7
|
+
mr_client_gateway,
|
8
|
+
)
|
9
|
+
from reconcile.gql_definitions.common.ldap_settings import LdapSettingsV1
|
10
|
+
from reconcile.gql_definitions.common.users_with_paths import UserV1
|
11
|
+
from reconcile.typed_queries.ldap_settings import get_ldap_settings
|
12
|
+
from reconcile.typed_queries.users_with_paths import get_users_with_paths
|
13
|
+
from reconcile.utils.defer import defer
|
14
|
+
from reconcile.utils.ldap_client import LdapClient
|
15
|
+
from reconcile.utils.mr import (
|
16
|
+
CreateDeleteUserAppInterface,
|
17
|
+
CreateDeleteUserInfra,
|
18
|
+
)
|
19
|
+
from reconcile.utils.mr.user_maintenance import PathSpec, PathTypes
|
20
|
+
|
21
|
+
QONTRACT_INTEGRATION = "ldap-users"
|
22
|
+
|
23
|
+
|
24
|
+
class UserPaths(BaseModel):
|
25
|
+
username: str
|
26
|
+
paths: list[PathSpec] = Field(default_factory=list)
|
27
|
+
|
28
|
+
|
29
|
+
def transform_users_with_paths(users_with_paths: list[UserV1]) -> list[UserPaths]:
|
30
|
+
"""Converts UserV1 objects into UserPaths, consolidating all associated resource paths by type."""
|
31
|
+
|
32
|
+
users_paths = []
|
33
|
+
for user in users_with_paths:
|
34
|
+
up = UserPaths(username=user.org_username)
|
35
|
+
up.paths.append(PathSpec(type=PathTypes.USER, path=user.path))
|
36
|
+
for r in user.requests or []:
|
37
|
+
up.paths.append(PathSpec(type=PathTypes.REQUEST, path=r.path))
|
38
|
+
for q in user.queries or []:
|
39
|
+
up.paths.append(PathSpec(type=PathTypes.QUERY, path=q.path))
|
40
|
+
for g in user.gabi_instances or []:
|
41
|
+
up.paths.append(PathSpec(type=PathTypes.GABI, path=g.path))
|
42
|
+
for a in user.aws_accounts or []:
|
43
|
+
up.paths.append(PathSpec(type=PathTypes.AWS_ACCOUNTS, path=a.path))
|
44
|
+
for s in user.schedules or []:
|
45
|
+
up.paths.append(PathSpec(type=PathTypes.SCHEDULE, path=s.path))
|
46
|
+
|
47
|
+
users_paths.append(up)
|
48
|
+
|
49
|
+
return users_paths
|
50
|
+
|
51
|
+
|
52
|
+
def get_usernames(users_paths: list[UserPaths]) -> list[str]:
|
53
|
+
"""Extracts a list of usernames from a list of UserPaths objects."""
|
54
|
+
return [u.username for u in users_paths]
|
55
|
+
|
56
|
+
|
57
|
+
def filter_users_not_exists(
|
58
|
+
users_paths: list[UserPaths], ldap_users: set[str]
|
59
|
+
) -> list[UserPaths]:
|
60
|
+
"""Filters out UserPaths objects whose usernames are not present in the given set of LDAP users."""
|
61
|
+
|
62
|
+
return [u for u in users_paths if u.username not in ldap_users]
|
63
|
+
|
64
|
+
|
65
|
+
def get_ldap_users(ldap_settings: LdapSettingsV1, usernames: list[str]) -> set[str]:
|
66
|
+
"""Retrieves existing usernames from LDAP based on the provided list and connection settings."""
|
67
|
+
with LdapClient.from_params(
|
68
|
+
server_url=ldap_settings.server_url,
|
69
|
+
user=None,
|
70
|
+
password=None,
|
71
|
+
base_dn=ldap_settings.base_dn,
|
72
|
+
) as ldap_client:
|
73
|
+
return ldap_client.get_users(usernames)
|
74
|
+
|
75
|
+
|
76
|
+
@defer
|
77
|
+
def delete_user_from_app_interface(
|
78
|
+
dry_run: bool,
|
79
|
+
app_interface_project_id: str | int | None,
|
80
|
+
users: list[UserPaths],
|
81
|
+
defer: Callable | None = None,
|
82
|
+
) -> None:
|
83
|
+
"""Delete user data stored in the repository app-interface related with the given users."""
|
84
|
+
if not dry_run:
|
85
|
+
mr_cli_app_interface = mr_client_gateway.init(
|
86
|
+
gitlab_project_id=app_interface_project_id, sqs_or_gitlab="gitlab"
|
87
|
+
)
|
88
|
+
if defer:
|
89
|
+
defer(mr_cli_app_interface.cleanup)
|
90
|
+
|
91
|
+
for user in users:
|
92
|
+
logging.info(["delete_user", user.username])
|
93
|
+
|
94
|
+
if not dry_run:
|
95
|
+
mr = CreateDeleteUserAppInterface(user.username, user.paths)
|
96
|
+
mr.submit(cli=mr_cli_app_interface)
|
97
|
+
|
98
|
+
|
99
|
+
def delete_user_from_infra(
|
100
|
+
dry_run: bool,
|
101
|
+
infra_project_id: str | int | None,
|
102
|
+
usernames: list[str],
|
103
|
+
) -> None:
|
104
|
+
"""Delete user data stored in the repository infra related with the given usernames."""
|
105
|
+
if not dry_run:
|
106
|
+
with mr_client_gateway.init(
|
107
|
+
gitlab_project_id=infra_project_id, sqs_or_gitlab="gitlab"
|
108
|
+
) as mr_cli_infra:
|
109
|
+
mr_infra = CreateDeleteUserInfra(usernames)
|
110
|
+
mr_infra.submit(cli=mr_cli_infra)
|
111
|
+
|
112
|
+
|
113
|
+
def run(dry_run: bool, app_interface_project_id: str, infra_project_id: str) -> None:
|
114
|
+
"""
|
115
|
+
Synchronizes user data stored in the repositories app_interface and infra
|
116
|
+
associated with users that are no longer found in the LDAP.
|
117
|
+
"""
|
118
|
+
users_paths = transform_users_with_paths(get_users_with_paths())
|
119
|
+
|
120
|
+
ldap_users = get_ldap_users(get_ldap_settings(), get_usernames(users_paths))
|
121
|
+
|
122
|
+
users_to_delete = filter_users_not_exists(users_paths, ldap_users)
|
123
|
+
usernames_to_delete = get_usernames(users_to_delete)
|
124
|
+
|
125
|
+
delete_user_from_app_interface(dry_run, app_interface_project_id, users_to_delete)
|
126
|
+
delete_user_from_infra(dry_run, infra_project_id, usernames_to_delete)
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/oum/providers.py
RENAMED
@@ -3,7 +3,7 @@ from abc import (
|
|
3
3
|
abstractmethod,
|
4
4
|
)
|
5
5
|
|
6
|
-
from reconcile.
|
6
|
+
from reconcile.typed_queries.ldap_settings import get_ldap_settings
|
7
7
|
from reconcile.utils.ldap_client import LdapClient
|
8
8
|
|
9
9
|
|
@@ -53,7 +53,10 @@ def init_ldap_group_member_provider(group_base_dn: str) -> LdapGroupMemberProvid
|
|
53
53
|
settings = get_ldap_settings()
|
54
54
|
return LdapGroupMemberProvider(
|
55
55
|
LdapClient.from_params(
|
56
|
-
settings
|
56
|
+
server_url=settings.server_url,
|
57
|
+
user=None,
|
58
|
+
password=None,
|
59
|
+
base_dn=settings.base_dn,
|
57
60
|
),
|
58
61
|
group_base_dn,
|
59
62
|
)
|
@@ -0,0 +1,20 @@
|
|
1
|
+
from collections.abc import Callable
|
2
|
+
|
3
|
+
from reconcile.gql_definitions.common.ldap_settings import (
|
4
|
+
LdapSettingsV1,
|
5
|
+
query,
|
6
|
+
)
|
7
|
+
from reconcile.utils import gql
|
8
|
+
from reconcile.utils.exceptions import AppInterfaceSettingsError
|
9
|
+
|
10
|
+
|
11
|
+
def get_ldap_settings(
|
12
|
+
query_func: Callable | None = None,
|
13
|
+
) -> LdapSettingsV1:
|
14
|
+
"""Returns App Interface Settings and raises err if none are found"""
|
15
|
+
if not query_func:
|
16
|
+
query_func = gql.get_api().query
|
17
|
+
data = query(query_func)
|
18
|
+
if data.settings and len(data.settings) == 1 and data.settings[0].ldap:
|
19
|
+
return data.settings[0].ldap
|
20
|
+
raise AppInterfaceSettingsError("Ldap settings is not defined.")
|
@@ -0,0 +1,10 @@
|
|
1
|
+
from collections.abc import Callable
|
2
|
+
|
3
|
+
from reconcile.gql_definitions.common.users_with_paths import UserV1, query
|
4
|
+
from reconcile.utils import gql
|
5
|
+
|
6
|
+
|
7
|
+
def get_users_with_paths(query_func: Callable | None = None) -> list[UserV1]:
|
8
|
+
if not query_func:
|
9
|
+
query_func = gql.get_api().query
|
10
|
+
return query(query_func=query_func).users or []
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/utils/ldap_client.py
RENAMED
@@ -56,13 +56,6 @@ class LdapClient:
|
|
56
56
|
|
57
57
|
return dict(groups_and_members)
|
58
58
|
|
59
|
-
@classmethod
|
60
|
-
def from_settings(cls, settings: dict) -> "LdapClient":
|
61
|
-
"""Requires a nested dictionary with key 'ldap' in addition sub keys 'serverUrl' and 'baseDn'."""
|
62
|
-
return LdapClient.from_params(
|
63
|
-
settings["ldap"]["serverUrl"], None, None, settings["ldap"]["baseDn"]
|
64
|
-
)
|
65
|
-
|
66
59
|
@classmethod
|
67
60
|
def from_params(
|
68
61
|
cls, server_url: str, user: str | None, password: str | None, base_dn: str
|
@@ -1,5 +1,8 @@
|
|
1
|
+
from collections.abc import Iterable
|
2
|
+
from enum import Enum
|
1
3
|
from pathlib import Path
|
2
4
|
|
5
|
+
from pydantic import BaseModel, validator
|
3
6
|
from ruamel import yaml
|
4
7
|
|
5
8
|
from reconcile.utils.gitlab_api import GitLabApi
|
@@ -7,7 +10,7 @@ from reconcile.utils.mr.base import MergeRequestBase
|
|
7
10
|
from reconcile.utils.mr.labels import AUTO_MERGE
|
8
11
|
|
9
12
|
|
10
|
-
class PathTypes:
|
13
|
+
class PathTypes(Enum):
|
11
14
|
USER = 0
|
12
15
|
REQUEST = 1
|
13
16
|
QUERY = 2
|
@@ -16,10 +19,19 @@ class PathTypes:
|
|
16
19
|
SCHEDULE = 5
|
17
20
|
|
18
21
|
|
22
|
+
class PathSpec(BaseModel):
|
23
|
+
type: PathTypes
|
24
|
+
path: str
|
25
|
+
|
26
|
+
@validator("path")
|
27
|
+
def prepend_data_to_path(cls, v):
|
28
|
+
return "data" + v
|
29
|
+
|
30
|
+
|
19
31
|
class CreateDeleteUserAppInterface(MergeRequestBase):
|
20
32
|
name = "create_delete_user_mr"
|
21
33
|
|
22
|
-
def __init__(self, username, paths):
|
34
|
+
def __init__(self, username, paths: Iterable[PathSpec]):
|
23
35
|
self.username = username
|
24
36
|
self.paths = paths
|
25
37
|
|
@@ -37,8 +49,8 @@ class CreateDeleteUserAppInterface(MergeRequestBase):
|
|
37
49
|
|
38
50
|
def process(self, gitlab_cli: GitLabApi) -> None:
|
39
51
|
for path_spec in self.paths:
|
40
|
-
path_type = path_spec
|
41
|
-
path = path_spec
|
52
|
+
path_type = path_spec.type
|
53
|
+
path = path_spec.path
|
42
54
|
if path_type in {PathTypes.USER, PathTypes.REQUEST, PathTypes.QUERY}:
|
43
55
|
gitlab_cli.delete_file(
|
44
56
|
branch_name=self.branch, file_path=path, commit_message=self.title
|
@@ -1,99 +0,0 @@
|
|
1
|
-
import logging
|
2
|
-
from collections import defaultdict
|
3
|
-
|
4
|
-
from reconcile import (
|
5
|
-
mr_client_gateway,
|
6
|
-
queries,
|
7
|
-
)
|
8
|
-
from reconcile.utils import gql
|
9
|
-
from reconcile.utils.defer import defer
|
10
|
-
from reconcile.utils.ldap_client import LdapClient
|
11
|
-
from reconcile.utils.mr import (
|
12
|
-
CreateDeleteUserAppInterface,
|
13
|
-
CreateDeleteUserInfra,
|
14
|
-
)
|
15
|
-
from reconcile.utils.mr.user_maintenance import PathTypes
|
16
|
-
|
17
|
-
QONTRACT_INTEGRATION = "ldap-users"
|
18
|
-
|
19
|
-
|
20
|
-
def init_users() -> list[dict[str, list]]:
|
21
|
-
app_int_users = queries.get_users(refs=True)
|
22
|
-
|
23
|
-
users = defaultdict(list)
|
24
|
-
for user in app_int_users:
|
25
|
-
u = user["org_username"]
|
26
|
-
item = {"type": PathTypes.USER, "path": "data" + user["path"]}
|
27
|
-
users[u].append(item)
|
28
|
-
for r in user.get("requests"):
|
29
|
-
item = {"type": PathTypes.REQUEST, "path": "data" + r["path"]}
|
30
|
-
users[u].append(item)
|
31
|
-
for q in user.get("queries"):
|
32
|
-
item = {"type": PathTypes.QUERY, "path": "data" + q["path"]}
|
33
|
-
users[u].append(item)
|
34
|
-
for g in user.get("gabi_instances"):
|
35
|
-
item = {"type": PathTypes.GABI, "path": "data" + g["path"]}
|
36
|
-
users[u].append(item)
|
37
|
-
for a in user.get("aws_accounts", []):
|
38
|
-
item = {"type": PathTypes.AWS_ACCOUNTS, "path": "data" + a["path"]}
|
39
|
-
users[u].append(item)
|
40
|
-
for s in user.get("schedules"):
|
41
|
-
item = {"type": PathTypes.SCHEDULE, "path": "data" + s["path"]}
|
42
|
-
users[u].append(item)
|
43
|
-
|
44
|
-
return [{"username": username, "paths": paths} for username, paths in users.items()]
|
45
|
-
|
46
|
-
|
47
|
-
LDAP_SETTINGS_QUERY = """
|
48
|
-
{
|
49
|
-
settings: app_interface_settings_v1 {
|
50
|
-
ldap {
|
51
|
-
serverUrl
|
52
|
-
baseDn
|
53
|
-
}
|
54
|
-
}
|
55
|
-
}
|
56
|
-
"""
|
57
|
-
|
58
|
-
|
59
|
-
def get_ldap_settings() -> dict:
|
60
|
-
"""Returns LDAP settings"""
|
61
|
-
gqlapi = gql.get_api()
|
62
|
-
settings = gqlapi.query(LDAP_SETTINGS_QUERY)["settings"]
|
63
|
-
if settings:
|
64
|
-
# assuming a single settings file for now
|
65
|
-
return settings[0]
|
66
|
-
raise ValueError("no app-interface-settings settings found")
|
67
|
-
|
68
|
-
|
69
|
-
@defer
|
70
|
-
def run(dry_run, app_interface_project_id, infra_project_id, defer=None):
|
71
|
-
users = init_users()
|
72
|
-
with LdapClient.from_settings(get_ldap_settings()) as ldap_client:
|
73
|
-
ldap_users = ldap_client.get_users([u["username"] for u in users])
|
74
|
-
|
75
|
-
users_to_delete = [u for u in users if u["username"] not in ldap_users]
|
76
|
-
|
77
|
-
if not dry_run:
|
78
|
-
mr_cli_app_interface = mr_client_gateway.init(
|
79
|
-
gitlab_project_id=app_interface_project_id, sqs_or_gitlab="gitlab"
|
80
|
-
)
|
81
|
-
defer(mr_cli_app_interface.cleanup)
|
82
|
-
mr_cli_infra = mr_client_gateway.init(
|
83
|
-
gitlab_project_id=infra_project_id, sqs_or_gitlab="gitlab"
|
84
|
-
)
|
85
|
-
defer(mr_cli_infra.cleanup)
|
86
|
-
|
87
|
-
for u in users_to_delete:
|
88
|
-
username = u["username"]
|
89
|
-
paths = u["paths"]
|
90
|
-
logging.info(["delete_user", username])
|
91
|
-
|
92
|
-
if not dry_run:
|
93
|
-
mr = CreateDeleteUserAppInterface(username, paths)
|
94
|
-
mr.submit(cli=mr_cli_app_interface)
|
95
|
-
|
96
|
-
if not dry_run:
|
97
|
-
usernames = [u["username"] for u in users_to_delete]
|
98
|
-
mr_infra = CreateDeleteUserInfra(usernames)
|
99
|
-
mr_infra.submit(cli=mr_cli_infra)
|
File without changes
|
File without changes
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/acs_policies.py
RENAMED
File without changes
|
File without changes
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/healthchecks.py
RENAMED
File without changes
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/metrics.py
RENAMED
File without changes
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/models.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{qontract_reconcile-0.10.2.dev186 → qontract_reconcile-0.10.2.dev187}/reconcile/aus/upgrades.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|