@@ -17,39 +17,33 @@ package spannerdriver
1717import (
1818 "context"
1919 "fmt"
20- "os"
2120
2221 "cloud.google.com/go/spanner"
2322 database "cloud.google.com/go/spanner/admin/database/apiv1"
2423 databasepb "cloud.google.com/go/spanner/admin/database/apiv1/databasepb"
2524 instance "cloud.google.com/go/spanner/admin/instance/apiv1"
2625 instancepb "cloud.google.com/go/spanner/admin/instance/apiv1/instancepb"
26+ "google.golang.org/api/option"
2727 "google.golang.org/grpc/codes"
2828)
2929
30- func autoConfigEmulator (ctx context.Context , host , project , instance , database string ) error {
31- if host == "" {
32- host = "localhost:9010"
33- }
34- if err := os .Setenv ("SPANNER_EMULATOR_HOST" , host ); err != nil {
35- return err
36- }
37- if err := createInstance (project , instance ); err != nil {
30+ func autoConfigEmulator (ctx context.Context , host , project , instance , database string , opts []option.ClientOption ) error {
31+ if err := createInstance (project , instance , opts ); err != nil {
3832 if spanner .ErrCode (err ) != codes .AlreadyExists {
3933 return err
4034 }
4135 }
42- if err := createDatabase (project , instance , database ); err != nil {
36+ if err := createDatabase (project , instance , database , opts ); err != nil {
4337 if spanner .ErrCode (err ) != codes .AlreadyExists {
4438 return err
4539 }
4640 }
4741 return nil
4842}
4943
50- func createInstance (projectId , instanceId string ) error {
44+ func createInstance (projectId , instanceId string , opts []option. ClientOption ) error {
5145 ctx := context .Background ()
52- instanceAdmin , err := instance .NewInstanceAdminClient (ctx )
46+ instanceAdmin , err := instance .NewInstanceAdminClient (ctx , opts ... )
5347 if err != nil {
5448 return err
5549 }
@@ -73,9 +67,9 @@ func createInstance(projectId, instanceId string) error {
7367 return nil
7468}
7569
76- func createDatabase (projectId , instanceId , databaseId string ) error {
70+ func createDatabase (projectId , instanceId , databaseId string , opts []option. ClientOption ) error {
7771 ctx := context .Background ()
78- databaseAdminClient , err := database .NewDatabaseAdminClient (ctx )
72+ databaseAdminClient , err := database .NewDatabaseAdminClient (ctx , opts ... )
7973 if err != nil {
8074 return err
8175 }
0 commit comments