qontract-reconcile 0.10.2.dev299__py3-none-any.whl → 0.10.2.dev430__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {qontract_reconcile-0.10.2.dev299.dist-info → qontract_reconcile-0.10.2.dev430.dist-info}/METADATA +13 -12
- {qontract_reconcile-0.10.2.dev299.dist-info → qontract_reconcile-0.10.2.dev430.dist-info}/RECORD +399 -394
- reconcile/acs_rbac.py +2 -2
- reconcile/aus/advanced_upgrade_service.py +18 -12
- reconcile/aus/base.py +134 -32
- reconcile/aus/cluster_version_data.py +15 -5
- reconcile/aus/models.py +3 -1
- reconcile/aus/ocm_addons_upgrade_scheduler_org.py +1 -0
- reconcile/aus/ocm_upgrade_scheduler.py +8 -1
- reconcile/aus/ocm_upgrade_scheduler_org.py +20 -5
- reconcile/aus/version_gates/sts_version_gate_handler.py +54 -1
- reconcile/automated_actions/config/integration.py +16 -4
- reconcile/aws_account_manager/integration.py +8 -8
- reconcile/aws_account_manager/reconciler.py +3 -3
- reconcile/aws_ami_cleanup/integration.py +8 -12
- reconcile/aws_ami_share.py +69 -62
- reconcile/aws_cloudwatch_log_retention/integration.py +155 -126
- reconcile/aws_ecr_image_pull_secrets.py +4 -4
- reconcile/aws_iam_keys.py +1 -0
- reconcile/aws_saml_idp/integration.py +12 -4
- reconcile/aws_saml_roles/integration.py +32 -25
- reconcile/aws_version_sync/integration.py +125 -84
- reconcile/change_owners/bundle.py +3 -3
- reconcile/change_owners/change_log_tracking.py +3 -2
- reconcile/change_owners/change_owners.py +1 -1
- reconcile/change_owners/diff.py +2 -4
- reconcile/checkpoint.py +12 -4
- reconcile/cli.py +111 -18
- reconcile/cluster_deployment_mapper.py +2 -3
- reconcile/dashdotdb_dora.py +5 -12
- reconcile/dashdotdb_slo.py +1 -1
- reconcile/database_access_manager.py +125 -121
- reconcile/deadmanssnitch.py +1 -5
- reconcile/dynatrace_token_provider/integration.py +1 -1
- reconcile/endpoints_discovery/integration.py +4 -1
- reconcile/endpoints_discovery/merge_request.py +1 -1
- reconcile/endpoints_discovery/merge_request_manager.py +9 -11
- reconcile/external_resources/factories.py +5 -12
- reconcile/external_resources/integration.py +1 -1
- reconcile/external_resources/manager.py +8 -5
- reconcile/external_resources/meta.py +0 -1
- reconcile/external_resources/metrics.py +1 -1
- reconcile/external_resources/model.py +20 -20
- reconcile/external_resources/reconciler.py +7 -4
- reconcile/external_resources/secrets_sync.py +8 -11
- reconcile/external_resources/state.py +26 -16
- reconcile/fleet_labeler/integration.py +1 -1
- reconcile/gabi_authorized_users.py +8 -5
- reconcile/gcp_image_mirror.py +2 -2
- reconcile/github_org.py +1 -1
- reconcile/github_owners.py +4 -0
- reconcile/gitlab_housekeeping.py +13 -15
- reconcile/gitlab_members.py +6 -12
- reconcile/gitlab_mr_sqs_consumer.py +2 -2
- reconcile/gitlab_owners.py +15 -11
- reconcile/gitlab_permissions.py +8 -12
- reconcile/glitchtip_project_alerts/integration.py +3 -1
- reconcile/gql_definitions/acs/acs_instances.py +10 -10
- reconcile/gql_definitions/acs/acs_policies.py +5 -5
- reconcile/gql_definitions/acs/acs_rbac.py +6 -6
- reconcile/gql_definitions/advanced_upgrade_service/aus_clusters.py +32 -32
- reconcile/gql_definitions/advanced_upgrade_service/aus_organization.py +26 -26
- reconcile/gql_definitions/app_interface_metrics_exporter/onboarding_status.py +6 -7
- reconcile/gql_definitions/app_sre_tekton_access_revalidation/roles.py +5 -5
- reconcile/gql_definitions/app_sre_tekton_access_revalidation/users.py +5 -5
- reconcile/gql_definitions/automated_actions/instance.py +51 -12
- reconcile/gql_definitions/aws_account_manager/aws_accounts.py +11 -11
- reconcile/gql_definitions/aws_ami_cleanup/aws_accounts.py +20 -10
- reconcile/gql_definitions/aws_cloudwatch_log_retention/aws_accounts.py +28 -68
- reconcile/gql_definitions/aws_saml_idp/aws_accounts.py +20 -10
- reconcile/gql_definitions/aws_saml_roles/aws_accounts.py +20 -10
- reconcile/gql_definitions/aws_saml_roles/roles.py +5 -5
- reconcile/gql_definitions/aws_version_sync/clusters.py +10 -10
- reconcile/gql_definitions/aws_version_sync/namespaces.py +5 -5
- reconcile/gql_definitions/change_owners/queries/change_types.py +5 -5
- reconcile/gql_definitions/change_owners/queries/self_service_roles.py +9 -9
- reconcile/gql_definitions/cluster_auth_rhidp/clusters.py +18 -18
- reconcile/gql_definitions/common/alerting_services_settings.py +9 -9
- reconcile/gql_definitions/common/app_code_component_repos.py +5 -5
- reconcile/gql_definitions/common/app_interface_custom_messages.py +5 -5
- reconcile/gql_definitions/common/app_interface_dms_settings.py +5 -5
- reconcile/gql_definitions/common/app_interface_repo_settings.py +5 -5
- reconcile/gql_definitions/common/app_interface_roles.py +120 -0
- reconcile/gql_definitions/common/app_interface_state_settings.py +10 -10
- reconcile/gql_definitions/common/app_interface_vault_settings.py +5 -5
- reconcile/gql_definitions/common/app_quay_repos_escalation_policies.py +5 -5
- reconcile/gql_definitions/common/apps.py +5 -5
- reconcile/gql_definitions/common/aws_vpc_requests.py +23 -10
- reconcile/gql_definitions/common/aws_vpcs.py +11 -11
- reconcile/gql_definitions/common/clusters.py +37 -35
- reconcile/gql_definitions/common/clusters_minimal.py +14 -14
- reconcile/gql_definitions/common/clusters_with_dms.py +6 -6
- reconcile/gql_definitions/common/clusters_with_peering.py +29 -30
- reconcile/gql_definitions/common/github_orgs.py +10 -10
- reconcile/gql_definitions/common/jira_settings.py +10 -10
- reconcile/gql_definitions/common/jiralert_settings.py +5 -5
- reconcile/gql_definitions/common/ldap_settings.py +5 -5
- reconcile/gql_definitions/common/namespaces.py +42 -44
- reconcile/gql_definitions/common/namespaces_minimal.py +15 -13
- reconcile/gql_definitions/common/ocm_env_telemeter.py +12 -12
- reconcile/gql_definitions/common/ocm_environments.py +19 -19
- reconcile/gql_definitions/common/pagerduty_instances.py +9 -9
- reconcile/gql_definitions/common/pgp_reencryption_settings.py +6 -6
- reconcile/gql_definitions/common/pipeline_providers.py +29 -29
- reconcile/gql_definitions/common/quay_instances.py +5 -5
- reconcile/gql_definitions/common/quay_orgs.py +5 -5
- reconcile/gql_definitions/common/reserved_networks.py +5 -5
- reconcile/gql_definitions/common/rhcs_provider_settings.py +5 -5
- reconcile/gql_definitions/common/saas_files.py +44 -44
- reconcile/gql_definitions/common/saas_target_namespaces.py +10 -10
- reconcile/gql_definitions/common/saasherder_settings.py +5 -5
- reconcile/gql_definitions/common/slack_workspaces.py +5 -5
- reconcile/gql_definitions/common/smtp_client_settings.py +19 -19
- reconcile/gql_definitions/common/state_aws_account.py +7 -8
- reconcile/gql_definitions/common/users.py +5 -5
- reconcile/gql_definitions/common/users_with_paths.py +5 -5
- reconcile/gql_definitions/cost_report/app_names.py +5 -5
- reconcile/gql_definitions/cost_report/cost_namespaces.py +5 -5
- reconcile/gql_definitions/cost_report/settings.py +9 -9
- reconcile/gql_definitions/dashdotdb_slo/slo_documents_query.py +43 -43
- reconcile/gql_definitions/dynatrace_token_provider/dynatrace_bootstrap_tokens.py +10 -10
- reconcile/gql_definitions/dynatrace_token_provider/token_specs.py +5 -5
- reconcile/gql_definitions/email_sender/apps.py +5 -5
- reconcile/gql_definitions/email_sender/emails.py +8 -8
- reconcile/gql_definitions/email_sender/users.py +6 -6
- reconcile/gql_definitions/endpoints_discovery/apps.py +10 -10
- reconcile/gql_definitions/external_resources/aws_accounts.py +9 -9
- reconcile/gql_definitions/external_resources/external_resources_modules.py +23 -23
- reconcile/gql_definitions/external_resources/external_resources_namespaces.py +492 -410
- reconcile/gql_definitions/external_resources/external_resources_settings.py +28 -26
- reconcile/gql_definitions/external_resources/fragments/external_resources_module_overrides.py +5 -5
- reconcile/gql_definitions/fleet_labeler/fleet_labels.py +40 -40
- reconcile/gql_definitions/fragments/aus_organization.py +5 -5
- reconcile/gql_definitions/fragments/aws_account_common.py +7 -5
- reconcile/gql_definitions/fragments/aws_account_managed.py +5 -5
- reconcile/gql_definitions/fragments/aws_account_sso.py +5 -5
- reconcile/gql_definitions/fragments/aws_infra_management_account.py +5 -5
- reconcile/gql_definitions/fragments/{aws_vpc_request_subnet.py → aws_organization.py} +12 -8
- reconcile/gql_definitions/fragments/aws_vpc.py +5 -5
- reconcile/gql_definitions/fragments/aws_vpc_request.py +10 -5
- reconcile/gql_definitions/fragments/container_image_mirror.py +5 -5
- reconcile/gql_definitions/fragments/deploy_resources.py +5 -5
- reconcile/gql_definitions/fragments/disable.py +5 -5
- reconcile/gql_definitions/fragments/email_service.py +5 -5
- reconcile/gql_definitions/fragments/email_user.py +5 -5
- reconcile/gql_definitions/fragments/jumphost_common_fields.py +5 -5
- reconcile/gql_definitions/fragments/membership_source.py +5 -5
- reconcile/gql_definitions/fragments/minimal_ocm_organization.py +5 -5
- reconcile/gql_definitions/fragments/oc_connection_cluster.py +5 -5
- reconcile/gql_definitions/fragments/ocm_environment.py +5 -5
- reconcile/gql_definitions/fragments/pipeline_provider_retention.py +5 -5
- reconcile/gql_definitions/fragments/prometheus_instance.py +5 -5
- reconcile/gql_definitions/fragments/resource_limits_requirements.py +5 -5
- reconcile/gql_definitions/fragments/resource_requests_requirements.py +5 -5
- reconcile/gql_definitions/fragments/resource_values.py +5 -5
- reconcile/gql_definitions/fragments/saas_slo_document.py +5 -5
- reconcile/gql_definitions/fragments/saas_target_namespace.py +5 -5
- reconcile/gql_definitions/fragments/serviceaccount_token.py +5 -5
- reconcile/gql_definitions/fragments/terraform_state.py +5 -5
- reconcile/gql_definitions/fragments/upgrade_policy.py +5 -5
- reconcile/gql_definitions/fragments/user.py +5 -5
- reconcile/gql_definitions/fragments/vault_secret.py +5 -5
- reconcile/gql_definitions/gcp/gcp_docker_repos.py +9 -9
- reconcile/gql_definitions/gcp/gcp_projects.py +9 -9
- reconcile/gql_definitions/gitlab_members/gitlab_instances.py +9 -9
- reconcile/gql_definitions/gitlab_members/permissions.py +9 -9
- reconcile/gql_definitions/glitchtip/glitchtip_instance.py +9 -9
- reconcile/gql_definitions/glitchtip/glitchtip_project.py +11 -11
- reconcile/gql_definitions/glitchtip_project_alerts/glitchtip_project.py +9 -9
- reconcile/gql_definitions/integrations/integrations.py +48 -51
- reconcile/gql_definitions/introspection.json +3050 -1393
- reconcile/gql_definitions/jenkins_configs/jenkins_configs.py +11 -11
- reconcile/gql_definitions/jenkins_configs/jenkins_instances.py +10 -10
- reconcile/gql_definitions/jira/jira_servers.py +5 -5
- reconcile/gql_definitions/jira_permissions_validator/jira_boards_for_permissions_validator.py +14 -10
- reconcile/gql_definitions/jumphosts/jumphosts.py +13 -13
- reconcile/gql_definitions/ldap_groups/roles.py +5 -5
- reconcile/gql_definitions/ldap_groups/settings.py +9 -9
- reconcile/gql_definitions/maintenance/maintenances.py +5 -5
- reconcile/gql_definitions/membershipsources/roles.py +5 -5
- reconcile/gql_definitions/ocm_labels/clusters.py +18 -19
- reconcile/gql_definitions/ocm_labels/organizations.py +5 -5
- reconcile/gql_definitions/openshift_cluster_bots/clusters.py +22 -22
- reconcile/gql_definitions/openshift_groups/managed_groups.py +5 -5
- reconcile/gql_definitions/openshift_groups/managed_roles.py +6 -6
- reconcile/gql_definitions/openshift_serviceaccount_tokens/tokens.py +10 -10
- reconcile/gql_definitions/quay_membership/quay_membership.py +6 -6
- reconcile/gql_definitions/rhcs/certs.py +33 -87
- reconcile/gql_definitions/rhcs/openshift_resource_rhcs_cert.py +43 -0
- reconcile/gql_definitions/rhidp/organizations.py +18 -18
- reconcile/gql_definitions/service_dependencies/jenkins_instance_fragment.py +5 -5
- reconcile/gql_definitions/service_dependencies/service_dependencies.py +8 -8
- reconcile/gql_definitions/sharding/aws_accounts.py +10 -10
- reconcile/gql_definitions/sharding/ocm_organization.py +8 -8
- reconcile/gql_definitions/skupper_network/site_controller_template.py +5 -5
- reconcile/gql_definitions/skupper_network/skupper_networks.py +10 -10
- reconcile/gql_definitions/slack_usergroups/clusters.py +5 -5
- reconcile/gql_definitions/slack_usergroups/permissions.py +9 -9
- reconcile/gql_definitions/slack_usergroups/users.py +5 -5
- reconcile/gql_definitions/slo_documents/slo_documents.py +5 -5
- reconcile/gql_definitions/status_board/status_board.py +6 -7
- reconcile/gql_definitions/statuspage/statuspages.py +9 -9
- reconcile/gql_definitions/templating/template_collection.py +5 -5
- reconcile/gql_definitions/templating/templates.py +5 -5
- reconcile/gql_definitions/terraform_cloudflare_dns/app_interface_cloudflare_dns_settings.py +6 -6
- reconcile/gql_definitions/terraform_cloudflare_dns/terraform_cloudflare_zones.py +11 -11
- reconcile/gql_definitions/terraform_cloudflare_resources/terraform_cloudflare_accounts.py +11 -11
- reconcile/gql_definitions/terraform_cloudflare_resources/terraform_cloudflare_resources.py +20 -25
- reconcile/gql_definitions/terraform_cloudflare_users/app_interface_setting_cloudflare_and_vault.py +6 -6
- reconcile/gql_definitions/terraform_cloudflare_users/terraform_cloudflare_roles.py +12 -12
- reconcile/gql_definitions/terraform_init/aws_accounts.py +23 -9
- reconcile/gql_definitions/terraform_repo/terraform_repo.py +9 -9
- reconcile/gql_definitions/terraform_resources/database_access_manager.py +5 -5
- reconcile/gql_definitions/terraform_resources/terraform_resources_namespaces.py +448 -402
- reconcile/gql_definitions/terraform_tgw_attachments/aws_accounts.py +23 -17
- reconcile/gql_definitions/unleash_feature_toggles/feature_toggles.py +9 -9
- reconcile/gql_definitions/vault_instances/vault_instances.py +61 -61
- reconcile/gql_definitions/vault_policies/vault_policies.py +11 -11
- reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator.py +8 -8
- reconcile/gql_definitions/vpc_peerings_validator/vpc_peerings_validator_peered_cluster_fragment.py +5 -5
- reconcile/integrations_manager.py +3 -3
- reconcile/jenkins_job_builder.py +1 -1
- reconcile/jenkins_worker_fleets.py +80 -11
- reconcile/jira_permissions_validator.py +237 -122
- reconcile/ldap_groups/integration.py +1 -1
- reconcile/ocm/types.py +35 -56
- reconcile/ocm_aws_infrastructure_access.py +1 -1
- reconcile/ocm_clusters.py +4 -4
- reconcile/ocm_labels/integration.py +3 -2
- reconcile/ocm_machine_pools.py +33 -27
- reconcile/openshift_base.py +122 -10
- reconcile/openshift_cluster_bots.py +5 -5
- reconcile/openshift_groups.py +5 -0
- reconcile/openshift_limitranges.py +1 -1
- reconcile/openshift_namespace_labels.py +1 -1
- reconcile/openshift_namespaces.py +97 -101
- reconcile/openshift_resources_base.py +10 -5
- reconcile/openshift_rhcs_certs.py +77 -40
- reconcile/openshift_rolebindings.py +230 -130
- reconcile/openshift_saas_deploy.py +6 -7
- reconcile/openshift_saas_deploy_change_tester.py +9 -7
- reconcile/openshift_saas_deploy_trigger_cleaner.py +3 -5
- reconcile/openshift_serviceaccount_tokens.py +8 -7
- reconcile/openshift_tekton_resources.py +1 -1
- reconcile/openshift_upgrade_watcher.py +4 -4
- reconcile/openshift_users.py +5 -3
- reconcile/oum/labelset.py +5 -3
- reconcile/oum/models.py +1 -4
- reconcile/oum/providers.py +1 -1
- reconcile/prometheus_rules_tester/integration.py +4 -4
- reconcile/quay_mirror.py +1 -1
- reconcile/queries.py +131 -0
- reconcile/requests_sender.py +8 -3
- reconcile/resource_scraper.py +1 -5
- reconcile/rhidp/common.py +5 -5
- reconcile/rhidp/sso_client/base.py +19 -10
- reconcile/saas_auto_promotions_manager/merge_request_manager/renderer.py +1 -1
- reconcile/saas_auto_promotions_manager/subscriber.py +4 -3
- reconcile/sendgrid_teammates.py +20 -9
- reconcile/skupper_network/integration.py +2 -2
- reconcile/slack_usergroups.py +35 -14
- reconcile/sql_query.py +1 -0
- reconcile/status.py +2 -2
- reconcile/status_board.py +6 -6
- reconcile/statuspage/atlassian.py +7 -7
- reconcile/statuspage/integrations/maintenances.py +4 -3
- reconcile/statuspage/page.py +4 -9
- reconcile/statuspage/status.py +5 -8
- reconcile/templates/rosa-classic-cluster-creation.sh.j2 +4 -0
- reconcile/templates/rosa-hcp-cluster-creation.sh.j2 +3 -0
- reconcile/templating/lib/merge_request_manager.py +2 -2
- reconcile/templating/lib/rendering.py +3 -3
- reconcile/templating/renderer.py +12 -13
- reconcile/terraform_aws_route53.py +18 -8
- reconcile/terraform_cloudflare_dns.py +3 -3
- reconcile/terraform_cloudflare_resources.py +12 -13
- reconcile/terraform_cloudflare_users.py +3 -2
- reconcile/terraform_init/integration.py +187 -23
- reconcile/terraform_repo.py +16 -12
- reconcile/terraform_resources.py +18 -10
- reconcile/terraform_tgw_attachments.py +27 -19
- reconcile/terraform_users.py +29 -21
- reconcile/terraform_vpc_peerings.py +16 -4
- reconcile/terraform_vpc_resources/integration.py +32 -2
- reconcile/typed_queries/app_interface_roles.py +10 -0
- reconcile/typed_queries/aws_account_tags.py +41 -0
- reconcile/typed_queries/cost_report/app_names.py +1 -1
- reconcile/typed_queries/cost_report/cost_namespaces.py +2 -2
- reconcile/typed_queries/saas_files.py +13 -13
- reconcile/typed_queries/status_board.py +2 -2
- reconcile/unleash_feature_toggles/integration.py +4 -2
- reconcile/utils/acs/base.py +6 -3
- reconcile/utils/acs/policies.py +2 -2
- reconcile/utils/aggregated_list.py +4 -3
- reconcile/utils/aws_api.py +51 -20
- reconcile/utils/aws_api_typed/api.py +38 -9
- reconcile/utils/aws_api_typed/cloudformation.py +149 -0
- reconcile/utils/aws_api_typed/logs.py +73 -0
- reconcile/utils/aws_api_typed/organization.py +4 -2
- reconcile/utils/binary.py +7 -12
- reconcile/utils/datetime_util.py +67 -0
- reconcile/utils/deadmanssnitch_api.py +1 -1
- reconcile/utils/differ.py +2 -3
- reconcile/utils/early_exit_cache.py +11 -12
- reconcile/utils/expiration.py +7 -3
- reconcile/utils/external_resource_spec.py +24 -1
- reconcile/utils/filtering.py +1 -1
- reconcile/utils/gitlab_api.py +7 -5
- reconcile/utils/glitchtip/client.py +6 -2
- reconcile/utils/glitchtip/models.py +25 -28
- reconcile/utils/gpg.py +5 -3
- reconcile/utils/gql.py +4 -7
- reconcile/utils/helm.py +2 -1
- reconcile/utils/helpers.py +1 -1
- reconcile/utils/imap_client.py +1 -1
- reconcile/utils/instrumented_wrappers.py +1 -1
- reconcile/utils/internal_groups/client.py +2 -2
- reconcile/utils/internal_groups/models.py +8 -17
- reconcile/utils/jenkins_api.py +24 -1
- reconcile/utils/jinja2/utils.py +6 -8
- reconcile/utils/jira_client.py +82 -63
- reconcile/utils/jjb_client.py +59 -43
- reconcile/utils/jobcontroller/controller.py +2 -2
- reconcile/utils/jobcontroller/models.py +17 -1
- reconcile/utils/json.py +74 -0
- reconcile/utils/ldap_client.py +4 -3
- reconcile/utils/lean_terraform_client.py +3 -1
- reconcile/utils/membershipsources/app_interface_resolver.py +4 -2
- reconcile/utils/membershipsources/models.py +16 -23
- reconcile/utils/membershipsources/resolver.py +4 -2
- reconcile/utils/merge_request_manager/merge_request_manager.py +4 -4
- reconcile/utils/merge_request_manager/parser.py +6 -6
- reconcile/utils/metrics.py +5 -5
- reconcile/utils/models.py +304 -82
- reconcile/utils/mr/__init__.py +3 -1
- reconcile/utils/mr/app_interface_reporter.py +6 -3
- reconcile/utils/mr/aws_access.py +1 -1
- reconcile/utils/mr/base.py +7 -13
- reconcile/utils/mr/clusters_updates.py +4 -2
- reconcile/utils/mr/notificator.py +3 -3
- reconcile/utils/mr/ocm_upgrade_scheduler_org_updates.py +4 -1
- reconcile/utils/mr/promote_qontract.py +28 -12
- reconcile/utils/mr/update_access_report_base.py +3 -4
- reconcile/utils/mr/user_maintenance.py +7 -6
- reconcile/utils/oc.py +445 -336
- reconcile/utils/oc_filters.py +3 -3
- reconcile/utils/ocm/addons.py +0 -1
- reconcile/utils/ocm/base.py +27 -20
- reconcile/utils/ocm/cluster_groups.py +1 -1
- reconcile/utils/ocm/identity_providers.py +2 -2
- reconcile/utils/ocm/labels.py +1 -1
- reconcile/utils/ocm/ocm.py +81 -71
- reconcile/utils/ocm/products.py +9 -3
- reconcile/utils/ocm/search_filters.py +3 -6
- reconcile/utils/ocm/service_log.py +4 -6
- reconcile/utils/ocm/sre_capability_labels.py +20 -13
- reconcile/utils/ocm_base_client.py +4 -4
- reconcile/utils/openshift_resource.py +83 -52
- reconcile/utils/openssl.py +2 -2
- reconcile/utils/output.py +3 -2
- reconcile/utils/pagerduty_api.py +10 -7
- reconcile/utils/promotion_state.py +6 -11
- reconcile/utils/raw_github_api.py +11 -8
- reconcile/utils/repo_owners.py +21 -29
- reconcile/utils/rhcsv2_certs.py +138 -35
- reconcile/utils/rosa/session.py +16 -0
- reconcile/utils/runtime/integration.py +2 -3
- reconcile/utils/runtime/meta.py +2 -1
- reconcile/utils/runtime/runner.py +2 -2
- reconcile/utils/saasherder/interfaces.py +13 -20
- reconcile/utils/saasherder/models.py +25 -21
- reconcile/utils/saasherder/saasherder.py +60 -32
- reconcile/utils/secret_reader.py +6 -6
- reconcile/utils/sharding.py +1 -1
- reconcile/utils/slack_api.py +26 -4
- reconcile/utils/sloth.py +224 -0
- reconcile/utils/sqs_gateway.py +16 -11
- reconcile/utils/state.py +2 -1
- reconcile/utils/structs.py +4 -4
- reconcile/utils/terraform_client.py +32 -29
- reconcile/utils/terrascript_aws_client.py +658 -480
- reconcile/utils/three_way_diff_strategy.py +1 -1
- reconcile/utils/throughput.py +1 -1
- reconcile/utils/unleash/server.py +2 -8
- reconcile/utils/vault.py +44 -41
- reconcile/utils/vcs.py +8 -8
- reconcile/vault_replication.py +119 -58
- reconcile/vpc_peerings_validator.py +2 -2
- tools/app_interface_reporter.py +4 -4
- tools/cli_commands/cost_report/cost_management_api.py +3 -3
- tools/cli_commands/cost_report/view.py +7 -6
- tools/cli_commands/erv2.py +1 -1
- tools/cli_commands/gpg_encrypt.py +4 -1
- tools/cli_commands/systems_and_tools.py +5 -1
- tools/qontract_cli.py +36 -21
- tools/sre_checkpoints/util.py +5 -3
- tools/template_validation.py +3 -1
- reconcile/gql_definitions/ocm_oidc_idp/__init__.py +0 -0
- reconcile/gql_definitions/ocm_subscription_labels/__init__.py +0 -0
- reconcile/jenkins/__init__.py +0 -0
- reconcile/jenkins/types.py +0 -77
- {qontract_reconcile-0.10.2.dev299.dist-info → qontract_reconcile-0.10.2.dev430.dist-info}/WHEEL +0 -0
- {qontract_reconcile-0.10.2.dev299.dist-info → qontract_reconcile-0.10.2.dev430.dist-info}/entry_points.txt +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -29,7 +29,7 @@ fragment CommonJumphostFields on ClusterJumpHost_v1 {
|
|
|
29
29
|
port
|
|
30
30
|
remotePort
|
|
31
31
|
identity {
|
|
32
|
-
...
|
|
32
|
+
...VaultSecret
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
@@ -65,10 +65,10 @@ fragment ServiceAccountToken on ServiceAccountTokenSpec_v1 {
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
fragment VaultSecret on VaultSecret_v1 {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
68
|
+
path
|
|
69
|
+
field
|
|
70
|
+
version
|
|
71
|
+
format
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
query ServiceAccountTokens {
|
|
@@ -92,9 +92,9 @@ query ServiceAccountTokens {
|
|
|
92
92
|
|
|
93
93
|
|
|
94
94
|
class ConfiguredBaseModel(BaseModel):
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
model_config = ConfigDict(
|
|
96
|
+
extra='forbid'
|
|
97
|
+
)
|
|
98
98
|
|
|
99
99
|
|
|
100
100
|
class SharedResourcesV1(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -22,7 +22,7 @@ DEFINITION = """
|
|
|
22
22
|
query QuayMembership {
|
|
23
23
|
permissions: permissions_v1 {
|
|
24
24
|
service
|
|
25
|
-
...on PermissionQuayOrgTeam_v1 {
|
|
25
|
+
... on PermissionQuayOrgTeam_v1 {
|
|
26
26
|
quayOrg {
|
|
27
27
|
name
|
|
28
28
|
instance {
|
|
@@ -49,9 +49,9 @@ query QuayMembership {
|
|
|
49
49
|
|
|
50
50
|
|
|
51
51
|
class ConfiguredBaseModel(BaseModel):
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
model_config = ConfigDict(
|
|
53
|
+
extra='forbid'
|
|
54
|
+
)
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
class PermissionV1(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,12 +12,13 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
19
19
|
|
|
20
20
|
from reconcile.gql_definitions.fragments.jumphost_common_fields import CommonJumphostFields
|
|
21
|
+
from reconcile.gql_definitions.rhcs.openshift_resource_rhcs_cert import OpenshiftResourceRhcsCert
|
|
21
22
|
from reconcile.gql_definitions.fragments.vault_secret import VaultSecret
|
|
22
23
|
|
|
23
24
|
|
|
@@ -29,15 +30,30 @@ fragment CommonJumphostFields on ClusterJumpHost_v1 {
|
|
|
29
30
|
port
|
|
30
31
|
remotePort
|
|
31
32
|
identity {
|
|
32
|
-
...
|
|
33
|
+
...VaultSecret
|
|
33
34
|
}
|
|
34
35
|
}
|
|
35
36
|
|
|
37
|
+
fragment OpenshiftResourceRhcsCert on NamespaceOpenshiftResourceRhcsCert_v1 {
|
|
38
|
+
secret_name
|
|
39
|
+
service_account_name
|
|
40
|
+
service_account_password {
|
|
41
|
+
... on VaultSecret_v1 {
|
|
42
|
+
path
|
|
43
|
+
field
|
|
44
|
+
version
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
auto_renew_threshold_days
|
|
48
|
+
certificate_format
|
|
49
|
+
annotations
|
|
50
|
+
}
|
|
51
|
+
|
|
36
52
|
fragment VaultSecret on VaultSecret_v1 {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
53
|
+
path
|
|
54
|
+
field
|
|
55
|
+
version
|
|
56
|
+
format
|
|
41
57
|
}
|
|
42
58
|
|
|
43
59
|
query RhcsCerts {
|
|
@@ -46,37 +62,11 @@ query RhcsCerts {
|
|
|
46
62
|
delete
|
|
47
63
|
clusterAdmin
|
|
48
64
|
openshiftResources {
|
|
49
|
-
|
|
50
|
-
... on NamespaceOpenshiftResourceRhcsCert_v1 {
|
|
51
|
-
secret_name
|
|
52
|
-
service_account_name
|
|
53
|
-
service_account_password {
|
|
54
|
-
... on VaultSecret_v1 {
|
|
55
|
-
path
|
|
56
|
-
field
|
|
57
|
-
version
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
auto_renew_threshold_days
|
|
61
|
-
annotations
|
|
62
|
-
}
|
|
65
|
+
...OpenshiftResourceRhcsCert
|
|
63
66
|
}
|
|
64
67
|
sharedResources {
|
|
65
68
|
openshiftResources {
|
|
66
|
-
|
|
67
|
-
... on NamespaceOpenshiftResourceRhcsCert_v1 {
|
|
68
|
-
secret_name
|
|
69
|
-
service_account_name
|
|
70
|
-
service_account_password {
|
|
71
|
-
... on VaultSecret_v1 {
|
|
72
|
-
path
|
|
73
|
-
field
|
|
74
|
-
version
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
auto_renew_threshold_days
|
|
78
|
-
annotations
|
|
79
|
-
}
|
|
69
|
+
...OpenshiftResourceRhcsCert
|
|
80
70
|
}
|
|
81
71
|
}
|
|
82
72
|
cluster {
|
|
@@ -84,13 +74,13 @@ query RhcsCerts {
|
|
|
84
74
|
serverUrl
|
|
85
75
|
insecureSkipTLSVerify
|
|
86
76
|
jumpHost {
|
|
87
|
-
...
|
|
77
|
+
...CommonJumphostFields
|
|
88
78
|
}
|
|
89
79
|
automationToken {
|
|
90
|
-
...
|
|
80
|
+
...VaultSecret
|
|
91
81
|
}
|
|
92
82
|
clusterAdminAutomationToken {
|
|
93
|
-
...
|
|
83
|
+
...VaultSecret
|
|
94
84
|
}
|
|
95
85
|
internal
|
|
96
86
|
disable {
|
|
@@ -103,57 +93,13 @@ query RhcsCerts {
|
|
|
103
93
|
|
|
104
94
|
|
|
105
95
|
class ConfiguredBaseModel(BaseModel):
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
class NamespaceOpenshiftResourceV1(ConfiguredBaseModel):
|
|
112
|
-
provider: str = Field(..., alias="provider")
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
class VaultSecretV1(ConfiguredBaseModel):
|
|
116
|
-
...
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
class VaultSecretV1_VaultSecretV1(VaultSecretV1):
|
|
120
|
-
path: str = Field(..., alias="path")
|
|
121
|
-
field: str = Field(..., alias="field")
|
|
122
|
-
version: Optional[int] = Field(..., alias="version")
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
class NamespaceOpenshiftResourceRhcsCertV1(NamespaceOpenshiftResourceV1):
|
|
126
|
-
secret_name: str = Field(..., alias="secret_name")
|
|
127
|
-
service_account_name: str = Field(..., alias="service_account_name")
|
|
128
|
-
service_account_password: Union[VaultSecretV1_VaultSecretV1, VaultSecretV1] = Field(..., alias="service_account_password")
|
|
129
|
-
auto_renew_threshold_days: Optional[int] = Field(..., alias="auto_renew_threshold_days")
|
|
130
|
-
annotations: Optional[Json] = Field(..., alias="annotations")
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
class SharedResourcesV1_NamespaceOpenshiftResourceV1(ConfiguredBaseModel):
|
|
134
|
-
provider: str = Field(..., alias="provider")
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
class SharedResourcesV1_NamespaceOpenshiftResourceV1_NamespaceOpenshiftResourceRhcsCertV1_VaultSecretV1(ConfiguredBaseModel):
|
|
138
|
-
...
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
class SharedResourcesV1_NamespaceOpenshiftResourceV1_NamespaceOpenshiftResourceRhcsCertV1_VaultSecretV1_VaultSecretV1(SharedResourcesV1_NamespaceOpenshiftResourceV1_NamespaceOpenshiftResourceRhcsCertV1_VaultSecretV1):
|
|
142
|
-
path: str = Field(..., alias="path")
|
|
143
|
-
field: str = Field(..., alias="field")
|
|
144
|
-
version: Optional[int] = Field(..., alias="version")
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
class SharedResourcesV1_NamespaceOpenshiftResourceV1_NamespaceOpenshiftResourceRhcsCertV1(SharedResourcesV1_NamespaceOpenshiftResourceV1):
|
|
148
|
-
secret_name: str = Field(..., alias="secret_name")
|
|
149
|
-
service_account_name: str = Field(..., alias="service_account_name")
|
|
150
|
-
service_account_password: Union[SharedResourcesV1_NamespaceOpenshiftResourceV1_NamespaceOpenshiftResourceRhcsCertV1_VaultSecretV1_VaultSecretV1, SharedResourcesV1_NamespaceOpenshiftResourceV1_NamespaceOpenshiftResourceRhcsCertV1_VaultSecretV1] = Field(..., alias="service_account_password")
|
|
151
|
-
auto_renew_threshold_days: Optional[int] = Field(..., alias="auto_renew_threshold_days")
|
|
152
|
-
annotations: Optional[Json] = Field(..., alias="annotations")
|
|
96
|
+
model_config = ConfigDict(
|
|
97
|
+
extra='forbid'
|
|
98
|
+
)
|
|
153
99
|
|
|
154
100
|
|
|
155
101
|
class SharedResourcesV1(ConfiguredBaseModel):
|
|
156
|
-
openshift_resources: list[
|
|
102
|
+
openshift_resources: list[OpenshiftResourceRhcsCert] = Field(..., alias="openshiftResources")
|
|
157
103
|
|
|
158
104
|
|
|
159
105
|
class DisableClusterAutomationsV1(ConfiguredBaseModel):
|
|
@@ -175,7 +121,7 @@ class NamespaceV1(ConfiguredBaseModel):
|
|
|
175
121
|
name: str = Field(..., alias="name")
|
|
176
122
|
delete: Optional[bool] = Field(..., alias="delete")
|
|
177
123
|
cluster_admin: Optional[bool] = Field(..., alias="clusterAdmin")
|
|
178
|
-
openshift_resources: Optional[list[
|
|
124
|
+
openshift_resources: Optional[list[OpenshiftResourceRhcsCert]] = Field(..., alias="openshiftResources")
|
|
179
125
|
shared_resources: Optional[list[SharedResourcesV1]] = Field(..., alias="sharedResources")
|
|
180
126
|
cluster: ClusterV1 = Field(..., alias="cluster")
|
|
181
127
|
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. 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
|
+
ConfigDict,
|
|
16
|
+
Field,
|
|
17
|
+
Json,
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ConfiguredBaseModel(BaseModel):
|
|
22
|
+
model_config = ConfigDict(
|
|
23
|
+
extra='forbid'
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class VaultSecretV1(ConfiguredBaseModel):
|
|
28
|
+
...
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class VaultSecretV1_VaultSecretV1(VaultSecretV1):
|
|
32
|
+
path: str = Field(..., alias="path")
|
|
33
|
+
field: str = Field(..., alias="field")
|
|
34
|
+
version: Optional[int] = Field(..., alias="version")
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class OpenshiftResourceRhcsCert(ConfiguredBaseModel):
|
|
38
|
+
secret_name: str = Field(..., alias="secret_name")
|
|
39
|
+
service_account_name: str = Field(..., alias="service_account_name")
|
|
40
|
+
service_account_password: Union[VaultSecretV1_VaultSecretV1, VaultSecretV1] = Field(..., alias="service_account_password")
|
|
41
|
+
auto_renew_threshold_days: Optional[int] = Field(..., alias="auto_renew_threshold_days")
|
|
42
|
+
certificate_format: Optional[str] = Field(..., alias="certificate_format")
|
|
43
|
+
annotations: Optional[Json] = Field(..., alias="annotations")
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -27,22 +27,22 @@ fragment DisableAutomations on DisableClusterAutomations_v1 {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
fragment OCMEnvironment on OpenShiftClusterManagerEnvironment_v1 {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
30
|
+
name
|
|
31
|
+
description
|
|
32
|
+
labels
|
|
33
|
+
url
|
|
34
|
+
accessTokenClientId
|
|
35
|
+
accessTokenUrl
|
|
36
|
+
accessTokenClientSecret {
|
|
37
|
+
...VaultSecret
|
|
38
|
+
}
|
|
39
39
|
}
|
|
40
40
|
|
|
41
41
|
fragment VaultSecret on VaultSecret_v1 {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
path
|
|
43
|
+
field
|
|
44
|
+
version
|
|
45
|
+
format
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
query RhIdpOrganizations($name: String) {
|
|
@@ -61,9 +61,9 @@ query RhIdpOrganizations($name: String) {
|
|
|
61
61
|
|
|
62
62
|
|
|
63
63
|
class ConfiguredBaseModel(BaseModel):
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
model_config = ConfigDict(
|
|
65
|
+
extra='forbid'
|
|
66
|
+
)
|
|
67
67
|
|
|
68
68
|
|
|
69
69
|
class OpenShiftClusterManagerV1(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,16 +12,16 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
class ConfiguredBaseModel(BaseModel):
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
model_config = ConfigDict(
|
|
23
|
+
extra='forbid'
|
|
24
|
+
)
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
class ServiceDependenciesJenkinsInstance(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -22,7 +22,7 @@ from reconcile.gql_definitions.service_dependencies.jenkins_instance_fragment im
|
|
|
22
22
|
|
|
23
23
|
DEFINITION = """
|
|
24
24
|
fragment ServiceDependenciesJenkinsInstance on JenkinsInstance_v1 {
|
|
25
|
-
|
|
25
|
+
name
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
query ServiceDependencies {
|
|
@@ -36,7 +36,7 @@ query ServiceDependencies {
|
|
|
36
36
|
}
|
|
37
37
|
jenkinsConfigs {
|
|
38
38
|
instance {
|
|
39
|
-
...
|
|
39
|
+
...ServiceDependenciesJenkinsInstance
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
saasFiles {
|
|
@@ -47,7 +47,7 @@ query ServiceDependencies {
|
|
|
47
47
|
targets {
|
|
48
48
|
upstream {
|
|
49
49
|
instance {
|
|
50
|
-
...
|
|
50
|
+
...ServiceDependenciesJenkinsInstance
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
}
|
|
@@ -73,9 +73,9 @@ query ServiceDependencies {
|
|
|
73
73
|
|
|
74
74
|
|
|
75
75
|
class ConfiguredBaseModel(BaseModel):
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
model_config = ConfigDict(
|
|
77
|
+
extra='forbid'
|
|
78
|
+
)
|
|
79
79
|
|
|
80
80
|
|
|
81
81
|
class DependencyV1(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -20,20 +20,20 @@ from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
|
20
20
|
|
|
21
21
|
DEFINITION = """
|
|
22
22
|
query AWSAccountSharding {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
23
|
+
aws_accounts: awsaccounts_v1 {
|
|
24
|
+
name
|
|
25
|
+
disable {
|
|
26
|
+
integrations
|
|
28
27
|
}
|
|
28
|
+
}
|
|
29
29
|
}
|
|
30
30
|
"""
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
class ConfiguredBaseModel(BaseModel):
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
extra='forbid'
|
|
36
|
+
)
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
class DisableClusterAutomationsV1(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -27,17 +27,17 @@ fragment MinimalOCMOrganization on OpenShiftClusterManager_v1 {
|
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
query OCMOrganizationSharding {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
30
|
+
ocm_organizations: ocm_instances_v1 {
|
|
31
|
+
...MinimalOCMOrganization
|
|
32
|
+
}
|
|
33
33
|
}
|
|
34
34
|
"""
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
class ConfiguredBaseModel(BaseModel):
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
model_config = ConfigDict(
|
|
39
|
+
extra='forbid'
|
|
40
|
+
)
|
|
41
41
|
|
|
42
42
|
|
|
43
43
|
class OCMOrganizationShardingQueryData(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,16 +12,16 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
class ConfiguredBaseModel(BaseModel):
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
model_config = ConfigDict(
|
|
23
|
+
extra='forbid'
|
|
24
|
+
)
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
class SkupperSiteControllerTemplate(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -30,7 +30,7 @@ fragment CommonJumphostFields on ClusterJumpHost_v1 {
|
|
|
30
30
|
port
|
|
31
31
|
remotePort
|
|
32
32
|
identity {
|
|
33
|
-
...
|
|
33
|
+
...VaultSecret
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -40,10 +40,10 @@ fragment SkupperSiteControllerTemplate on SkupperSiteControllerTemplate_v1 {
|
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
fragment VaultSecret on VaultSecret_v1 {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
path
|
|
44
|
+
field
|
|
45
|
+
version
|
|
46
|
+
format
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
query SkupperNetworks {
|
|
@@ -105,9 +105,9 @@ query SkupperNetworks {
|
|
|
105
105
|
|
|
106
106
|
|
|
107
107
|
class ConfiguredBaseModel(BaseModel):
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
108
|
+
model_config = ConfigDict(
|
|
109
|
+
extra='forbid'
|
|
110
|
+
)
|
|
111
111
|
|
|
112
112
|
|
|
113
113
|
class NamespaceSkupperSiteConfigV1(ConfiguredBaseModel):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"""
|
|
2
|
-
Generated by qenerate plugin=
|
|
2
|
+
Generated by qenerate plugin=pydantic_v2. DO NOT MODIFY MANUALLY!
|
|
3
3
|
"""
|
|
4
4
|
from collections.abc import Callable # noqa: F401 # pylint: disable=W0611
|
|
5
5
|
from datetime import datetime # noqa: F401 # pylint: disable=W0611
|
|
@@ -12,7 +12,7 @@ from typing import ( # noqa: F401 # pylint: disable=W0611
|
|
|
12
12
|
|
|
13
13
|
from pydantic import ( # noqa: F401 # pylint: disable=W0611
|
|
14
14
|
BaseModel,
|
|
15
|
-
|
|
15
|
+
ConfigDict,
|
|
16
16
|
Field,
|
|
17
17
|
Json,
|
|
18
18
|
)
|
|
@@ -34,9 +34,9 @@ query SlackUsergroupCluster {
|
|
|
34
34
|
|
|
35
35
|
|
|
36
36
|
class ConfiguredBaseModel(BaseModel):
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
model_config = ConfigDict(
|
|
38
|
+
extra='forbid'
|
|
39
|
+
)
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
class ClusterAuthV1(ConfiguredBaseModel):
|