gpt4 book ai didi

javascript - 使用 GitLab 持续部署 NodeJS

转载 作者:IT老高 更新时间:2023-10-28 23:07:33 33 4
gpt4 key购买 nike

我有一个用 NodeJS 开发的 API,并通过 .gitlab-ci.yml 文件成功设置了持续集成。如果所有测试都在 master 分支上通过,下一阶段是设置持续部署到 Heroku。

有很多教程涵盖了 Ruby 和 Python 应用程序的部署,但没有关于 NodeJS 的教程。目前我的 .gitlab-ci.yml 文件如下所示:

image: node:latest

job1:
script: "ls -l"

test:
script: "npm install;npm test"

production:
type: deploy
script:
- npm install
- npm start
- gem install dpl
- dpl --provider=heroku --app=my-first-nodejs --api-key=XXXXXXXXXX
only:
- master

Ruby 和 Python 教程使用 dpl 工具进行部署,但部署后如何在服务器上启动 NodeJS 脚本?

添加生产部分并将其推送后,测试运行并通过,但部署阶段卡在待处理状态。控制台是空白的。有人为 NodeJS 设置了成功的 CD 脚本吗?

最佳答案

您可以使用更简单的 YAML 脚本,在其中定义 CI 的阶段(在生产部署之前运行测试),然后可以在 Heroku 部署阶段使用不同的镜像。因此,对于 Node 应用程序,您将默认图像定义为 Node :最新。然后对于使用 dpl 的生产部署,您可以使用 ruby​​ 镜像。

image: node:latest

stages:
- job1
- test
- production

job1:
stage: job1
script: "ls -l"

test:
stage: test
script:
- npm install
- npm test
artifacts:
paths:
- dist/

production:
type: deploy
stage: production
image: ruby:latest
script:
- apt-get update -qy
- apt-get install -y ruby-dev
- gem install dpl
- dpl --provider=heroku --app=my-first-nodejs --api-key=XXXXXXXXXX
only:
- master

关于javascript - 使用 GitLab 持续部署 NodeJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35452878/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com