mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-01-16 01:25:36 -05:00
load publish profile sqlcmd "value" tag and throw error if not loaded correctly (#11615)
* load publish profile sqlcmd "value" tag and throw error if not loaded correctly * moved the read profile function to utils
This commit is contained in:
@@ -78,6 +78,7 @@ export const dataSourceDropdownTitle = localize('dataSourceDropdownTitle', "Data
|
||||
export const noDataSourcesText = localize('noDataSourcesText', "No data sources in this project");
|
||||
export const loadProfileButtonText = localize('loadProfileButtonText', "Load Profile...");
|
||||
export const profileWarningText = localize('profileWarningText', "⚠ Warning: Connection strings using AAD Authentication are not supported at this time");
|
||||
export const profileReadError = localize('profileReadError', "Could not load the profile file.");
|
||||
export const sqlCmdTableLabel = localize('sqlCmdTableLabel', "SQLCMD Variables");
|
||||
export const sqlCmdVariableColumn = localize('sqlCmdVariableColumn', "Variable");
|
||||
export const sqlCmdValueColumn = localize('sqlCmdValueColumn', "Value");
|
||||
@@ -158,6 +159,7 @@ export const Version = 'Version';
|
||||
export const PrivateAssets = 'PrivateAssets';
|
||||
export const SqlCmdVariable = 'SqlCmdVariable';
|
||||
export const DefaultValue = 'DefaultValue';
|
||||
export const Value = 'Value';
|
||||
export const ArtifactReference = 'ArtifactReference';
|
||||
export const SuppressMissingDependenciesErrors = 'SuppressMissingDependenciesErrors';
|
||||
export const DatabaseVariableLiteralValue = 'DatabaseVariableLiteralValue';
|
||||
|
||||
@@ -127,12 +127,18 @@ export function convertSlashesForSqlProj(filePath: string): string {
|
||||
*/
|
||||
export function readSqlCmdVariables(xmlDoc: any): Record<string, string> {
|
||||
let sqlCmdVariables: Record<string, string> = {};
|
||||
for (let i = 0; i < xmlDoc.documentElement.getElementsByTagName(constants.SqlCmdVariable).length; i++) {
|
||||
for (let i = 0; i < xmlDoc.documentElement.getElementsByTagName(constants.SqlCmdVariable)?.length; i++) {
|
||||
const sqlCmdVar = xmlDoc.documentElement.getElementsByTagName(constants.SqlCmdVariable)[i];
|
||||
const varName = sqlCmdVar.getAttribute(constants.Include);
|
||||
|
||||
const varValue = sqlCmdVar.getElementsByTagName(constants.DefaultValue)[0].childNodes[0].nodeValue;
|
||||
sqlCmdVariables[varName] = varValue;
|
||||
if (sqlCmdVar.getElementsByTagName(constants.DefaultValue)[0] !== undefined) {
|
||||
// project file path
|
||||
sqlCmdVariables[varName] = sqlCmdVar.getElementsByTagName(constants.DefaultValue)[0].childNodes[0].nodeValue;
|
||||
}
|
||||
else {
|
||||
// profile path
|
||||
sqlCmdVariables[varName] = sqlCmdVar.getElementsByTagName(constants.Value)[0].childNodes[0].nodeValue;
|
||||
}
|
||||
}
|
||||
|
||||
return sqlCmdVariables;
|
||||
|
||||
Reference in New Issue
Block a user