使用Codeship在Heroku上部署Angular-fullstack应用程序

时间:2016-05-30 13:37:57

标签: heroku deployment angular-fullstack codeship

我试图通过CodeShip将网站部署到Heroku。该网站使用Yeoman的Angular-Fullstack生成器构建,该生成器被推送到GitHub。 Codeship检测到推送,构建整个事物,然后开始麻烦。

设置了Angular-Fullstack,以便dist/文件夹包含整个Heroku应用程序,因此盲目部署所有内容将无法在Heroku上运行。 在本地,我可以使用Heroku工具栏登录,在dist文件夹中添加一个遥控器,然后使用grunt buildcontrol将整个东西部署到Heroku。

但在Codeship中有一些警告: *我无法使用wget安装Heroku工具带,因为它需要sudo而且Codeship不支持 *如果可以,我无法使用CLI登录Heroku,因为我无法与Codeship中的shell进行交互 *我无法进入dist/文件夹,添加遥控器后,只需按下Heroku,因为我需要输入我的凭据。

我有没有错过的方法?我想让Codeship处理从构建到部署到Heroku的所有事情(仅限master分支)。

1 个答案:

答案 0 :(得分:1)

想出来了!

我跳过了试图安装Heroku Toolbelt的步骤,只是将Heroku上的repo添加为远程:

[]

Codeship每个版本都有公钥。所以,我将该关键字添加到我的Heroku帐户中。

然后我注意到Git仍在尝试使用HTTPS而不是SSH,因此我将其添加到部署脚本中:

git remote add heroku ssh://git@heroku.com/[your-heroku-app-name].git

这确保了Git使用Heroku的SSH URL。然后我让Codeship构建整个项目并用git config --global url.ssh://git@heroku.com/.insteadOf https://git.heroku.com/ 推送它。