Skip to content

Commit b4bbea0

Browse files
author
Saketram Durbha
committed
minor code style and performance updates for Cloud SQL PostgreSQL and MySQL samples
* make necessary environment variables such as "DB_USER" required * add comments to show examples for some input arguments * rewrite small piece of code to be more condensed and concise
1 parent e5aa603 commit b4bbea0

File tree

2 files changed

+42
-46
lines changed

2 files changed

+42
-46
lines changed

cloud-sql/mysql/sqlalchemy/main.py

Lines changed: 21 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -63,27 +63,25 @@ def init_tcp_connection_engine(db_config):
6363
# [START cloud_sql_mysql_sqlalchemy_create_tcp]
6464
# Remember - storing secrets in plaintext is potentially unsafe. Consider using
6565
# something like https://cloud.google.com/kms/ to help keep secrets secret.
66-
db_user = os.environ.get("DB_USER")
67-
db_pass = os.environ.get("DB_PASS")
68-
db_name = os.environ.get("DB_NAME")
69-
db_host = os.environ.get("DB_HOST")
66+
db_user = os.environ["DB_USER"]
67+
db_pass = os.environ["DB_PASS"]
68+
db_name = os.environ["DB_NAME"]
69+
db_host = os.environ["DB_HOST"]
7070

71-
db_host_parts = db_host.split(":")
72-
73-
# Extract host and port from db_host socket address
74-
db_hostname = db_host_parts[0]
75-
db_port = int(db_host_parts[1])
71+
# Extract host and port from db_host
72+
host_args = db_host.split(":")
73+
db_hostname, db_port = host_args[0], int(host_args[1])
7674

7775
pool = sqlalchemy.create_engine(
7876
# Equivalent URL:
7977
# mysql+pymysql://<db_user>:<db_pass>@<db_host>:<db_port>/<db_name>
8078
sqlalchemy.engine.url.URL(
8179
drivername="mysql+pymysql",
82-
username=db_user,
83-
password=db_pass,
84-
host=db_hostname,
85-
port=db_port,
86-
database=db_name,
80+
username=db_user, # e.g. "my-database-user"
81+
password=db_pass, # e.g. "my-database-password"
82+
host=db_hostname, # e.g. "127.0.0.1"
83+
port=db_port, # e.g. 3306
84+
database=db_name, # e.g. "my-database-name"
8785
),
8886
# ... Specify additional properties here.
8987
# [END cloud_sql_mysql_sqlalchemy_create_tcp]
@@ -99,24 +97,24 @@ def init_unix_connection_engine(db_config):
9997
# [START cloud_sql_mysql_sqlalchemy_create_socket]
10098
# Remember - storing secrets in plaintext is potentially unsafe. Consider using
10199
# something like https://cloud.google.com/kms/ to help keep secrets secret.
102-
db_user = os.environ.get("DB_USER")
103-
db_pass = os.environ.get("DB_PASS")
104-
db_name = os.environ.get("DB_NAME")
100+
db_user = os.environ["DB_USER"]
101+
db_pass = os.environ["DB_PASS"]
102+
db_name = os.environ["DB_NAME"]
105103
db_socket_dir = os.environ.get("DB_SOCKET_DIR", "/cloudsql")
106-
cloud_sql_connection_name = os.environ.get("CLOUD_SQL_CONNECTION_NAME")
104+
cloud_sql_connection_name = os.environ["CLOUD_SQL_CONNECTION_NAME"]
107105

108106
pool = sqlalchemy.create_engine(
109107
# Equivalent URL:
110108
# mysql+pymysql://<db_user>:<db_pass>@/<db_name>?unix_socket=<socket_path>/<cloud_sql_instance_name>
111109
sqlalchemy.engine.url.URL(
112110
drivername="mysql+pymysql",
113-
username=db_user,
114-
password=db_pass,
115-
database=db_name,
111+
username=db_user, # e.g. "my-database-user"
112+
password=db_pass, # e.g. "my-database-password"
113+
database=db_name, # e.g. "my-database-name"
116114
query={
117115
"unix_socket": "{}/{}".format(
118-
db_socket_dir,
119-
cloud_sql_connection_name)
116+
db_socket_dir, # e.g. "/cloudsql"
117+
cloud_sql_connection_name) # i.e "<PROJECT-NAME>:<INSTANCE-REGION>:<INSTANCE-NAME>"
120118
}
121119
),
122120
# ... Specify additional properties here.

cloud-sql/postgres/sqlalchemy/main.py

Lines changed: 21 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -66,27 +66,25 @@ def init_tcp_connection_engine(db_config):
6666
# [START cloud_sql_postgres_sqlalchemy_create_tcp]
6767
# Remember - storing secrets in plaintext is potentially unsafe. Consider using
6868
# something like https://cloud.google.com/kms/ to help keep secrets secret.
69-
db_user = os.environ.get("DB_USER")
70-
db_pass = os.environ.get("DB_PASS")
71-
db_name = os.environ.get("DB_NAME")
72-
db_host = os.environ.get("DB_HOST")
69+
db_user = os.environ["DB_USER"]
70+
db_pass = os.environ["DB_PASS"]
71+
db_name = os.environ["DB_NAME"]
72+
db_host = os.environ["DB_HOST"]
7373

74-
db_host_parts = db_host.split(":")
75-
76-
# Extract host and port from db_host socket address
77-
db_host = db_host_parts[0]
78-
db_port = int(db_host_parts[1])
74+
# Extract host and port from db_host
75+
host_args = db_host.split(":")
76+
db_hostname, db_port = host_args[0], int(host_args[1])
7977

8078
pool = sqlalchemy.create_engine(
8179
# Equivalent URL:
8280
# postgres+pg8000://<db_user>:<db_pass>@<db_host>:<db_port>/<db_name>
8381
sqlalchemy.engine.url.URL(
8482
drivername="postgres+pg8000",
85-
username=db_user,
86-
password=db_pass,
87-
host=db_host,
88-
port=db_port,
89-
database=db_name
83+
username=db_user, # e.g. "my-database-user"
84+
password=db_pass, # e.g. "my-database-password"
85+
host=db_host, # e.g. "127.0.0.1"
86+
port=db_port, # e.g. 5432
87+
database=db_name # e.g. "my-database-name"
9088
),
9189
# ... Specify additional properties here.
9290
# [END cloud_sql_postgres_sqlalchemy_create_tcp]
@@ -102,25 +100,25 @@ def init_unix_connection_engine(db_config):
102100
# [START cloud_sql_postgres_sqlalchemy_create_socket]
103101
# Remember - storing secrets in plaintext is potentially unsafe. Consider using
104102
# something like https://cloud.google.com/kms/ to help keep secrets secret.
105-
db_user = os.environ.get("DB_USER")
106-
db_pass = os.environ.get("DB_PASS")
107-
db_name = os.environ.get("DB_NAME")
103+
db_user = os.environ["DB_USER"]
104+
db_pass = os.environ["DB_PASS"]
105+
db_name = os.environ["DB_NAME"]
108106
db_socket_dir = os.environ.get("DB_SOCKET_DIR", "/cloudsql")
109-
cloud_sql_connection_name = os.environ.get("CLOUD_SQL_CONNECTION_NAME")
107+
cloud_sql_connection_name = os.environ["CLOUD_SQL_CONNECTION_NAME"]
110108

111109
pool = sqlalchemy.create_engine(
112110
# Equivalent URL:
113111
# postgres+pg8000://<db_user>:<db_pass>@/<db_name>
114112
# ?unix_sock=<socket_path>/<cloud_sql_instance_name>/.s.PGSQL.5432
115113
sqlalchemy.engine.url.URL(
116114
drivername="postgres+pg8000",
117-
username=db_user,
118-
password=db_pass,
119-
database=db_name,
115+
username=db_user, # e.g. "my-database-user"
116+
password=db_pass, # e.g. "my-database-password"
117+
database=db_name, # e.g. "my-database-name"
120118
query={
121119
"unix_sock": "{}/{}/.s.PGSQL.5432".format(
122-
db_socket_dir,
123-
cloud_sql_connection_name)
120+
db_socket_dir, # e.g. "/cloudsql"
121+
cloud_sql_connection_name) # i.e "<PROJECT-NAME>:<INSTANCE-REGION>:<INSTANCE-NAME>"
124122
}
125123
),
126124
# ... Specify additional properties here.

0 commit comments

Comments
 (0)