google-cloud-sql 0.1.1__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.
- google/cloud/sqladmin/__init__.py +605 -0
- google/cloud/sqladmin/gapic_version.py +16 -0
- google/cloud/sqladmin/py.typed +2 -0
- google/cloud/sqladmin_v1/__init__.py +616 -0
- google/cloud/sqladmin_v1/_compat.py +262 -0
- google/cloud/sqladmin_v1/gapic_metadata.json +959 -0
- google/cloud/sqladmin_v1/gapic_version.py +16 -0
- google/cloud/sqladmin_v1/py.typed +2 -0
- google/cloud/sqladmin_v1/services/__init__.py +15 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/async_client.py +336 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/client.py +613 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/transports/__init__.py +34 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/transports/grpc.py +339 -0
- google/cloud/sqladmin_v1/services/sql_available_database_versions_service/transports/grpc_asyncio.py +356 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/async_client.py +697 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/client.py +977 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/pagers.py +199 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/transports/base.py +225 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/transports/grpc.py +456 -0
- google/cloud/sqladmin_v1/services/sql_backup_runs_service/transports/grpc_asyncio.py +495 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/async_client.py +946 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/client.py +1244 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/pagers.py +197 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/transports/base.py +237 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/transports/grpc.py +478 -0
- google/cloud/sqladmin_v1/services/sql_backups_service/transports/grpc_asyncio.py +527 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/async_client.py +591 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/client.py +867 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/transports/base.py +215 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/transports/grpc.py +430 -0
- google/cloud/sqladmin_v1/services/sql_connect_service/transports/grpc_asyncio.py +464 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/async_client.py +872 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/client.py +1152 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/transports/base.py +251 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/transports/grpc.py +515 -0
- google/cloud/sqladmin_v1/services/sql_databases_service/transports/grpc_asyncio.py +568 -0
- google/cloud/sqladmin_v1/services/sql_events_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_events_service/async_client.py +311 -0
- google/cloud/sqladmin_v1/services/sql_events_service/client.py +593 -0
- google/cloud/sqladmin_v1/services/sql_events_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_events_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1/services/sql_events_service/transports/grpc.py +337 -0
- google/cloud/sqladmin_v1/services/sql_events_service/transports/grpc_asyncio.py +354 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/async_client.py +327 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/client.py +605 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/transports/grpc.py +337 -0
- google/cloud/sqladmin_v1/services/sql_feature_eligibility_service/transports/grpc_asyncio.py +356 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/async_client.py +386 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/client.py +667 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/transports/base.py +181 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/transports/grpc.py +367 -0
- google/cloud/sqladmin_v1/services/sql_flags_service/transports/grpc_asyncio.py +391 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/async_client.py +315 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/client.py +593 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/transports/grpc.py +336 -0
- google/cloud/sqladmin_v1/services/sql_iam_policies_service/transports/grpc_asyncio.py +353 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/async_client.py +321 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/client.py +595 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/transports/grpc.py +336 -0
- google/cloud/sqladmin_v1/services/sql_instance_names_service/transports/grpc_asyncio.py +353 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/async_client.py +4519 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/client.py +4833 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/pagers.py +197 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/transports/base.py +801 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/transports/grpc.py +1661 -0
- google/cloud/sqladmin_v1/services/sql_instances_service/transports/grpc_asyncio.py +1904 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/async_client.py +591 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/client.py +871 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/pagers.py +197 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/transports/base.py +210 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/transports/grpc.py +426 -0
- google/cloud/sqladmin_v1/services/sql_operations_service/transports/grpc_asyncio.py +462 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/async_client.py +314 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/client.py +596 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/transports/grpc.py +338 -0
- google/cloud/sqladmin_v1/services/sql_regions_service/transports/grpc_asyncio.py +355 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/async_client.py +680 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/client.py +960 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/transports/base.py +226 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/transports/grpc.py +461 -0
- google/cloud/sqladmin_v1/services/sql_ssl_certs_service/transports/grpc_asyncio.py +501 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/async_client.py +395 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/client.py +676 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/transports/base.py +181 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/transports/grpc.py +369 -0
- google/cloud/sqladmin_v1/services/sql_tiers_service/transports/grpc_asyncio.py +393 -0
- google/cloud/sqladmin_v1/services/sql_users_service/__init__.py +22 -0
- google/cloud/sqladmin_v1/services/sql_users_service/async_client.py +754 -0
- google/cloud/sqladmin_v1/services/sql_users_service/client.py +1035 -0
- google/cloud/sqladmin_v1/services/sql_users_service/transports/__init__.py +32 -0
- google/cloud/sqladmin_v1/services/sql_users_service/transports/base.py +237 -0
- google/cloud/sqladmin_v1/services/sql_users_service/transports/grpc.py +477 -0
- google/cloud/sqladmin_v1/services/sql_users_service/transports/grpc_asyncio.py +526 -0
- google/cloud/sqladmin_v1/types/__init__.py +472 -0
- google/cloud/sqladmin_v1/types/cloud_sql_available_database_versions.py +24 -0
- google/cloud/sqladmin_v1/types/cloud_sql_backup_runs.py +438 -0
- google/cloud/sqladmin_v1/types/cloud_sql_backups.py +467 -0
- google/cloud/sqladmin_v1/types/cloud_sql_connect.py +385 -0
- google/cloud/sqladmin_v1/types/cloud_sql_databases.py +202 -0
- google/cloud/sqladmin_v1/types/cloud_sql_events.py +24 -0
- google/cloud/sqladmin_v1/types/cloud_sql_feature_eligibility.py +24 -0
- google/cloud/sqladmin_v1/types/cloud_sql_flags.py +272 -0
- google/cloud/sqladmin_v1/types/cloud_sql_iam_policies.py +24 -0
- google/cloud/sqladmin_v1/types/cloud_sql_instance_names.py +24 -0
- google/cloud/sqladmin_v1/types/cloud_sql_instances.py +4514 -0
- google/cloud/sqladmin_v1/types/cloud_sql_operations.py +164 -0
- google/cloud/sqladmin_v1/types/cloud_sql_regions.py +24 -0
- google/cloud/sqladmin_v1/types/cloud_sql_resources.py +4678 -0
- google/cloud/sqladmin_v1/types/cloud_sql_ssl_certs.py +220 -0
- google/cloud/sqladmin_v1/types/cloud_sql_tiers.py +108 -0
- google/cloud/sqladmin_v1/types/cloud_sql_users.py +571 -0
- google/cloud/sqladmin_v1beta4/__init__.py +583 -0
- google/cloud/sqladmin_v1beta4/_compat.py +262 -0
- google/cloud/sqladmin_v1beta4/gapic_metadata.json +1371 -0
- google/cloud/sqladmin_v1beta4/gapic_version.py +16 -0
- google/cloud/sqladmin_v1beta4/py.typed +2 -0
- google/cloud/sqladmin_v1beta4/services/__init__.py +15 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/async_client.py +689 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/client.py +971 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/pagers.py +197 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/transports/base.py +223 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/transports/grpc.py +449 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/transports/grpc_asyncio.py +490 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/transports/rest.py +1038 -0
- google/cloud/sqladmin_v1beta4/services/sql_backup_runs_service/transports/rest_base.py +150 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/async_client.py +941 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/client.py +1241 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/pagers.py +197 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/transports/base.py +234 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/transports/grpc.py +470 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/transports/grpc_asyncio.py +521 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/transports/rest.py +1238 -0
- google/cloud/sqladmin_v1beta4/services/sql_backups_service/transports/rest_base.py +175 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/async_client.py +591 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/client.py +869 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/transports/base.py +215 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/transports/grpc.py +430 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/transports/grpc_asyncio.py +464 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/transports/rest.py +852 -0
- google/cloud/sqladmin_v1beta4/services/sql_connect_service/transports/rest_base.py +138 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/async_client.py +444 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/client.py +739 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/transports/base.py +181 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/transports/grpc.py +407 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/transports/grpc_asyncio.py +431 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/transports/rest.py +213 -0
- google/cloud/sqladmin_v1beta4/services/sql_data_service/transports/rest_base.py +97 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/async_client.py +860 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/client.py +1142 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/transports/base.py +251 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/transports/grpc.py +502 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/transports/grpc_asyncio.py +561 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/transports/rest.py +1468 -0
- google/cloud/sqladmin_v1beta4/services/sql_databases_service/transports/rest_base.py +180 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/async_client.py +386 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/client.py +669 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/transports/base.py +181 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/transports/grpc.py +365 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/transports/grpc_asyncio.py +389 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/transports/rest.py +392 -0
- google/cloud/sqladmin_v1beta4/services/sql_flags_service/transports/rest_base.py +107 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/async_client.py +315 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/client.py +595 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/transports/__init__.py +39 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/transports/base.py +159 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/transports/grpc.py +336 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/transports/grpc_asyncio.py +353 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/transports/rest.py +184 -0
- google/cloud/sqladmin_v1beta4/services/sql_iam_policies_service/transports/rest_base.py +91 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/async_client.py +4399 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/client.py +4715 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/pagers.py +197 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/transports/base.py +801 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/transports/grpc.py +1627 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/transports/grpc_asyncio.py +1895 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/transports/rest.py +9625 -0
- google/cloud/sqladmin_v1beta4/services/sql_instances_service/transports/rest_base.py +744 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/async_client.py +585 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/client.py +867 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/pagers.py +197 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/transports/base.py +210 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/transports/grpc.py +422 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/transports/grpc_asyncio.py +458 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/transports/rest.py +744 -0
- google/cloud/sqladmin_v1beta4/services/sql_operations_service/transports/rest_base.py +136 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/async_client.py +672 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/client.py +954 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/transports/base.py +226 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/transports/grpc.py +453 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/transports/grpc_asyncio.py +497 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/transports/rest.py +1036 -0
- google/cloud/sqladmin_v1beta4/services/sql_ssl_certs_service/transports/rest_base.py +150 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/async_client.py +393 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/client.py +676 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/transports/base.py +181 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/transports/grpc.py +368 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/transports/grpc_asyncio.py +392 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/transports/rest.py +396 -0
- google/cloud/sqladmin_v1beta4/services/sql_tiers_service/transports/rest_base.py +107 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/__init__.py +22 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/async_client.py +754 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/client.py +1037 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/transports/__init__.py +36 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/transports/base.py +237 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/transports/grpc.py +475 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/transports/grpc_asyncio.py +524 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/transports/rest.py +1249 -0
- google/cloud/sqladmin_v1beta4/services/sql_users_service/transports/rest_base.py +165 -0
- google/cloud/sqladmin_v1beta4/types/__init__.py +480 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql.py +2666 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql_connect.py +386 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql_data.py +339 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql_iam_policies.py +24 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql_resources.py +8111 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql_tiers.py +108 -0
- google/cloud/sqladmin_v1beta4/types/cloud_sql_users.py +573 -0
- google_cloud_sql-0.1.1.dist-info/METADATA +239 -0
- google_cloud_sql-0.1.1.dist-info/RECORD +274 -0
- google_cloud_sql-0.1.1.dist-info/WHEEL +5 -0
- google_cloud_sql-0.1.1.dist-info/licenses/LICENSE +202 -0
- google_cloud_sql-0.1.1.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2026 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
from collections import OrderedDict
|
|
17
|
+
from typing import Dict, Type
|
|
18
|
+
|
|
19
|
+
from .base import SqlConnectServiceTransport
|
|
20
|
+
from .grpc import SqlConnectServiceGrpcTransport
|
|
21
|
+
from .grpc_asyncio import SqlConnectServiceGrpcAsyncIOTransport
|
|
22
|
+
from .rest import SqlConnectServiceRestInterceptor, SqlConnectServiceRestTransport
|
|
23
|
+
|
|
24
|
+
# Compile a registry of transports.
|
|
25
|
+
_transport_registry = OrderedDict() # type: Dict[str, Type[SqlConnectServiceTransport]]
|
|
26
|
+
_transport_registry["grpc"] = SqlConnectServiceGrpcTransport
|
|
27
|
+
_transport_registry["grpc_asyncio"] = SqlConnectServiceGrpcAsyncIOTransport
|
|
28
|
+
_transport_registry["rest"] = SqlConnectServiceRestTransport
|
|
29
|
+
|
|
30
|
+
__all__ = (
|
|
31
|
+
"SqlConnectServiceTransport",
|
|
32
|
+
"SqlConnectServiceGrpcTransport",
|
|
33
|
+
"SqlConnectServiceGrpcAsyncIOTransport",
|
|
34
|
+
"SqlConnectServiceRestTransport",
|
|
35
|
+
"SqlConnectServiceRestInterceptor",
|
|
36
|
+
)
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2026 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
import abc
|
|
17
|
+
from typing import Awaitable, Callable, Dict, Optional, Sequence, Union
|
|
18
|
+
|
|
19
|
+
import google.api_core
|
|
20
|
+
import google.auth # type: ignore
|
|
21
|
+
import google.protobuf
|
|
22
|
+
from google.api_core import exceptions as core_exceptions
|
|
23
|
+
from google.api_core import gapic_v1
|
|
24
|
+
from google.api_core import retry as retries
|
|
25
|
+
from google.auth import credentials as ga_credentials # type: ignore
|
|
26
|
+
from google.cloud.location import locations_pb2 # type: ignore
|
|
27
|
+
from google.longrunning import operations_pb2 # type: ignore
|
|
28
|
+
from google.oauth2 import service_account # type: ignore
|
|
29
|
+
|
|
30
|
+
from google.cloud.sqladmin_v1beta4 import gapic_version as package_version
|
|
31
|
+
from google.cloud.sqladmin_v1beta4.types import cloud_sql_connect
|
|
32
|
+
|
|
33
|
+
DEFAULT_CLIENT_INFO = gapic_v1.client_info.ClientInfo(
|
|
34
|
+
gapic_version=package_version.__version__
|
|
35
|
+
)
|
|
36
|
+
DEFAULT_CLIENT_INFO.protobuf_runtime_version = google.protobuf.__version__
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class SqlConnectServiceTransport(abc.ABC):
|
|
40
|
+
"""Abstract transport class for SqlConnectService."""
|
|
41
|
+
|
|
42
|
+
AUTH_SCOPES = (
|
|
43
|
+
"https://www.googleapis.com/auth/cloud-platform",
|
|
44
|
+
"https://www.googleapis.com/auth/sqlservice.admin",
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
DEFAULT_HOST: str = "sqladmin.googleapis.com"
|
|
48
|
+
|
|
49
|
+
def __init__(
|
|
50
|
+
self,
|
|
51
|
+
*,
|
|
52
|
+
host: str = DEFAULT_HOST,
|
|
53
|
+
credentials: Optional[ga_credentials.Credentials] = None,
|
|
54
|
+
credentials_file: Optional[str] = None,
|
|
55
|
+
scopes: Optional[Sequence[str]] = None,
|
|
56
|
+
quota_project_id: Optional[str] = None,
|
|
57
|
+
client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO,
|
|
58
|
+
always_use_jwt_access: Optional[bool] = False,
|
|
59
|
+
api_audience: Optional[str] = None,
|
|
60
|
+
**kwargs,
|
|
61
|
+
) -> None:
|
|
62
|
+
"""Instantiate the transport.
|
|
63
|
+
|
|
64
|
+
Args:
|
|
65
|
+
host (Optional[str]):
|
|
66
|
+
The hostname to connect to (default: 'sqladmin.googleapis.com').
|
|
67
|
+
credentials (Optional[google.auth.credentials.Credentials]): The
|
|
68
|
+
authorization credentials to attach to requests. These
|
|
69
|
+
credentials identify the application to the service; if none
|
|
70
|
+
are specified, the client will attempt to ascertain the
|
|
71
|
+
credentials from the environment.
|
|
72
|
+
credentials_file (Optional[str]): Deprecated. A file with credentials that can
|
|
73
|
+
be loaded with :func:`google.auth.load_credentials_from_file`.
|
|
74
|
+
This argument is mutually exclusive with credentials. This argument will be
|
|
75
|
+
removed in the next major version of this library.
|
|
76
|
+
scopes (Optional[Sequence[str]]): A list of scopes.
|
|
77
|
+
quota_project_id (Optional[str]): An optional project to use for billing
|
|
78
|
+
and quota.
|
|
79
|
+
client_info (google.api_core.gapic_v1.client_info.ClientInfo):
|
|
80
|
+
The client info used to send a user-agent string along with
|
|
81
|
+
API requests. If ``None``, then default info will be used.
|
|
82
|
+
Generally, you only need to set this if you're developing
|
|
83
|
+
your own client library.
|
|
84
|
+
always_use_jwt_access (Optional[bool]): Whether self signed JWT should
|
|
85
|
+
be used for service account credentials.
|
|
86
|
+
api_audience (Optional[str]): The intended audience for the API calls
|
|
87
|
+
to the service that will be set when using certain 3rd party
|
|
88
|
+
authentication flows. Audience is typically a resource identifier.
|
|
89
|
+
If not set, the host value will be used as a default.
|
|
90
|
+
"""
|
|
91
|
+
|
|
92
|
+
# Save the scopes.
|
|
93
|
+
self._scopes = scopes
|
|
94
|
+
if not hasattr(self, "_ignore_credentials"):
|
|
95
|
+
self._ignore_credentials: bool = False
|
|
96
|
+
|
|
97
|
+
# If no credentials are provided, then determine the appropriate
|
|
98
|
+
# defaults.
|
|
99
|
+
if credentials and credentials_file:
|
|
100
|
+
raise core_exceptions.DuplicateCredentialArgs(
|
|
101
|
+
"'credentials_file' and 'credentials' are mutually exclusive"
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
if credentials_file is not None:
|
|
105
|
+
credentials, _ = google.auth.load_credentials_from_file(
|
|
106
|
+
credentials_file,
|
|
107
|
+
scopes=scopes,
|
|
108
|
+
quota_project_id=quota_project_id,
|
|
109
|
+
default_scopes=self.AUTH_SCOPES,
|
|
110
|
+
)
|
|
111
|
+
elif credentials is None and not self._ignore_credentials:
|
|
112
|
+
credentials, _ = google.auth.default(
|
|
113
|
+
scopes=scopes,
|
|
114
|
+
quota_project_id=quota_project_id,
|
|
115
|
+
default_scopes=self.AUTH_SCOPES,
|
|
116
|
+
)
|
|
117
|
+
# Don't apply audience if the credentials file passed from user.
|
|
118
|
+
if hasattr(credentials, "with_gdch_audience"):
|
|
119
|
+
credentials = credentials.with_gdch_audience(
|
|
120
|
+
api_audience if api_audience else host
|
|
121
|
+
)
|
|
122
|
+
|
|
123
|
+
# If the credentials are service account credentials, then always try to use self signed JWT.
|
|
124
|
+
if (
|
|
125
|
+
always_use_jwt_access
|
|
126
|
+
and isinstance(credentials, service_account.Credentials)
|
|
127
|
+
and hasattr(service_account.Credentials, "with_always_use_jwt_access")
|
|
128
|
+
):
|
|
129
|
+
credentials = credentials.with_always_use_jwt_access(True)
|
|
130
|
+
|
|
131
|
+
# Save the credentials.
|
|
132
|
+
self._credentials = credentials
|
|
133
|
+
|
|
134
|
+
# Save the hostname. Default to port 443 (HTTPS) if none is specified.
|
|
135
|
+
if ":" not in host:
|
|
136
|
+
host += ":443"
|
|
137
|
+
self._host = host
|
|
138
|
+
|
|
139
|
+
self._wrapped_methods: Dict[Callable, Callable] = {}
|
|
140
|
+
|
|
141
|
+
@property
|
|
142
|
+
def host(self):
|
|
143
|
+
return self._host
|
|
144
|
+
|
|
145
|
+
def _prep_wrapped_messages(self, client_info):
|
|
146
|
+
# Precompute the wrapped methods.
|
|
147
|
+
self._wrapped_methods = {
|
|
148
|
+
self.get_connect_settings: gapic_v1.method.wrap_method(
|
|
149
|
+
self.get_connect_settings,
|
|
150
|
+
default_timeout=None,
|
|
151
|
+
client_info=client_info,
|
|
152
|
+
),
|
|
153
|
+
self.resolve_connect_settings: gapic_v1.method.wrap_method(
|
|
154
|
+
self.resolve_connect_settings,
|
|
155
|
+
default_timeout=None,
|
|
156
|
+
client_info=client_info,
|
|
157
|
+
),
|
|
158
|
+
self.generate_ephemeral_cert: gapic_v1.method.wrap_method(
|
|
159
|
+
self.generate_ephemeral_cert,
|
|
160
|
+
default_timeout=None,
|
|
161
|
+
client_info=client_info,
|
|
162
|
+
),
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
def close(self):
|
|
166
|
+
"""Closes resources associated with the transport.
|
|
167
|
+
|
|
168
|
+
.. warning::
|
|
169
|
+
Only call this method if the transport is NOT shared
|
|
170
|
+
with other clients - this may cause errors in other clients!
|
|
171
|
+
"""
|
|
172
|
+
raise NotImplementedError()
|
|
173
|
+
|
|
174
|
+
@property
|
|
175
|
+
def get_connect_settings(
|
|
176
|
+
self,
|
|
177
|
+
) -> Callable[
|
|
178
|
+
[cloud_sql_connect.GetConnectSettingsRequest],
|
|
179
|
+
Union[
|
|
180
|
+
cloud_sql_connect.ConnectSettings,
|
|
181
|
+
Awaitable[cloud_sql_connect.ConnectSettings],
|
|
182
|
+
],
|
|
183
|
+
]:
|
|
184
|
+
raise NotImplementedError()
|
|
185
|
+
|
|
186
|
+
@property
|
|
187
|
+
def resolve_connect_settings(
|
|
188
|
+
self,
|
|
189
|
+
) -> Callable[
|
|
190
|
+
[cloud_sql_connect.ResolveConnectSettingsRequest],
|
|
191
|
+
Union[
|
|
192
|
+
cloud_sql_connect.ConnectSettings,
|
|
193
|
+
Awaitable[cloud_sql_connect.ConnectSettings],
|
|
194
|
+
],
|
|
195
|
+
]:
|
|
196
|
+
raise NotImplementedError()
|
|
197
|
+
|
|
198
|
+
@property
|
|
199
|
+
def generate_ephemeral_cert(
|
|
200
|
+
self,
|
|
201
|
+
) -> Callable[
|
|
202
|
+
[cloud_sql_connect.GenerateEphemeralCertRequest],
|
|
203
|
+
Union[
|
|
204
|
+
cloud_sql_connect.GenerateEphemeralCertResponse,
|
|
205
|
+
Awaitable[cloud_sql_connect.GenerateEphemeralCertResponse],
|
|
206
|
+
],
|
|
207
|
+
]:
|
|
208
|
+
raise NotImplementedError()
|
|
209
|
+
|
|
210
|
+
@property
|
|
211
|
+
def kind(self) -> str:
|
|
212
|
+
raise NotImplementedError()
|
|
213
|
+
|
|
214
|
+
|
|
215
|
+
__all__ = ("SqlConnectServiceTransport",)
|
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Copyright 2026 Google LLC
|
|
3
|
+
#
|
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
# you may not use this file except in compliance with the License.
|
|
6
|
+
# You may obtain a copy of the License at
|
|
7
|
+
#
|
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
#
|
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
# See the License for the specific language governing permissions and
|
|
14
|
+
# limitations under the License.
|
|
15
|
+
#
|
|
16
|
+
import json
|
|
17
|
+
import logging as std_logging
|
|
18
|
+
import pickle
|
|
19
|
+
import warnings
|
|
20
|
+
from typing import Callable, Dict, Optional, Sequence, Tuple, Union
|
|
21
|
+
|
|
22
|
+
import google.auth # type: ignore
|
|
23
|
+
import google.protobuf.message
|
|
24
|
+
import grpc # type: ignore
|
|
25
|
+
import proto # type: ignore
|
|
26
|
+
from google.api_core import gapic_v1, grpc_helpers
|
|
27
|
+
from google.auth import credentials as ga_credentials # type: ignore
|
|
28
|
+
from google.auth.transport.grpc import SslCredentials # type: ignore
|
|
29
|
+
from google.cloud.location import locations_pb2 # type: ignore
|
|
30
|
+
from google.longrunning import operations_pb2 # type: ignore
|
|
31
|
+
from google.protobuf.json_format import MessageToJson
|
|
32
|
+
|
|
33
|
+
from google.cloud.sqladmin_v1beta4.types import cloud_sql_connect
|
|
34
|
+
|
|
35
|
+
from .base import DEFAULT_CLIENT_INFO, SqlConnectServiceTransport
|
|
36
|
+
|
|
37
|
+
try:
|
|
38
|
+
from google.api_core import client_logging # type: ignore
|
|
39
|
+
|
|
40
|
+
CLIENT_LOGGING_SUPPORTED = True # pragma: NO COVER
|
|
41
|
+
except ImportError: # pragma: NO COVER
|
|
42
|
+
CLIENT_LOGGING_SUPPORTED = False
|
|
43
|
+
|
|
44
|
+
_LOGGER = std_logging.getLogger(__name__)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class _LoggingClientInterceptor(grpc.UnaryUnaryClientInterceptor): # pragma: NO COVER
|
|
48
|
+
def intercept_unary_unary(self, continuation, client_call_details, request):
|
|
49
|
+
logging_enabled = CLIENT_LOGGING_SUPPORTED and _LOGGER.isEnabledFor(
|
|
50
|
+
std_logging.DEBUG
|
|
51
|
+
)
|
|
52
|
+
if logging_enabled: # pragma: NO COVER
|
|
53
|
+
request_metadata = client_call_details.metadata
|
|
54
|
+
if isinstance(request, proto.Message):
|
|
55
|
+
request_payload = type(request).to_json(request)
|
|
56
|
+
elif isinstance(request, google.protobuf.message.Message):
|
|
57
|
+
request_payload = MessageToJson(request)
|
|
58
|
+
else:
|
|
59
|
+
request_payload = f"{type(request).__name__}: {pickle.dumps(request)!r}"
|
|
60
|
+
|
|
61
|
+
request_metadata = {
|
|
62
|
+
key: value.decode("utf-8") if isinstance(value, bytes) else value
|
|
63
|
+
for key, value in request_metadata
|
|
64
|
+
}
|
|
65
|
+
grpc_request = {
|
|
66
|
+
"payload": request_payload,
|
|
67
|
+
"requestMethod": "grpc",
|
|
68
|
+
"metadata": dict(request_metadata),
|
|
69
|
+
}
|
|
70
|
+
_LOGGER.debug(
|
|
71
|
+
f"Sending request for {client_call_details.method}",
|
|
72
|
+
extra={
|
|
73
|
+
"serviceName": "google.cloud.sql.v1beta4.SqlConnectService",
|
|
74
|
+
"rpcName": str(client_call_details.method),
|
|
75
|
+
"request": grpc_request,
|
|
76
|
+
"metadata": grpc_request["metadata"],
|
|
77
|
+
},
|
|
78
|
+
)
|
|
79
|
+
response = continuation(client_call_details, request)
|
|
80
|
+
if logging_enabled: # pragma: NO COVER
|
|
81
|
+
response_metadata = response.trailing_metadata()
|
|
82
|
+
# Convert gRPC metadata `<class 'grpc.aio._metadata.Metadata'>` to list of tuples
|
|
83
|
+
metadata = (
|
|
84
|
+
dict([(k, str(v)) for k, v in response_metadata])
|
|
85
|
+
if response_metadata
|
|
86
|
+
else None
|
|
87
|
+
)
|
|
88
|
+
result = response.result()
|
|
89
|
+
if isinstance(result, proto.Message):
|
|
90
|
+
response_payload = type(result).to_json(result)
|
|
91
|
+
elif isinstance(result, google.protobuf.message.Message):
|
|
92
|
+
response_payload = MessageToJson(result)
|
|
93
|
+
else:
|
|
94
|
+
response_payload = f"{type(result).__name__}: {pickle.dumps(result)!r}"
|
|
95
|
+
grpc_response = {
|
|
96
|
+
"payload": response_payload,
|
|
97
|
+
"metadata": metadata,
|
|
98
|
+
"status": "OK",
|
|
99
|
+
}
|
|
100
|
+
_LOGGER.debug(
|
|
101
|
+
f"Received response for {client_call_details.method}.",
|
|
102
|
+
extra={
|
|
103
|
+
"serviceName": "google.cloud.sql.v1beta4.SqlConnectService",
|
|
104
|
+
"rpcName": client_call_details.method,
|
|
105
|
+
"response": grpc_response,
|
|
106
|
+
"metadata": grpc_response["metadata"],
|
|
107
|
+
},
|
|
108
|
+
)
|
|
109
|
+
return response
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
class SqlConnectServiceGrpcTransport(SqlConnectServiceTransport):
|
|
113
|
+
"""gRPC backend transport for SqlConnectService.
|
|
114
|
+
|
|
115
|
+
Cloud SQL connect service.
|
|
116
|
+
|
|
117
|
+
This class defines the same methods as the primary client, so the
|
|
118
|
+
primary client can load the underlying transport implementation
|
|
119
|
+
and call it.
|
|
120
|
+
|
|
121
|
+
It sends protocol buffers over the wire using gRPC (which is built on
|
|
122
|
+
top of HTTP/2); the ``grpcio`` package must be installed.
|
|
123
|
+
"""
|
|
124
|
+
|
|
125
|
+
_stubs: Dict[str, Callable]
|
|
126
|
+
|
|
127
|
+
def __init__(
|
|
128
|
+
self,
|
|
129
|
+
*,
|
|
130
|
+
host: str = "sqladmin.googleapis.com",
|
|
131
|
+
credentials: Optional[ga_credentials.Credentials] = None,
|
|
132
|
+
credentials_file: Optional[str] = None,
|
|
133
|
+
scopes: Optional[Sequence[str]] = None,
|
|
134
|
+
channel: Optional[Union[grpc.Channel, Callable[..., grpc.Channel]]] = None,
|
|
135
|
+
api_mtls_endpoint: Optional[str] = None,
|
|
136
|
+
client_cert_source: Optional[Callable[[], Tuple[bytes, bytes]]] = None,
|
|
137
|
+
ssl_channel_credentials: Optional[grpc.ChannelCredentials] = None,
|
|
138
|
+
client_cert_source_for_mtls: Optional[Callable[[], Tuple[bytes, bytes]]] = None,
|
|
139
|
+
quota_project_id: Optional[str] = None,
|
|
140
|
+
client_info: gapic_v1.client_info.ClientInfo = DEFAULT_CLIENT_INFO,
|
|
141
|
+
always_use_jwt_access: Optional[bool] = False,
|
|
142
|
+
api_audience: Optional[str] = None,
|
|
143
|
+
) -> None:
|
|
144
|
+
"""Instantiate the transport.
|
|
145
|
+
|
|
146
|
+
Args:
|
|
147
|
+
host (Optional[str]):
|
|
148
|
+
The hostname to connect to (default: 'sqladmin.googleapis.com').
|
|
149
|
+
credentials (Optional[google.auth.credentials.Credentials]): The
|
|
150
|
+
authorization credentials to attach to requests. These
|
|
151
|
+
credentials identify the application to the service; if none
|
|
152
|
+
are specified, the client will attempt to ascertain the
|
|
153
|
+
credentials from the environment.
|
|
154
|
+
This argument is ignored if a ``channel`` instance is provided.
|
|
155
|
+
credentials_file (Optional[str]): Deprecated. A file with credentials that can
|
|
156
|
+
be loaded with :func:`google.auth.load_credentials_from_file`.
|
|
157
|
+
This argument is ignored if a ``channel`` instance is provided.
|
|
158
|
+
This argument will be removed in the next major version of this library.
|
|
159
|
+
scopes (Optional(Sequence[str])): A list of scopes. This argument is
|
|
160
|
+
ignored if a ``channel`` instance is provided.
|
|
161
|
+
channel (Optional[Union[grpc.Channel, Callable[..., grpc.Channel]]]):
|
|
162
|
+
A ``Channel`` instance through which to make calls, or a Callable
|
|
163
|
+
that constructs and returns one. If set to None, ``self.create_channel``
|
|
164
|
+
is used to create the channel. If a Callable is given, it will be called
|
|
165
|
+
with the same arguments as used in ``self.create_channel``.
|
|
166
|
+
api_mtls_endpoint (Optional[str]): Deprecated. The mutual TLS endpoint.
|
|
167
|
+
If provided, it overrides the ``host`` argument and tries to create
|
|
168
|
+
a mutual TLS channel with client SSL credentials from
|
|
169
|
+
``client_cert_source`` or application default SSL credentials.
|
|
170
|
+
client_cert_source (Optional[Callable[[], Tuple[bytes, bytes]]]):
|
|
171
|
+
Deprecated. A callback to provide client SSL certificate bytes and
|
|
172
|
+
private key bytes, both in PEM format. It is ignored if
|
|
173
|
+
``api_mtls_endpoint`` is None.
|
|
174
|
+
ssl_channel_credentials (grpc.ChannelCredentials): SSL credentials
|
|
175
|
+
for the grpc channel. It is ignored if a ``channel`` instance is provided.
|
|
176
|
+
client_cert_source_for_mtls (Optional[Callable[[], Tuple[bytes, bytes]]]):
|
|
177
|
+
A callback to provide client certificate bytes and private key bytes,
|
|
178
|
+
both in PEM format. It is used to configure a mutual TLS channel. It is
|
|
179
|
+
ignored if a ``channel`` instance or ``ssl_channel_credentials`` is provided.
|
|
180
|
+
quota_project_id (Optional[str]): An optional project to use for billing
|
|
181
|
+
and quota.
|
|
182
|
+
client_info (google.api_core.gapic_v1.client_info.ClientInfo):
|
|
183
|
+
The client info used to send a user-agent string along with
|
|
184
|
+
API requests. If ``None``, then default info will be used.
|
|
185
|
+
Generally, you only need to set this if you're developing
|
|
186
|
+
your own client library.
|
|
187
|
+
always_use_jwt_access (Optional[bool]): Whether self signed JWT should
|
|
188
|
+
be used for service account credentials.
|
|
189
|
+
api_audience (Optional[str]): The intended audience for the API calls
|
|
190
|
+
to the service that will be set when using certain 3rd party
|
|
191
|
+
authentication flows. Audience is typically a resource identifier.
|
|
192
|
+
If not set, the host value will be used as a default.
|
|
193
|
+
|
|
194
|
+
Raises:
|
|
195
|
+
google.auth.exceptions.MutualTLSChannelError: If mutual TLS transport
|
|
196
|
+
creation failed for any reason.
|
|
197
|
+
google.api_core.exceptions.DuplicateCredentialArgs: If both ``credentials``
|
|
198
|
+
and ``credentials_file`` are passed.
|
|
199
|
+
"""
|
|
200
|
+
self._grpc_channel = None
|
|
201
|
+
self._ssl_channel_credentials = ssl_channel_credentials
|
|
202
|
+
self._stubs: Dict[str, Callable] = {}
|
|
203
|
+
|
|
204
|
+
if api_mtls_endpoint:
|
|
205
|
+
warnings.warn("api_mtls_endpoint is deprecated", DeprecationWarning)
|
|
206
|
+
if client_cert_source:
|
|
207
|
+
warnings.warn("client_cert_source is deprecated", DeprecationWarning)
|
|
208
|
+
|
|
209
|
+
if isinstance(channel, grpc.Channel):
|
|
210
|
+
# Ignore credentials if a channel was passed.
|
|
211
|
+
credentials = None
|
|
212
|
+
self._ignore_credentials = True
|
|
213
|
+
# If a channel was explicitly provided, set it.
|
|
214
|
+
self._grpc_channel = channel
|
|
215
|
+
self._ssl_channel_credentials = None
|
|
216
|
+
|
|
217
|
+
else:
|
|
218
|
+
if api_mtls_endpoint:
|
|
219
|
+
host = api_mtls_endpoint
|
|
220
|
+
|
|
221
|
+
# Create SSL credentials with client_cert_source or application
|
|
222
|
+
# default SSL credentials.
|
|
223
|
+
if client_cert_source:
|
|
224
|
+
cert, key = client_cert_source()
|
|
225
|
+
self._ssl_channel_credentials = grpc.ssl_channel_credentials(
|
|
226
|
+
certificate_chain=cert, private_key=key
|
|
227
|
+
)
|
|
228
|
+
else:
|
|
229
|
+
self._ssl_channel_credentials = SslCredentials().ssl_credentials
|
|
230
|
+
|
|
231
|
+
else:
|
|
232
|
+
if client_cert_source_for_mtls and not ssl_channel_credentials:
|
|
233
|
+
cert, key = client_cert_source_for_mtls()
|
|
234
|
+
self._ssl_channel_credentials = grpc.ssl_channel_credentials(
|
|
235
|
+
certificate_chain=cert, private_key=key
|
|
236
|
+
)
|
|
237
|
+
|
|
238
|
+
# The base transport sets the host, credentials and scopes
|
|
239
|
+
super().__init__(
|
|
240
|
+
host=host,
|
|
241
|
+
credentials=credentials,
|
|
242
|
+
credentials_file=credentials_file,
|
|
243
|
+
scopes=scopes,
|
|
244
|
+
quota_project_id=quota_project_id,
|
|
245
|
+
client_info=client_info,
|
|
246
|
+
always_use_jwt_access=always_use_jwt_access,
|
|
247
|
+
api_audience=api_audience,
|
|
248
|
+
)
|
|
249
|
+
|
|
250
|
+
if not self._grpc_channel:
|
|
251
|
+
# initialize with the provided callable or the default channel
|
|
252
|
+
channel_init = channel or type(self).create_channel
|
|
253
|
+
self._grpc_channel = channel_init(
|
|
254
|
+
self._host,
|
|
255
|
+
# use the credentials which are saved
|
|
256
|
+
credentials=self._credentials,
|
|
257
|
+
# Set ``credentials_file`` to ``None`` here as
|
|
258
|
+
# the credentials that we saved earlier should be used.
|
|
259
|
+
credentials_file=None,
|
|
260
|
+
scopes=self._scopes,
|
|
261
|
+
ssl_credentials=self._ssl_channel_credentials,
|
|
262
|
+
quota_project_id=quota_project_id,
|
|
263
|
+
options=[
|
|
264
|
+
("grpc.max_send_message_length", -1),
|
|
265
|
+
("grpc.max_receive_message_length", -1),
|
|
266
|
+
],
|
|
267
|
+
)
|
|
268
|
+
|
|
269
|
+
self._interceptor = _LoggingClientInterceptor()
|
|
270
|
+
self._logged_channel = grpc.intercept_channel(
|
|
271
|
+
self._grpc_channel, self._interceptor
|
|
272
|
+
)
|
|
273
|
+
|
|
274
|
+
# Wrap messages. This must be done after self._logged_channel exists
|
|
275
|
+
self._prep_wrapped_messages(client_info)
|
|
276
|
+
|
|
277
|
+
@classmethod
|
|
278
|
+
def create_channel(
|
|
279
|
+
cls,
|
|
280
|
+
host: str = "sqladmin.googleapis.com",
|
|
281
|
+
credentials: Optional[ga_credentials.Credentials] = None,
|
|
282
|
+
credentials_file: Optional[str] = None,
|
|
283
|
+
scopes: Optional[Sequence[str]] = None,
|
|
284
|
+
quota_project_id: Optional[str] = None,
|
|
285
|
+
**kwargs,
|
|
286
|
+
) -> grpc.Channel:
|
|
287
|
+
"""Create and return a gRPC channel object.
|
|
288
|
+
Args:
|
|
289
|
+
host (Optional[str]): The host for the channel to use.
|
|
290
|
+
credentials (Optional[~.Credentials]): The
|
|
291
|
+
authorization credentials to attach to requests. These
|
|
292
|
+
credentials identify this application to the service. If
|
|
293
|
+
none are specified, the client will attempt to ascertain
|
|
294
|
+
the credentials from the environment.
|
|
295
|
+
credentials_file (Optional[str]): Deprecated. A file with credentials that can
|
|
296
|
+
be loaded with :func:`google.auth.load_credentials_from_file`.
|
|
297
|
+
This argument is mutually exclusive with credentials. This argument will be
|
|
298
|
+
removed in the next major version of this library.
|
|
299
|
+
scopes (Optional[Sequence[str]]): A optional list of scopes needed for this
|
|
300
|
+
service. These are only used when credentials are not specified and
|
|
301
|
+
are passed to :func:`google.auth.default`.
|
|
302
|
+
quota_project_id (Optional[str]): An optional project to use for billing
|
|
303
|
+
and quota.
|
|
304
|
+
kwargs (Optional[dict]): Keyword arguments, which are passed to the
|
|
305
|
+
channel creation.
|
|
306
|
+
Returns:
|
|
307
|
+
grpc.Channel: A gRPC channel object.
|
|
308
|
+
|
|
309
|
+
Raises:
|
|
310
|
+
google.api_core.exceptions.DuplicateCredentialArgs: If both ``credentials``
|
|
311
|
+
and ``credentials_file`` are passed.
|
|
312
|
+
"""
|
|
313
|
+
|
|
314
|
+
return grpc_helpers.create_channel(
|
|
315
|
+
host,
|
|
316
|
+
credentials=credentials,
|
|
317
|
+
credentials_file=credentials_file,
|
|
318
|
+
quota_project_id=quota_project_id,
|
|
319
|
+
default_scopes=cls.AUTH_SCOPES,
|
|
320
|
+
scopes=scopes,
|
|
321
|
+
default_host=cls.DEFAULT_HOST,
|
|
322
|
+
**kwargs,
|
|
323
|
+
)
|
|
324
|
+
|
|
325
|
+
@property
|
|
326
|
+
def grpc_channel(self) -> grpc.Channel:
|
|
327
|
+
"""Return the channel designed to connect to this service."""
|
|
328
|
+
return self._grpc_channel
|
|
329
|
+
|
|
330
|
+
@property
|
|
331
|
+
def get_connect_settings(
|
|
332
|
+
self,
|
|
333
|
+
) -> Callable[
|
|
334
|
+
[cloud_sql_connect.GetConnectSettingsRequest], cloud_sql_connect.ConnectSettings
|
|
335
|
+
]:
|
|
336
|
+
r"""Return a callable for the get connect settings method over gRPC.
|
|
337
|
+
|
|
338
|
+
Retrieves connect settings about a Cloud SQL
|
|
339
|
+
instance.
|
|
340
|
+
|
|
341
|
+
Returns:
|
|
342
|
+
Callable[[~.GetConnectSettingsRequest],
|
|
343
|
+
~.ConnectSettings]:
|
|
344
|
+
A function that, when called, will call the underlying RPC
|
|
345
|
+
on the server.
|
|
346
|
+
"""
|
|
347
|
+
# Generate a "stub function" on-the-fly which will actually make
|
|
348
|
+
# the request.
|
|
349
|
+
# gRPC handles serialization and deserialization, so we just need
|
|
350
|
+
# to pass in the functions for each.
|
|
351
|
+
if "get_connect_settings" not in self._stubs:
|
|
352
|
+
self._stubs["get_connect_settings"] = self._logged_channel.unary_unary(
|
|
353
|
+
"/google.cloud.sql.v1beta4.SqlConnectService/GetConnectSettings",
|
|
354
|
+
request_serializer=cloud_sql_connect.GetConnectSettingsRequest.serialize,
|
|
355
|
+
response_deserializer=cloud_sql_connect.ConnectSettings.deserialize,
|
|
356
|
+
)
|
|
357
|
+
return self._stubs["get_connect_settings"]
|
|
358
|
+
|
|
359
|
+
@property
|
|
360
|
+
def resolve_connect_settings(
|
|
361
|
+
self,
|
|
362
|
+
) -> Callable[
|
|
363
|
+
[cloud_sql_connect.ResolveConnectSettingsRequest],
|
|
364
|
+
cloud_sql_connect.ConnectSettings,
|
|
365
|
+
]:
|
|
366
|
+
r"""Return a callable for the resolve connect settings method over gRPC.
|
|
367
|
+
|
|
368
|
+
Retrieves connect settings about a Cloud SQL instance
|
|
369
|
+
using the instance DNS name.
|
|
370
|
+
|
|
371
|
+
Returns:
|
|
372
|
+
Callable[[~.ResolveConnectSettingsRequest],
|
|
373
|
+
~.ConnectSettings]:
|
|
374
|
+
A function that, when called, will call the underlying RPC
|
|
375
|
+
on the server.
|
|
376
|
+
"""
|
|
377
|
+
# Generate a "stub function" on-the-fly which will actually make
|
|
378
|
+
# the request.
|
|
379
|
+
# gRPC handles serialization and deserialization, so we just need
|
|
380
|
+
# to pass in the functions for each.
|
|
381
|
+
if "resolve_connect_settings" not in self._stubs:
|
|
382
|
+
self._stubs["resolve_connect_settings"] = self._logged_channel.unary_unary(
|
|
383
|
+
"/google.cloud.sql.v1beta4.SqlConnectService/ResolveConnectSettings",
|
|
384
|
+
request_serializer=cloud_sql_connect.ResolveConnectSettingsRequest.serialize,
|
|
385
|
+
response_deserializer=cloud_sql_connect.ConnectSettings.deserialize,
|
|
386
|
+
)
|
|
387
|
+
return self._stubs["resolve_connect_settings"]
|
|
388
|
+
|
|
389
|
+
@property
|
|
390
|
+
def generate_ephemeral_cert(
|
|
391
|
+
self,
|
|
392
|
+
) -> Callable[
|
|
393
|
+
[cloud_sql_connect.GenerateEphemeralCertRequest],
|
|
394
|
+
cloud_sql_connect.GenerateEphemeralCertResponse,
|
|
395
|
+
]:
|
|
396
|
+
r"""Return a callable for the generate ephemeral cert method over gRPC.
|
|
397
|
+
|
|
398
|
+
Generates a short-lived X509 certificate containing
|
|
399
|
+
the provided public key and signed by a private key
|
|
400
|
+
specific to the target instance. Users may use the
|
|
401
|
+
certificate to authenticate as themselves when
|
|
402
|
+
connecting to the database.
|
|
403
|
+
|
|
404
|
+
Returns:
|
|
405
|
+
Callable[[~.GenerateEphemeralCertRequest],
|
|
406
|
+
~.GenerateEphemeralCertResponse]:
|
|
407
|
+
A function that, when called, will call the underlying RPC
|
|
408
|
+
on the server.
|
|
409
|
+
"""
|
|
410
|
+
# Generate a "stub function" on-the-fly which will actually make
|
|
411
|
+
# the request.
|
|
412
|
+
# gRPC handles serialization and deserialization, so we just need
|
|
413
|
+
# to pass in the functions for each.
|
|
414
|
+
if "generate_ephemeral_cert" not in self._stubs:
|
|
415
|
+
self._stubs["generate_ephemeral_cert"] = self._logged_channel.unary_unary(
|
|
416
|
+
"/google.cloud.sql.v1beta4.SqlConnectService/GenerateEphemeralCert",
|
|
417
|
+
request_serializer=cloud_sql_connect.GenerateEphemeralCertRequest.serialize,
|
|
418
|
+
response_deserializer=cloud_sql_connect.GenerateEphemeralCertResponse.deserialize,
|
|
419
|
+
)
|
|
420
|
+
return self._stubs["generate_ephemeral_cert"]
|
|
421
|
+
|
|
422
|
+
def close(self):
|
|
423
|
+
self._logged_channel.close()
|
|
424
|
+
|
|
425
|
+
@property
|
|
426
|
+
def kind(self) -> str:
|
|
427
|
+
return "grpc"
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
__all__ = ("SqlConnectServiceGrpcTransport",)
|