[英]Accessing Kubernetes "secret" environment variables from a node.js app
[英]Accessing Travis Secure Environment Variables Node.js/PostgreSQL
我有一個數據庫uri,我想在我的travis yml文件中保護。 我按照travis文檔加密以下環境變量:PROD_DB_URI = MY_DB_URI
然后我用我希望有權訪問的新環境變量替換了我的實際數據庫文件中的URI。
這是我添加它的地方:
const Sequelize = require('sequelize');
let privateKey;
if (process.env.PROD_DB_URI) {
privateKey = process.env.PROD_DB_URI;
} else {
privateKey = require('./../../testingKeys.js').dbKey;
}
const DB = new Sequelize(privateKey);
我的travis yml文件如下所示:
language: node_js
node_js:
- '4'
env:
global:
- CXX=g++-4.8
- secure: s6/R8v6Nxe8Vw0gnge+0/...
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
after_success: npm run coverage
我嘗試運行travis,它無法看到加密的PROD_DB_URI變量,並說它未定義。 我甚至查看了travis日志,當它導出環境變量時,它不會顯示解密變量。 日志顯示:
Setting environment variables from .travis.yml
$ export CXX=g++-4.8
沒有其他變量被導出。 我還檢查過process.env.TRAVIS_SECURE_ENV_VARS是否返回true,它是。
我還在travis文檔中看到,您還可以在其儀表板中添加環境變量。 我在儀表板中添加了鍵值對作為PROD_DB_URI = MY_DB_URI。 特拉維斯再次說它未定義。
有什么東西我錯過了嗎? 我沒有正確訪問安全環境變量嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.