簡體   English   中英

如何使用 GitHub 操作導入私有數據?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM