in src/AzureSqlActionHelper.ts [261:292]
private static async _getSqlPackageInVSDacDirectory(dacParentDir: string): Promise<ISqlPackageInstall> {
if (fs.existsSync(dacParentDir)) {
let dacVersionDirs = fs.readdirSync(dacParentDir).filter((dir) => !isNaN(path.basename(dir) as any)).sort((dir1, dir2) => {
let version1 = path.basename(dir1);
let version2 = path.basename(dir2);
if (version1 > version2) {
return -1;
}
else if (version1 < version2) {
return 1;
}
else {
return 0;
}
}).map((dir) => path.join(dacParentDir, dir));
for (let dacDir of dacVersionDirs) {
let sqlPackagePath = path.join(dacDir, 'SqlPackage.exe');
if (fs.existsSync(sqlPackagePath)) {
let sqlPackageVersion = await this._getSqlPackageExecutableVersion(sqlPackagePath);
core.debug(`Dac Framework version ${sqlPackageVersion} installed with Visual Studio found at ${sqlPackagePath}`);
return {
sqlPackagePath: sqlPackagePath,
sqlPackageVersion: sqlPackageVersion
};
}
}
}
return this._emptySqlPackageInstall();
}