Documentation
¶
Overview ¶
Package cloudpostgres provides connections to managed PostgreSQL Cloud SQL instances. See https://cloud.google.com/sql/docs/postgres/ for more information.
Example ¶
package main
import (
"context"
"gocloud.dev/gcp"
"gocloud.dev/gcp/cloudsql"
"gocloud.dev/postgres/cloudpostgres"
"golang.org/x/oauth2"
"golang.org/x/oauth2/google"
)
func main() {
ctx := context.Background()
creds, err := google.FindDefaultCredentials(ctx, "https://www.googleapis.com/auth/cloud-platform")
if err != nil {
panic(err)
}
authClient := gcp.HTTPClient{Client: *oauth2.NewClient(ctx, creds.TokenSource)}
db, err := cloudpostgres.Open(ctx, cloudsql.NewCertSource(&authClient), &cloudpostgres.Params{
// Replace these with your actual settings.
ProjectID: "example-project",
Region: "us-central1",
Instance: "my-instance01",
User: "myrole",
Database: "test",
})
if err != nil {
panic(err)
}
// Use database in your program.
db.Exec("CREATE TABLE foo (bar INT);")
}
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Params ¶
type Params struct {
// ProjectID is the project the instance is located in.
ProjectID string
// Region is the region the instance is located in.
Region string
// Instance is the name of the instance.
Instance string
// User is the database user to connect as.
User string
// Password is the database user password to use.
Password string
// Database is the PostgreSQL database name to connect to.
Database string
// Values sets additional parameters, as documented in
// https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-PARAMKEYWORDS.
Values url.Values
// TraceOpts contains options for OpenCensus.
TraceOpts []ocsql.TraceOption
}
Params specifies how to connect to a Cloud SQL database.
Click to show internal directories.
Click to hide internal directories.