一、环境变量
1.1 为什么需要环境变量?
- 安全性:诸如 API 密钥之类的东西不应在代码中以纯文本形式出现;
- 灵活性:减少条件语句判断。如:
如果是生产环境,则执行X,否则如果是测试环境,则执行Y;否则如果是本地环境,则执行Z…
;
除了默认的环境变量外,还可以设置自定义环境变量。如果想使用自定义环境变量,则需要创建一个 .env
文件。.env
文件可以认为是纯文本文件,通常放置在项目的根目录中。下面是一个 .env
文件的示例:
# API
API_TOKEN=myUniqueApiToken
# Database
DATABASE_NAME=myDatabaseName
1.2 如何在 Node 中使用自定义环境变量
- 创建
.env
文件。通常该文件存放在项目的根目录中。 - 安装
dotenv
包:npm install dotenv
。dotenv
包可以轻松地从.env
文件中加载环境变量。 - 在项目中要尽**早**地完成
dotenv
包的加载:require('dotenv').config({})
。
通常,我们会在 .env
文件中存放一些敏感的密钥信息,并且不会将其托管到版本仓库中。为了方便其他开发人员了解环境变量文件配置,会在版本仓库中创建一个 example.env
示例文件。
如图所示,.env
文件并没有托管到版本仓库,那么在生成环境中 Jenkins 针对缺失的 .env
文件,又该如何进行配置呢?下面简单地讲一下 Jenkins 的配置。
二、配置 Jenkins
- 安装
Config File Provider Plugin
插件。 - 待插件安装成功后。点击左侧菜单栏“系统管理”,选择
Managed files
。
- 选择创建新的配置文件。
- 选择配置文件的类型。此处选择
Custom file
,然后点击 Submit 按钮。
- 编辑配置文件内容。
- 回到当前 Jenkins 任务中,配置当前任务的构建环境。
其中:
Target
表示在复制配置文件log-server-prod
的过程中生成的新文件名,如下图所示:
- 对当前 Jenkins 任务进行构建。构建完毕后,点击左侧菜单栏“工作空间”,就可以发现
.env
环境变量配置文件出现在了工作空间目录中。
至此,就完成了整个Jenkins任务的配置。