代码之家  ›  专栏  ›  技术社区  ›  Sammy

使用无服务器dotenv插件更正.env文件

  •  1
  • Sammy  · 技术社区  · 6 年前

    serverless-dotenv-plugin 插件配置:

    custom: dotenv: path: .env-${opt:stage, 'local'}

    .env .env.staging 使用时归档 staging

    我不知道这是怎么反映的 path

    2 回复  |  直到 6 年前
        2
  •  1
  •   Incinerator    6 年前

    dotenv

    serverless.yaml stage dev

    provider: 
      stage: ${opt:stage, 'dev'}
      environment:
        FOO: ${file(./config.${self:provider.stage}.js):getEnvVars.FOO}
        BAR: ${file(./config.${self:provider.stage}.js):getEnvVars.BAR}
    

    .env file

    config.dev.js

    require('dotenv').config({path: __dirname + '/dev.env'});
    const config = require('./environmentVariables.js');
    module.exports.getEnvVars = config.getEnvVars;
    

    config.staging.js

    require('dotenv').config({path: __dirname + '/staging.env'});
    const config = require('./environmentVariables.js');
    module.exports.getEnvVars = config.getEnvVars;
    

    environmentVariables.js

    module.exports.getEnvVars = () => ({
        FOO: process.env.FOO,
        BAR: process.env.BAR
    });
    

    .env dev.env production.env

    FOO=foo
    BAR=bar