Sih*_*Kim 10 continuous-integration node.js github-actions
我正在尝试使用 github 操作为我的 node.js 服务器构建 CI 管道。
我只需要解决一个问题。我需要设置环境变量,以便我的 node.js 服务器可以通过访问 env 变量process.env
下面是 github 操作工作流文件。
name: Build and Deploy to GKE
on:
pull_request:
branches:
- master
# Environment variables available to all jobs and steps in this workflow
env:
ENGINE_API_KEY: ${{ secrets.ENGINE_API_KEY }}
jobs:
setup-build-publish-deploy:
name: Setup, Build, Publish, and Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Apollo Schema Update
env:
ENGINE_API_KEY: ${{ secrets.ENGINE_API_KEY }}
run: |
sudo npm install
sudo npm install -g apollo
sudo npm run dev &
sleep 3
sudo apollo service:push --serviceURL=http://auth-cluster-ip-service --serviceName=auth --tag=master --endpoint=http://localhost:3051
Run Code Online (Sandbox Code Playgroud)
我曾尝试在工作流级别和作业级别都声明环境变量,但是当 I 时console.log(process.env.ENGINE_API_KEY),它返回undefined.
我也试过ENGINE_API_KEY=$ENGINE_API_KEY npm run dev &代替npm run dev &. 这适用于我的 macbook,但使用 github 操作,它仍然返回undefined.
(我确实在设置中存储了 ENGINE_API_KEY -> 秘密。对其他变量工作正常)
kac*_*ow6 13
创建一个.env可由您的节点服务器读取的文件,并以这种方式传递您的存储库机密。这应该在您的结帐步骤之后完成:
- name: create env file
run: |
touch .env
echo ENGINE_API_KEY =${{ secrets.ENGINE_API_KEY }} >> .env
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5106 次 |
| 最近记录: |