2019-02-04 11:42:31 +00:00
|
|
|
const path = require('path');
|
2019-11-28 18:01:52 +01:00
|
|
|
const fs = require('fs');
|
2019-02-04 11:42:31 +00:00
|
|
|
|
2020-11-27 16:32:50 +01:00
|
|
|
// PIPELINE_ENV is 'true' in the build pipeline
|
|
|
|
if (process.env.PIPELINE_ENV !== 'true') {
|
|
|
|
const envPath = path.resolve(__dirname, '../.env');
|
|
|
|
if (!fs.existsSync(envPath)) {
|
|
|
|
throw Error('.env not found, please copy sample.env to .env.');
|
|
|
|
}
|
|
|
|
require('dotenv').config({ path: envPath });
|
2019-02-04 11:42:31 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
const {
|
|
|
|
HOME_LOCATION: home,
|
|
|
|
API_LOCATION: api,
|
|
|
|
FORUM_LOCATION: forum,
|
2019-02-05 20:28:45 +00:00
|
|
|
NEWS_LOCATION: news,
|
2019-02-04 11:42:31 +00:00
|
|
|
LOCALE: locale,
|
2019-11-13 19:40:49 +05:30
|
|
|
STRIPE_PUBLIC_KEY: stripePublicKey,
|
2019-10-04 18:03:20 +02:00
|
|
|
ALGOLIA_APP_ID: algoliaAppId,
|
2020-03-13 12:25:57 +03:00
|
|
|
ALGOLIA_API_KEY: algoliaAPIKey,
|
2020-03-23 19:33:37 +05:30
|
|
|
PAYPAL_CLIENT_ID: paypalClientId,
|
2020-09-04 22:29:29 +03:00
|
|
|
DEPLOYMENT_ENV: deploymentEnv,
|
|
|
|
SHOW_UPCOMING_CHANGES: showUpcomingChanges
|
2019-02-04 11:42:31 +00:00
|
|
|
} = process.env;
|
|
|
|
|
|
|
|
const locations = {
|
|
|
|
homeLocation: home,
|
|
|
|
apiLocation: api,
|
2019-02-05 20:28:45 +00:00
|
|
|
forumLocation: forum,
|
2020-08-21 03:59:27 +05:30
|
|
|
newsLocation: news
|
2019-02-04 11:42:31 +00:00
|
|
|
};
|
|
|
|
|
2019-10-04 18:03:20 +02:00
|
|
|
module.exports = Object.assign(locations, {
|
|
|
|
locale,
|
2020-03-23 19:33:37 +05:30
|
|
|
deploymentEnv,
|
2020-08-20 01:52:59 +06:00
|
|
|
environment: process.env.FREECODECAMP_NODE_ENV || 'development',
|
2019-11-29 21:11:31 +01:00
|
|
|
stripePublicKey:
|
|
|
|
!stripePublicKey || stripePublicKey === 'pk_from_stripe_dashboard'
|
|
|
|
? null
|
|
|
|
: stripePublicKey,
|
2019-10-08 10:19:43 +02:00
|
|
|
algoliaAppId:
|
2020-09-25 21:10:17 +02:00
|
|
|
!algoliaAppId || algoliaAppId === 'app_id_from_algolia_dashboard'
|
2019-10-08 10:19:43 +02:00
|
|
|
? null
|
|
|
|
: algoliaAppId,
|
|
|
|
algoliaAPIKey:
|
2020-09-25 21:10:17 +02:00
|
|
|
!algoliaAPIKey || algoliaAPIKey === 'api_key_from_algolia_dashboard'
|
2019-10-08 10:19:43 +02:00
|
|
|
? null
|
2020-03-13 12:25:57 +03:00
|
|
|
: algoliaAPIKey,
|
|
|
|
paypalClientId:
|
|
|
|
!paypalClientId || paypalClientId === 'id_from_paypal_dashboard'
|
|
|
|
? null
|
2020-09-04 22:29:29 +03:00
|
|
|
: paypalClientId,
|
2020-09-25 21:10:17 +02:00
|
|
|
showUpcomingChanges: showUpcomingChanges === 'true'
|
2019-10-04 18:03:20 +02:00
|
|
|
});
|