Fixing folder path in dacpac and schema compare extensions (#7352)

* fixing folder path in dacpac and schema compare extensions

* created method

* import os
This commit is contained in:
Kim Santiago
2019-09-25 15:00:56 -07:00
committed by GitHub
parent f7c468d6f0
commit e3c347e148
4 changed files with 14 additions and 6 deletions

View File

@@ -11,7 +11,7 @@ import * as os from 'os';
import { SchemaCompareMainWindow } from '../schemaCompareMainWindow';
import { promises as fs } from 'fs';
import { Telemetry } from '../telemetry';
import { getEndpointName } from '../utils';
import { getEndpointName, getRootPath } from '../utils';
import * as mssql from '../../../mssql';
const localize = nls.loadMessageBundle();
@@ -314,7 +314,7 @@ export class SchemaCompareDialog {
currentButton.onDidClick(async (click) => {
// file browser should open where the current dacpac is or the appropriate default folder
let rootPath = vscode.workspace.workspaceFolders ? vscode.workspace.workspaceFolders[0].name : os.homedir();
let rootPath = getRootPath();
let defaultUri = endpoint && endpoint.packageFilePath && await exists(endpoint.packageFilePath) ? endpoint.packageFilePath : rootPath;
let fileUris = await vscode.window.showOpenDialog(

View File

@@ -11,7 +11,7 @@ import * as path from 'path';
import * as mssql from '../../mssql';
import { SchemaCompareOptionsDialog } from './dialogs/schemaCompareOptionsDialog';
import { Telemetry } from './telemetry';
import { getTelemetryErrorType, getEndpointName, verifyConnectionAndGetOwnerUri } from './utils';
import { getTelemetryErrorType, getEndpointName, verifyConnectionAndGetOwnerUri, getRootPath } from './utils';
import { SchemaCompareDialog } from './dialogs/schemaCompareDialog';
import { isNullOrUndefined } from 'util';
const localize = nls.loadMessageBundle();
@@ -845,7 +845,7 @@ export class SchemaCompareMainWindow {
this.openScmpButton.onDidClick(async (click) => {
Telemetry.sendTelemetryEvent('SchemaCompareOpenScmpStarted');
const rootPath = vscode.workspace.workspaceFolders ? vscode.workspace.workspaceFolders[0].name : os.homedir();
const rootPath = getRootPath();
let fileUris = await vscode.window.showOpenDialog(
{
canSelectFiles: true,
@@ -942,7 +942,7 @@ export class SchemaCompareMainWindow {
}).component();
this.saveScmpButton.onDidClick(async (click) => {
const rootPath = vscode.workspace.workspaceFolders ? vscode.workspace.workspaceFolders[0].name : os.homedir();
const rootPath = getRootPath();
const filePath = await vscode.window.showSaveDialog(
{
defaultUri: vscode.Uri.file(rootPath),

View File

@@ -6,6 +6,7 @@
import * as azdata from 'azdata';
import * as vscode from 'vscode';
import * as mssql from '../../mssql';
import * as os from 'os';
export interface IPackageInfo {
name: string;
@@ -85,3 +86,10 @@ export async function verifyConnectionAndGetOwnerUri(endpoint: mssql.SchemaCompa
}
return undefined;
}
/**
* Returns the folder open in Explorer if there is one, otherwise returns the home directory
*/
export function getRootPath(): string {
return vscode.workspace.workspaceFolders ? vscode.workspace.workspaceFolders[0].uri.fsPath : os.homedir();
}