Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用Gitlab和Heroku的CI_Node.js_Heroku_Gitlab_Continuous Deployment_Gitlab Ci - Fatal编程技术网

Node.js 使用Gitlab和Heroku的CI

Node.js 使用Gitlab和Heroku的CI,node.js,heroku,gitlab,continuous-deployment,gitlab-ci,Node.js,Heroku,Gitlab,Continuous Deployment,Gitlab Ci,我正在使用开发我的web应用程序,并将Gitlab用作我的远程git存储库。 我想配置一个连续部署,这样每次推送到主机时,都会执行npm run deploy脚本 在我的本地pc上,执行npm run deploy构建节点应用程序并将其推送到远程herokugit存储库。它使用我电脑上的本地凭据 我已将gitlab runner(在.yml文件中)配置为执行相同的npm run deploy,但它失败,错误为错误:致命:无法读取的用户名'https://git.heroku.com“:没有这样的

我正在使用开发我的web应用程序,并将
Gitlab
用作我的远程git存储库。
我想配置一个连续部署,这样每次推送到主机时,都会执行
npm run deploy
脚本

在我的本地pc上,执行
npm run deploy
构建节点应用程序并将其推送到远程
heroku
git存储库。它使用我电脑上的本地凭据

我已将gitlab runner(在
.yml
文件中)配置为执行相同的
npm run deploy
,但它失败,错误为
错误:致命:无法读取的用户名'https://git.heroku.com“:没有这样的设备或地址
。 我需要找到一种向heroku验证gitlab runner的方法。我试图设置env变量HEROKU\u API\u KEY,但它也不起作用


如何从我的gitlab runner推送到我的heroku git repo?

您应该在yml中使用
dlp
。在
.gitlab ci.yml
中尝试类似的操作:

before_script:
    - apt-get -qq update
    - npm set progress=false
    - npm install --silent

deploy:
    script:
    - npm run deploy
    - apt-get install -yqq ruby ruby-dev --silent
    - gem install dpl
    - dpl --provider=heroku --app=your-app-name --api-key=$HEROKU_API_KEY
    only:
    - master

您希望从GitLab添加环境变量$HEROKU\u API\u KEY,而不是直接在这里添加。

我们可以查看您的
.GitLab ci.yml
文件吗?还可以看到这一点,它是Python,但可能会有所帮助:这里还值得一提的是,您可以在构建的不同阶段使用多个图像。您可以将
image:ruby:latest
添加到部署步骤和
image:node:latest
这允许您使用
artifacts:
在各个阶段之间传递构建的文件,与docker进行切换。