[英]How to import private data with GitHub actions?
我正在處理一個涉及多個 API 密鑰的 Node 項目。 我將 API 密鑰存儲在配置文件config.js
。 然后我將config.js
添加到.gitignore
以便 API 密鑰不會在公共存儲庫中顯示。 但是當我嘗試使用 GitHub 操作npm run build
時,出現導入錯誤,因為config.js
不在存儲庫中。
我可以在 GitHub 上以某種方式“模擬” config.js
嗎? 或者我應該設置一個操作來從其他地方下載config.js
嗎? 有沒有更好的方法?
我正在使用 GitHub 的樣板文件nodejs.yml
:
name: Node CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [8.x, 10.x, 12.x]
steps:
- uses: actions/checkout@v1
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- name: npm install, build, and test
run: |
npm install
npm run build --if-present
env:
CI: true
我對 CI/CD 相當陌生。 提前致謝!
更新:我使用下面接受的答案解決了這個問題。 我將config.js
存儲在 GitHub 上的一個秘密變量config
中。 然后我在工作流中添加了一個步驟,在需要之前創建config.js
:
...
- name: create config.js
run: echo '${{ secrets.config }}' > path/to/config.js
- name: npm install, build, and test
...
您可以在 GitHub Actions中以您想要的名稱(例如“ my_secret_key
”)將您的密鑰聲明為秘密
另請參閱“ 創建和使用機密(加密變量) ”
所述密鑰可以在您的config.js
作為變量$my_secret_key
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.