使用terraform,我可以创建Heroku应用程序,创建和附加附加组件并将应用程序放在管道中。创建基础结构后,除了没有启动dynos之外,一切都很好。我使用了heroku/nodejs
buildpack。 Terraform的Heroku provider未提供与Heroku dyno对应的任何显式资源类型。当使用Terraform创建必要的附加组件和管道时,我们是否应该手动推送应用程序在Heroku上进行部署?
我搜索了很多但是无法弄清楚在必要的基础设施到位之后,dynos没有开始的原因。
请帮忙。
答案 0 :(得分:0)
所以今天我想用terraform测试heroku并得到同样的问题
看起来您需要将应用推送到git_url
提供的heroku_app
参考
在https://github.com/nroitero/terraform_heroku
答案 1 :(得分:0)
我正在按照以下示例进行操作,并且可以正常工作。
首先,定义heroku应用程序:
resource "heroku_app" "this" {
name = var.HEROKU_APP_NAME
region = var.HEROKU_REGION
space = var.HEROKU_SPACE
internal_routing = var.HEROKU_INTERNAL_ROUTING
然后,指示节点应用程序在哪里:
resource "heroku_build" "this" {
app = heroku_app.this.name
#buildpacks = [var.BUILDPACK_URL]
source = {
#url = var.SOURCE_URL
#version = var.SOURCE_VERSION
#testing path instead of source
path = var.SOURCE_PATH
}
}
要定义测功,我正在使用:
resource "heroku_formation" "this" {
app = heroku_app.this.name
type = var.HEROKU_FORMATION_TYPE
quantity = var.HEROKU_FORMATION_QTY
size = var.HEROKU_FORMATION_SIZE
depends_on = [heroku_build.this]
}
对于dyno大小参数(var.HEROKU_FORMATION_SIZE),请使用https://devcenter.heroku.com/articles/dyno-types上列出的官方dyno类型“名称”。
对于私有空间,名称为:private-s,private-m和private-l。