Merge pull request #1214 from chaotixkilla/fix-prod-environment-file-path

Fix .env path on production environments
This commit is contained in:
Rafael Taranto 2022-05-18 07:29:32 +01:00 committed by GitHub
commit 6cabf7b412
21 changed files with 24 additions and 55 deletions

View file

@ -1,11 +1,9 @@
#!/usr/bin/env node
const path = require('path')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
var pgp = require('pg-promise')()
require('../lib/environment-helper')
const { PSQL_URL } = require('../lib/constants')
var db = pgp(PSQL_URL)

View file

@ -2,9 +2,7 @@
'use strict'
const path = require('path')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const setEnvVariable = require('../tools/set-env-var')

View file

@ -1,7 +1,6 @@
#!/usr/bin/env node
const path = require('path')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const hdkey = require('ethereumjs-wallet/hdkey')
const hkdf = require('futoin-hkdf')
const db = require('../lib/db')

View file

@ -1,9 +1,7 @@
#!/usr/bin/env node
const _ = require('lodash/fp')
const path = require('path')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const db = require('../lib/db')
const migrate = require('../lib/migrate')
const { asyncLocalStorage, defaultStore } = require('../lib/async-storage')

View file

@ -1,9 +1,7 @@
#!/usr/bin/env node
const fs = require('fs')
const os = require('os')
const path = require('path')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const MNEMONIC_PATH = process.env.MNEMONIC_PATH

View file

@ -2,12 +2,9 @@
'use strict'
const os = require('os')
require('../lib/environment-helper')
const setEnvVariable = require('../tools/set-env-var')
const path = require('path')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
if (!process.env.OFAC_SOURCES_NAMES && !process.env.OFAC_SOURCES_URLS) {
setEnvVariable('OFAC_SOURCES_NAMES', 'sdn_advanced,cons_advanced')
setEnvVariable('OFAC_SOURCES_URLS', 'https://www.treasury.gov/ofac/downloads/sanctions/1.0/sdn_advanced.xml,https://www.treasury.gov/ofac/downloads/sanctions/1.0/cons_advanced.xml')

View file

@ -2,11 +2,8 @@
const fs = require('fs')
const hkdf = require('futoin-hkdf')
const os = require('os')
const path = require('path')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const mnemonicHelpers = require('../lib/mnemonic-helpers')
const MNEMONIC_PATH = process.env.MNEMONIC_PATH

View file

@ -1,8 +1,6 @@
#!/usr/bin/env node
const path = require('path')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const { asyncLocalStorage, defaultStore } = require('../lib/async-storage')
const userManagement = require('../lib/new-admin/graphql/modules/userManagement')
const authErrors = require('../lib/new-admin/graphql/errors/authentication')

View file

@ -5,11 +5,11 @@
const fs = require('fs')
const path = require('path')
const os = require('os')
require('../lib/environment-helper')
const mnemonicHelpers = require('../lib/mnemonic-helpers')
const setEnvVariable = require('../tools/set-env-var')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
if (!process.env.MNEMONIC_PATH && process.env.SEED_PATH) {
const seed = fs.readFileSync(process.env.SEED_PATH, 'utf8').trim()
const mnemonic = mnemonicHelpers.fromSeed(seed)

View file

@ -4,10 +4,7 @@
const pgp = require('pg-promise')()
const os = require('os')
const path = require('path')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const { PSQL_URL } = require('../lib/constants')
const db = pgp(PSQL_URL)

View file

@ -1,9 +1,6 @@
#!/usr/bin/env node
const path = require('path')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const login = require('../lib/admin/login')
const name = process.argv[2]

View file

@ -6,9 +6,9 @@ const fs = require('fs')
const path = require('path')
const os = require('os')
const bip39 = require('bip39')
const setEnvVariable = require('../tools/set-env-var')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const setEnvVariable = require('../tools/set-env-var')
if (process.env.MNEMONIC_PATH && !process.env.SEED_PATH) {
const mnemonic = fs.readFileSync(process.env.MNEMONIC_PATH, 'utf8')

View file

@ -1,12 +1,9 @@
const fs = require('fs')
const path = require('path')
const http = require('http')
const https = require('https')
const argv = require('minimist')(process.argv.slice(2))
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('./environment-helper')
const { asyncLocalStorage, defaultStore } = require('./async-storage')
const routes = require('./routes')
const logger = require('./logger')

View file

@ -0,0 +1,2 @@
const path = require('path')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve('/etc', 'lamassu', '.env') : path.resolve(__dirname, '../.env') })

View file

@ -57,7 +57,7 @@ function updateOptionBasepath (result, optionName) {
async function run () {
// load current opts
const options = load().opts
const shouldMigrate = !fs.existsSync(process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env'))
const shouldMigrate = !fs.existsSync(process.env.NODE_ENV === 'production' ? path.resolve('/etc', 'lamassu', '.env') : path.resolve(__dirname, '../.env'))
// write the resulting .env
if (shouldMigrate) {

View file

@ -10,11 +10,8 @@ const nocache = require('nocache')
const cookieParser = require('cookie-parser')
const { graphqlUploadExpress } = require('graphql-upload')
const { ApolloServer } = require('apollo-server-express')
const _ = require('lodash/fp')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../../.env') })
require('../environment-helper')
const { asyncLocalStorage, defaultStore } = require('../async-storage')
const logger = require('../logger')

View file

@ -1,10 +1,7 @@
const express = require('express')
const path = require('path')
const { ApolloServer } = require('apollo-server-express')
const os = require('os')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../../.env') })
require('../environment-helper')
const { typeDefs, resolvers } = require('./graphql/schema')
const logger = require('../logger')

View file

@ -4,7 +4,7 @@ const os = require('os')
const argv = require('minimist')(process.argv.slice(2))
const _ = require('lodash/fp')
require('dotenv').config({ path: process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env') })
require('./environment-helper')
const DATABASE = process.env.LAMASSU_DB ?? 'PROD'
const dbMapping = psqlConf => ({

View file

@ -13,7 +13,7 @@ if (!_.isEqual(_.intersection(_.keys(argv), requiredParams), requiredParams)) {
process.exit(2)
}
fs.copyFileSync(path.resolve(__dirname, '../.sample.env'), process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env'))
fs.copyFileSync(path.resolve(__dirname, '../.sample.env'), process.env.NODE_ENV === 'production' ? path.resolve('/etc', 'lamassu', '.env') : path.resolve(__dirname, '../.env'))
setEnvVariable('POSTGRES_USER', 'lamassu_pg')
setEnvVariable('POSTGRES_PASSWORD', `${argv['db-password']}`)

View file

@ -1,7 +1,6 @@
#!/usr/bin/env node
const path = require('path')
require('dotenv').config({ path: path.resolve(__dirname, '../.env') })
require('../lib/environment-helper')
const db = require('../lib/db')
const getCount = () => {

View file

@ -3,7 +3,7 @@ const os = require('os')
const path = require('path')
const setEnvVariable = (key, value) => {
const ENV_PATH = process.env.NODE_ENV === 'production' ? path.resolve(os.homedir(), '.lamassu', '.env') : path.resolve(__dirname, '../.env')
const ENV_PATH = process.env.NODE_ENV === 'production' ? path.resolve('/etc', 'lamassu', '.env') : path.resolve(__dirname, '../.env')
const ENV_VARIABLES = fs.readFileSync(ENV_PATH, 'utf-8').split(os.EOL)
const target = ENV_VARIABLES.indexOf(ENV_VARIABLES.find(line => line.match(new RegExp(`^${key}=`))))