node.js - 在 travis yml 配置中从 json 文件设置全局环境变量?
问题描述
当从发布标签触发时,我试图从 json 文件中设置以下 env 变量。
.travis.yml
env:
global:
- PACKAGE_VERSION=$(if [ -n "$TRAVIS_TAG" ]; then node -p require('./meta.json').deploy_version; else echo "next"; fi)
但是 Travis 在构建时给出了这些错误:
$ export PACKAGE_VERSION=$(if [ -n "$TRAVIS_TAG" ]; then node -p require('./meta.json')
/home/travis/.travis/functions: eval: line 104: unexpected EOF while looking for matching `)'
/home/travis/.travis/functions: eval: line 105: syntax error: unexpected end of file
元.json
{
"version": "3.0.0",
"deploy_version": "v3"
}
我想在从标签/发布触发时PACKAGE_VERSION
设置为,否则设置为.v3
PACKAGE_VERSION
next
提前感谢您提供的任何帮助!
解决方案
我被困在同一个问题上,能够通过将节点位移动到它自己的脚本中来使其工作,如下所示:
文件版本.js
const {version} = require("./package.json");
console.log(version);
在 travis.yml
env:
global:
- PACKAGE_VERSION=$(node ver -p)
推荐阅读
- android - 当图像保存为位图时,OpenCV 矩形是黑色的
- linux - 澄清“./configure”选项“--build”、“--host”和“--target”
- java - JDBC-SQL 异常-用尽的结果集
- c++ - 将数组值与 if 语句中的 int 值进行比较
- php - 如何使用 PHP 访问 JSON 对象
- c++ - ExtractIconEx:有效但偶尔会崩溃
- php - SQLSTATE[22007]:无效的日期时间格式:1366 整数值不正确
- javascript - 我如何获得数组的每个用户的存储库数量?
- html - 如何设置 HTML 的宽度
- python - 在日期之后对数组进行排序