使用 gitlab ci cd pipeline 时访问 Node js 应用程序中的环境变量

gAN*_*ALF 9 continuous-integration node.js gitlab pm2

我正在使用 gitlab ci cd 管道将我的应用程序部署到 ubuntu 服务器。我有不同的 .env 文件用于本地和开发环境,并且它不是 git repo 的一部分(包含在 gitignore 中)如何在部署到 ubuntu 服务器时在我的应用程序中获取环境变量

我的 gitlab-ci.yml

stages:
     - deploy
cache:
  paths:
    - node_modules/
deploy:
    stage: deploy
    script:
      - npm install
      - sudo pm2 delete lknodeapi || true
      - sudo pm2 start server.js --name lknodeapi
  
Run Code Online (Sandbox Code Playgroud)

Shu*_*ubh 12

我猜你正在寻找这个 - Create Variables Gitlab。你可以在 ui 中创建环境变量,然后gitlab-ci.yml像下面这样更改

stages:
     - deploy
cache:
  paths:
    - node_modules/
deploy:
    stage: deploy
    script:
      - echo "NGINX_REPO_KEY"=$NGINX_REPO_KEY >> ".env"
      - npm install
      - sudo pm2 delete lknodeapi || true
      - sudo pm2 start server.js --name lknodeapi
Run Code Online (Sandbox Code Playgroud)

这将在根文件夹中创建一个 .env 文件并将变量放入其中。