sockshop/terraform/main.tf

160 lines
4.9 KiB
HCL

locals {
is_linux = length(regexall("/home/", lower(abspath(path.root)))) > 0
}
resource "gitea_repository" "demo-repo" {
username = var.GITEA_USER
name = "sockshop-demo-test"
private = false
issue_labels = "Default"
license = "MIT"
}
resource "null_resource" "seed-win-apply" {
count = local.is_linux ? 0 : 1
# program = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",gitea_repository.demo-repo.clone_url, var.GITEA_USER, var.GITEA_TOKEN]
triggers = {
mode = "apply"
repo = gitea_repository.demo-repo.clone_url
user = var.GITEA_USER
token = var.GITEA_TOKEN
}
provisioner "local-exec" {
when = create
#interpreter = ["Powershell", "-Command"]
# environment = {
# mode = "apply"
# repo = gitea_repository.demo-repo.clone_url
# user = var.GITEA_USER
# token = var.GITEA_TOKEN
# }
command = "cmd /c ${abspath(path.module)}/bin/keptn-seed-project.bat ${self.triggers.repo} ${self.triggers.user} ${self.triggers.token}"
#interpreter = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",, var.GITEA_USER, var.GITEA_TOKEN]
}
}
resource "null_resource" "seed-unix-apply" {
count = local.is_linux ? 1 : 0
# program = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",gitea_repository.demo-repo.clone_url, var.GITEA_USER, var.GITEA_TOKEN]
triggers = {
mode = "apply"
repo = gitea_repository.demo-repo.clone_url
user = var.GITEA_USER
token = var.GITEA_TOKEN
}
provisioner "local-exec" {
when = create
#interpreter = ["Powershell", "-Command"]
# environment = {
# mode = "apply"
# repo = gitea_repository.demo-repo.clone_url
# user = var.GITEA_USER
# token = var.GITEA_TOKEN
# }
command = "/bin/bash ${abspath(path.module)}/bin/keptn-seed-project.sh ${self.triggers.repo} ${self.triggers.user} ${self.triggers.token}"
#interpreter = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",, var.GITEA_USER, var.GITEA_TOKEN]
}
}
resource "null_resource" "seed-win-destroy" {
count = local.is_linux ? 0 : 1
# program = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",gitea_repository.demo-repo.clone_url, var.GITEA_USER, var.GITEA_TOKEN]
triggers = {
mode = "destroy"
repo = gitea_repository.demo-repo.clone_url
user = var.GITEA_USER
token = var.GITEA_TOKEN
}
provisioner "local-exec" {
when = destroy
#interpreter = ["Powershell", "-Command"]
# environment = {
# mode = "destroy"
# repo = gitea_repository.demo-repo.clone_url
# user = var.GITEA_USER
# token = var.GITEA_TOKEN
# }
command = "cmd /c ${abspath(path.module)}/bin/keptn-destroy-project.bat"
#interpreter = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",, var.GITEA_USER, var.GITEA_TOKEN]
}
}
resource "null_resource" "seed-unix-destroy" {
count = local.is_linux ? 1 : 0
# program = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",gitea_repository.demo-repo.clone_url, var.GITEA_USER, var.GITEA_TOKEN]
triggers = {
mode = "destroy"
repo = gitea_repository.demo-repo.clone_url
user = var.GITEA_USER
token = var.GITEA_TOKEN
}
provisioner "local-exec" {
when = destroy
#interpreter = ["Powershell", "-Command"]
# environment = {
# mode = "destroy"
# repo = gitea_repository.demo-repo.clone_url
# user = var.GITEA_USER
# token = var.GITEA_TOKEN
# }
command = "/bin/bash ${abspath(path.module)}/bin/keptn-destroy-project.sh"
#interpreter = ["cmd","/c","${abspath(path.module)}/bin/keptn-seed-project.bat",, var.GITEA_USER, var.GITEA_TOKEN]
}
}
data "restful_resource" "ExecutorId" {
id = "/api/controlPlane/v1/uniform/registration"
method = "GET"
query = {
name=["job-executor-service"]
}
#selector = "0.id" data.restful_resource.ExecutorId.output[0].id
}
resource "restful_operation" "add_subscription" {
path = "/api/controlPlane/v1/uniform/registration/${data.restful_resource.ExecutorId.output[0].id}/subscription"
#delete_path = "/api/controlPlane/v1/uniform/registration/${data.restful_resource.ExecutorId.output[0].id}/subscription/${data.restful_resource.Subscriptions.output[0].id}"
method = "POST"
#delete_method = "DELETE"
#precheck_delete = local.subid_precheck
body = {
"event": "sh.keptn.event.uninstall.triggered",
"filter": {
"projects": ["carts"],
"stages": null,
"services": ["carts","carts-db"]
}
}
}
# resource "seed" "win" {
# count = local.is_linux ? 0 : 1
# provisioner "local-exec" {
# command = "echo $FOO $BAR $BAZ >> env_vars.txt"
# environment = {
# FOO = var.gitea_repository.demo-repo.clone_url
# }
# }
# }