diff --git a/.gitignore b/.gitignore index 7d2b45e1..6c5454b4 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ specs tests.zip package-lock.json .nyc_output/ +.env.* diff --git a/bin/helpers/config.js b/bin/helpers/config.js index 4f94d0a9..6eb3dddb 100644 --- a/bin/helpers/config.js +++ b/bin/helpers/config.js @@ -1,18 +1,20 @@ -var config = {}; -config.env = "prod"; -var hosts = { - prod: { - uploadUrl: `https://api-cloud.browserstack.com/automate-frameworks/cypress/upload`, - rails_host: `https://api.browserstack.com` - } -}; -config.uploadUrl = hosts[config.env].uploadUrl; -config.rails_host = hosts[config.env].rails_host; +var config = require('./config.json'); + +config.env = process.env.NODE_ENV || "production"; + +if(config.env !== "production") { + // load config based on env + require('custom-env').env(config.env); + + config.uploadUrl = process.env.UPLOAD_URL; + config.rails_host = process.env.RAILS_HOST; + config.dashboardUrl = process.env.DASHBOARD_URL; + config.usageReportingUrl = process.env.USAGE_REPORTING_URL; +} + config.cypress_v1 = `${config.rails_host}/automate/cypress/v1`; config.buildUrl = `${config.cypress_v1}/builds/`; config.buildStopUrl = `${config.cypress_v1}/builds/stop/`; -config.dashboardUrl = `https://automate.browserstack.com/dashboard/v2/builds/`; -config.usageReportingUrl = `https://eds.browserstack.com:443/send_event_cy_internal`; config.fileName = "tests.zip"; module.exports = config; diff --git a/bin/helpers/config.json b/bin/helpers/config.json new file mode 100644 index 00000000..dbd6b7a3 --- /dev/null +++ b/bin/helpers/config.json @@ -0,0 +1,6 @@ +{ + "uploadUrl": "https://api-cloud.browserstack.com/automate-frameworks/cypress/upload", + "rails_host": "https://api.browserstack.com", + "dashboardUrl": "https://automate.browserstack.com/dashboard/v2/builds/", + "usageReportingUrl": "https://eds.browserstack.com:443/send_event_cy_internal" +} diff --git a/package.json b/package.json index 6238d93a..07342e6e 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "devDependencies": { "chai": "^4.2.0", "chai-as-promised": "^7.1.1", + "custom-env": "^2.0.1", "mocha": "^7.1.2", "nyc": "^15.0.1", "proxyquire": "^2.1.3",