PM2 ecosystem.config.js вложенные переменные среды - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть переменная env в моем ecosystem.config.js, как это

ORGANIZATION: {
                "b0fd9120-deb7-55t6-b269-c1622a43e9af": {
                     ORG_NAME: "org 1",
                     RAZORPAY: {
                         KEY: 'randomkey1',
                         SECRET:'randomsecret1'
            },
        },
               "ab5003c0-deb7-11e9-334s-c1622ayyy9af": {
                    ORG_NAME: "org 2",
                    RAZORPAY: {
                        KEY: 'randomkey2',
                         SECRET:'randomsecret2'
            },
        }
    },

Завершено ecosystem.config.js выглядит так

module.exports = {

    apps: [

        // First application
        {
            name: 'Myapp',
            script: 'startserver.sh',
            max_memory_restart: '1024M',
            env_production: {
                DATABASE: 'a',
                USERNAME: 'a',
                PASSWORD: 'a',
                HOST: 'd',
                PORT: '2929',
                DB_PORT: '5432',
                ORGANIZATION: {
                    "b0fd9120-deb7-55t6-b269-c1622a43e9af": {
                        ORG_NAME: "org1",
                        RAZORPAY: {
                            KEY: 'dd',
                            SECRET: 'dd'
                        },
                    },
                    "ab5003c0-deb7-11e9-334s-c1622ayyy9af": {
                        ORG_NAME: "org2",
                        RAZORPAY: {
                            KEY: 'dd',
                            SECRET: 'dd'
                        },
                    }
                },
            },

            env_staging: {
                DATABASE: 'a',
                USERNAME: 'a',
                PASSWORD: 'a',
                HOST: 'd',
                PORT: '2929',
                DB_PORT: '5432',
                ORGANIZATION: {
                    "b0fd9120-deb7-55t6-b269-c1622a43e9af": {
                        ORG_NAME: "org1",
                        RAZORPAY: {
                            KEY: 'dd',
                            SECRET: 'dd'
                        },
                    },
                    "ab5003c0-deb7-11e9-334s-c1622ayyy9af": {
                        ORG_NAME: "org2",
                        RAZORPAY: {
                            KEY: 'dd',
                            SECRET: 'dd'
                        },
                    }
                },
            }
        }
    ],
};

startserver.sh работает npm start

Я пытаюсь получить доступ к RAZORPAY.KEY, используя

process.env.ORGANIZATION["b0fd9120-deb7-55t6-b269-c1622a43e9af"].RAZORPAY.KEY

, но не могу получить с ошибкой.

TypeError: Невозможно прочитать свойство 'RAZORPAY'of undefined

Я запускаю мое приложение с pm2 start ecosystem.config.js --env staging --update-env

Доступна любая другая переменная env за пределами ORGANIZATION.

...