cloud-sql-python-connector 1.17.0.dev0__py3-none-any.whl → 1.18.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.
- {cloud_sql_python_connector-1.17.0.dev0.dist-info → cloud_sql_python_connector-1.18.1.dist-info}/METADATA +103 -130
- cloud_sql_python_connector-1.18.1.dist-info/RECORD +25 -0
- {cloud_sql_python_connector-1.17.0.dev0.dist-info → cloud_sql_python_connector-1.18.1.dist-info}/WHEEL +1 -1
- google/cloud/sql/connector/__init__.py +1 -1
- google/cloud/sql/connector/asyncpg.py +14 -13
- google/cloud/sql/connector/client.py +41 -37
- google/cloud/sql/connector/connection_info.py +22 -0
- google/cloud/sql/connector/connection_name.py +14 -0
- google/cloud/sql/connector/connector.py +50 -15
- google/cloud/sql/connector/exceptions.py +7 -0
- google/cloud/sql/connector/instance.py +12 -1
- google/cloud/sql/connector/lazy.py +13 -2
- google/cloud/sql/connector/monitored_cache.py +146 -0
- google/cloud/sql/connector/pg8000.py +12 -19
- google/cloud/sql/connector/pymysql.py +11 -17
- google/cloud/sql/connector/pytds.py +11 -18
- google/cloud/sql/connector/rate_limiter.py +9 -17
- google/cloud/sql/connector/refresh_utils.py +12 -11
- google/cloud/sql/connector/resolver.py +11 -2
- google/cloud/sql/connector/utils.py +6 -8
- google/cloud/sql/connector/version.py +1 -1
- cloud_sql_python_connector-1.17.0.dev0.dist-info/RECORD +0 -24
- {cloud_sql_python_connector-1.17.0.dev0.dist-info → cloud_sql_python_connector-1.18.1.dist-info/licenses}/LICENSE +0 -0
- {cloud_sql_python_connector-1.17.0.dev0.dist-info → cloud_sql_python_connector-1.18.1.dist-info}/top_level.txt +0 -0
|
@@ -17,6 +17,7 @@ import dns.asyncresolver
|
|
|
17
17
|
from google.cloud.sql.connector.connection_name import (
|
|
18
18
|
_parse_connection_name_with_domain_name,
|
|
19
19
|
)
|
|
20
|
+
from google.cloud.sql.connector.connection_name import _is_valid_domain
|
|
20
21
|
from google.cloud.sql.connector.connection_name import _parse_connection_name
|
|
21
22
|
from google.cloud.sql.connector.connection_name import ConnectionName
|
|
22
23
|
from google.cloud.sql.connector.exceptions import DnsResolutionError
|
|
@@ -40,8 +41,16 @@ class DnsResolver(dns.asyncresolver.Resolver):
|
|
|
40
41
|
conn_name = _parse_connection_name(dns)
|
|
41
42
|
except ValueError:
|
|
42
43
|
# The connection name was not project:region:instance format.
|
|
43
|
-
#
|
|
44
|
-
|
|
44
|
+
# Check if connection name is a valid DNS domain name
|
|
45
|
+
if _is_valid_domain(dns):
|
|
46
|
+
# Attempt to query a TXT record to get connection name.
|
|
47
|
+
conn_name = await self.query_dns(dns)
|
|
48
|
+
else:
|
|
49
|
+
raise ValueError(
|
|
50
|
+
"Arg `instance_connection_string` must have "
|
|
51
|
+
"format: PROJECT:REGION:INSTANCE or be a valid DNS domain "
|
|
52
|
+
f"name, got {dns}."
|
|
53
|
+
)
|
|
45
54
|
return conn_name
|
|
46
55
|
|
|
47
56
|
async def query_dns(self, dns: str) -> ConnectionName:
|
|
@@ -79,16 +79,14 @@ async def write_to_file(
|
|
|
79
79
|
|
|
80
80
|
|
|
81
81
|
def format_database_user(database_version: str, user: str) -> str:
|
|
82
|
-
"""
|
|
83
|
-
Format database `user` param for Cloud SQL automatic IAM authentication.
|
|
82
|
+
"""Format database `user` param for Cloud SQL automatic IAM authentication.
|
|
84
83
|
|
|
85
|
-
:
|
|
86
|
-
|
|
87
|
-
|
|
84
|
+
Args:
|
|
85
|
+
database_version (str): Cloud SQL database version.
|
|
86
|
+
user (str): Database username to connect to Cloud SQL database with.
|
|
88
87
|
|
|
89
|
-
:
|
|
90
|
-
|
|
91
|
-
Database username to connect to Cloud SQL database with.
|
|
88
|
+
Returns:
|
|
89
|
+
str: Formatted database username.
|
|
92
90
|
"""
|
|
93
91
|
# remove suffix for Postgres service accounts
|
|
94
92
|
if database_version.startswith("POSTGRES"):
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
google/cloud/sql/connector/__init__.py,sha256=kSGB2q6hQwkFLD1eI7RjY4BvPLvg2FD3wfPBmbnsjDE,1149
|
|
2
|
-
google/cloud/sql/connector/asyncpg.py,sha256=HUOB0rRhr2-zMbygDtdWTDNlYqEPkN0ADqCIpM3waDc,1839
|
|
3
|
-
google/cloud/sql/connector/client.py,sha256=ocUN1nrgZyJRnxgh6Ym3w0c_qKb8hqKCmR1OiJ2KUpM,12622
|
|
4
|
-
google/cloud/sql/connector/connection_info.py,sha256=cFNOeHJ0lQODf7q5Hc25LXsNWzWgzYcFMrBuNdZ1y5k,4430
|
|
5
|
-
google/cloud/sql/connector/connection_name.py,sha256=4F5XhgmSWGEeF-3TJk2E61YPbxMAecPGw56nPTZmQ2o,2067
|
|
6
|
-
google/cloud/sql/connector/connector.py,sha256=emahfH9ZSrbooFBV-m6gcwGJ7yYQwaUJuCJPz0DHfHA,22547
|
|
7
|
-
google/cloud/sql/connector/enums.py,sha256=dVBS9eEWNrHtzze0AJlmtbdUogG3EocNWOQcI_8qPd0,2937
|
|
8
|
-
google/cloud/sql/connector/exceptions.py,sha256=eyflYggkKZx3t944FTPqQrX-R75lZgtpOwC4uVLPhG0,1823
|
|
9
|
-
google/cloud/sql/connector/instance.py,sha256=nRzhE7t_M6AhjiYvEZHOjkBHx3d9wGRCC6RekgDApFI,8379
|
|
10
|
-
google/cloud/sql/connector/lazy.py,sha256=p1wLte49xE_aHiY5shjMbxwytgW-ycS0Hd67C34gaDY,4631
|
|
11
|
-
google/cloud/sql/connector/pg8000.py,sha256=gZisjfXP4rNIjyxOQS75fvr0Xe6eLrFo4mIhVjoMLTw,1815
|
|
12
|
-
google/cloud/sql/connector/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
|
-
google/cloud/sql/connector/pymysql.py,sha256=82DwSJUhZHH2AW-vO7qhkljyShwj6Kmd17WCbOGZH74,2106
|
|
14
|
-
google/cloud/sql/connector/pytds.py,sha256=h-1pDhqLDkhviKBBOJ29gnIeYHKWw7Dtj91VLu1iNUI,2453
|
|
15
|
-
google/cloud/sql/connector/rate_limiter.py,sha256=bPTupfM4f5QRSCmCAWMqjQylEB7bUM-50plVBU3W2CA,2993
|
|
16
|
-
google/cloud/sql/connector/refresh_utils.py,sha256=HfuuLdlqg2IxusB4T3BMj-BJlGsXtHsrCX_Hp-eJ_j0,5063
|
|
17
|
-
google/cloud/sql/connector/resolver.py,sha256=cNDJMhmS_0CIAmz8kCABKHJNLNm1wiwIVoPEN-gWzzY,2850
|
|
18
|
-
google/cloud/sql/connector/utils.py,sha256=7g1fX-JsZc7xOgTuxrAiroFHQIQk_BEJZNYaKOinwQY,3508
|
|
19
|
-
google/cloud/sql/connector/version.py,sha256=YfNpSkpcPhRwrFt2dV7ut5xGe0KjgvNinweha483X2w,603
|
|
20
|
-
cloud_sql_python_connector-1.17.0.dev0.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
21
|
-
cloud_sql_python_connector-1.17.0.dev0.dist-info/METADATA,sha256=qlls3nyZF0ZxHsLxEvorF9ukUEyY5pQpWUhvbQ0H2tk,30494
|
|
22
|
-
cloud_sql_python_connector-1.17.0.dev0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
23
|
-
cloud_sql_python_connector-1.17.0.dev0.dist-info/top_level.txt,sha256=_1QvSJIhFAGfxb79D6DhB7SUw2X6T4rwnz_LLrbcD3c,7
|
|
24
|
-
cloud_sql_python_connector-1.17.0.dev0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|