【问题标题】:Trigger a React build fail error if environment variable is missing如果缺少环境变量,则触发 React 构建失败错误
【发布时间】:2022-11-02 14:45:45
【问题描述】:

如果缺少任何环境变量,有什么方法可以使yarn build 步骤失败。在 bitbucket 管道脚本中,即使没有在存储库变量下设置环境变量,构建过程也会执行。

【问题讨论】:

    标签: reactjs deployment build hadoop-yarn bitbucket-pipelines


    【解决方案1】:

    是的,这可以使用 React 应用程序中的方法来实现。在根目录中创建一个名为 validate-env.js 的 JS 文件并在其中添加以下内容(我在我的应用程序中仅使用这些环境变量 - 根据您的更改它们)

    require('dotenv').config();
    
    if (!process.env.REACT_APP_WEB_SOCKET_URL) {
      throw 'REACT_APP_WEB_SOCKET_URL undefined';
    } else if (!process.env.REACT_APP_API_URL_PROD) {
      throw 'REACT_APP_API_URL_PROD undefined';
    } else if (!process.env.REACT_APP_NODE_ENV) {
      throw 'REACT_APP_NODE_ENV undefined';
    } else if (!process.env.REACT_APP_CATE_APP) {
      throw 'REACT_APP_CATERING_APP undefined';
    } else if (!process.env.REACT_APP_FRESH_CHAT_TOKEN) {
      throw 'REACT_APP_FRESH_CHAT_TOKEN undefined';
    } else if (!process.env.REACT_APP_SENTRY_DSN_KEY) {
      throw 'REACT_APP_SENTRY_DSN_KEY undefined';
    } else {
      console.log('required env set');
    }
    

    确保将开发依赖项安装为yarn add dotenv -D

    现在在 package.json 文件 > script 部分下添加这一行

    "validate-env": "node ./validate-env",
    

    并将构建脚本更新为(如果您使用的是 craco)

    "build": "yarn validate-env && craco build",
    

    因此,无论何时您将运行 yarn build。它将首先检查是否所有环境都存在。如果有人丢失,它将使构建过程失败。

    【讨论】:

      猜你喜欢
      • 2020-10-02
      • 1970-01-01
      • 1970-01-01
      • 2017-02-04
      • 2013-08-14
      • 1970-01-01
      • 2021-09-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多