sync catalog.
(ctx context.Context)
| 26 | |
| 27 | // sync catalog. |
| 28 | func (d *Driver) SyncDBSchema(ctx context.Context) (*storepb.DatabaseSchemaMetadata, error) { |
| 29 | // return nothing if no catalogs are specified. |
| 30 | if d.curCatalog == "" { |
| 31 | return nil, nil |
| 32 | } |
| 33 | |
| 34 | // fetch table data from databricks. |
| 35 | catalogMap, err := d.listCatologTables(ctx, d.curCatalog) |
| 36 | if err != nil { |
| 37 | return nil, err |
| 38 | } |
| 39 | |
| 40 | dbMetadataMeta := storepb.DatabaseSchemaMetadata{} |
| 41 | schemaMap, ok := (catalogMap)[d.curCatalog] |
| 42 | if !ok { |
| 43 | return nil, errors.Errorf("cannot find metadata for catalog '%s'", d.curCatalog) |
| 44 | } |
| 45 | |
| 46 | dbMetadataMeta.Name = d.curCatalog |
| 47 | schemas := convertToStorepbSchemas(schemaMap) |
| 48 | dbMetadataMeta.Schemas = schemas |
| 49 | |
| 50 | return &dbMetadataMeta, nil |
| 51 | } |
| 52 | |
| 53 | func (d *Driver) SyncInstance(ctx context.Context) (*db.InstanceMetadata, error) { |
| 54 | instanceMetadata := &db.InstanceMetadata{} |
nothing calls this directly
no test coverage detected