diff --git a/packages/api/src/main.js b/packages/api/src/main.js index d262f552f..546bf0ed2 100644 --- a/packages/api/src/main.js +++ b/packages/api/src/main.js @@ -78,6 +78,8 @@ function start() { app.use(getExpressPath('/'), express.static('/home/dbgate-docker/public')); } else if (platformInfo.isAwsUbuntuLayout) { app.use(getExpressPath('/'), express.static('/home/ubuntu/build/public')); + } else if (platformInfo.isAzureUbuntuLayout) { + app.use(getExpressPath('/'), express.static('/home/azureuser/build/public')); } else if (processArgs.runE2eTests) { app.use(getExpressPath('/'), express.static(path.resolve('packer/build/public'))); } else if (platformInfo.isNpmDist) { @@ -140,6 +142,10 @@ function start() { const port = process.env.PORT || 3000; logger.info(`DbGate API listening on port ${port} (AWS AMI build)`); server.listen(port); + } else if (platformInfo.isAzureUbuntuLayout) { + const port = process.env.PORT || 3000; + logger.info(`DbGate API listening on port ${port} (Azure VM build)`); + server.listen(port); } else if (platformInfo.isNpmDist) { getPort({ port: parseInt( diff --git a/packages/api/src/utility/directories.js b/packages/api/src/utility/directories.js index 1038382f3..c6c9716d3 100644 --- a/packages/api/src/utility/directories.js +++ b/packages/api/src/utility/directories.js @@ -82,6 +82,9 @@ function packagedPluginsDir() { if (platformInfo.isAwsUbuntuLayout) { return '/home/ubuntu/build/plugins'; } + if (platformInfo.isAzureUbuntuLayout) { + return '/home/azureuser/build/plugins'; + } if (platformInfo.isNpmDist) { // node_modules return global['PLUGINS_DIR']; diff --git a/packages/api/src/utility/hardwareFingerprint.js b/packages/api/src/utility/hardwareFingerprint.js index 08f42bc86..1be04fbb2 100644 --- a/packages/api/src/utility/hardwareFingerprint.js +++ b/packages/api/src/utility/hardwareFingerprint.js @@ -73,6 +73,7 @@ async function getPublicHardwareFingerprint() { region: fingerprint.region, isDocker: platformInfo.isDocker, isAwsUbuntuLayout: platformInfo.isAwsUbuntuLayout, + isAzureUbuntuLayout: platformInfo.isAzureUbuntuLayout, isElectron: platformInfo.isElectron, }, }; diff --git a/packages/api/src/utility/platformInfo.js b/packages/api/src/utility/platformInfo.js index 3fd34dee5..8c9348547 100644 --- a/packages/api/src/utility/platformInfo.js +++ b/packages/api/src/utility/platformInfo.js @@ -15,6 +15,7 @@ const isNpmDist = !!global['IS_NPM_DIST']; const isDbModel = !!global['IS_DB_MODEL']; const isForkedApi = processArgs.isForkedApi; const isAwsUbuntuLayout = fs.existsSync('/home/ubuntu/build/public'); +const isAzureUbuntuLayout = fs.existsSync('/home/azureuser/build/public'); // function moduleAvailable(name) { // try { @@ -57,6 +58,7 @@ const platformInfo = { allowConnectionFromEnvVariables: !!isDbModel, defaultKeyfile: path.join(os.homedir(), '.ssh/id_rsa'), isAwsUbuntuLayout, + isAzureUbuntuLayout, }; module.exports = platformInfo;