docker_image/docker_image.tf (29 lines of code) (raw):
resource "null_resource" "go_code_keeper" {
triggers = {
code_hash = filemd5("${path.module}/telemetry/main.go")
go_mod = filemd5("${path.module}/go.mod")
go_sum = filemd5("${path.module}/go.sum")
dockerfile = filemd5("${path.module}/Dockerfile")
}
}
resource "docker_image" "proxy" {
name = "${var.registry_url}/telemetry_proxy"
build {
context = path.module
tag = ["${var.registry_url}/telemetry_proxy:${var.image_tag}"]
}
triggers = {
code_hash = filemd5("${path.module}/telemetry/main.go")
dockerfile = filemd5("${path.module}/Dockerfile")
}
lifecycle {
replace_triggered_by = [null_resource.go_code_keeper]
}
}
resource "docker_registry_image" "proxy" {
name = docker_image.proxy.name
keep_remotely = true
lifecycle {
replace_triggered_by = [null_resource.go_code_keeper]
}
}