in tools/mconnect/commands/export/export.go [108:143]
func (c *castExporter) export() error {
ctx := context.Background()
// TODO varify if should be checked
// if err := parser.ValidFileFormat(c.filePath); err != nil {
// return err
// }
client, err := bq.NewClient(ctx, c.projectID, option.WithUserAgent(messages.ExportUserAgent))
if err != nil {
return fmt.Errorf("bigquery.NewClient: %w", err)
}
client.Location = c.location
defer client.Close()
f, err := os.Open(c.filePath)
if err != nil {
return err
}
defer f.Close()
created, err := c.createDataset(ctx, client)
if err != nil {
return err
}
if created {
fmt.Println(messages.DatasetCreated{Name: c.datasetID, Region: c.location})
}
if err := c.createTable(ctx, client, f); err != nil {
return err
}
fmt.Println(messages.TableCreated{Name: c.tableID})
return nil
}