114 lines
2.9 KiB
HCL
114 lines
2.9 KiB
HCL
resource "helm_release" "drone_runner_docker" {
|
|
name = "runner-docker"
|
|
chart = "drone-runner-docker"
|
|
repository = "https://charts.drone.io"
|
|
version = "0.6.0"
|
|
namespace = kubernetes_namespace.server.metadata.0.name
|
|
create_namespace = false
|
|
|
|
values = [jsonencode({
|
|
serviceAccount = {
|
|
create = true
|
|
}
|
|
}),
|
|
jsonencode({
|
|
env = {
|
|
DRONE_SERVER_HOST = "https://${local.drone_domain}"
|
|
DRONE_RPC_HOST = "${helm_release.drone_server.name}.${helm_release.drone_server.namespace}.svc.cluster.local:8080"
|
|
DRONE_RPC_PROTO = "http"
|
|
DRONE_UI_USERNAME = local.runner_dashboard_user
|
|
}
|
|
}),
|
|
jsonencode({
|
|
dind = {
|
|
resources = {
|
|
requests = {
|
|
cpu = "250m"
|
|
memory = "1G"
|
|
"ephemeral-storage" = upper(local.runner_cache_size)
|
|
}
|
|
limits = {
|
|
cpu = "1"
|
|
memory = "3G"
|
|
"ephemeral-storage" = upper(local.runner_cache_size)
|
|
}
|
|
}
|
|
}
|
|
}),
|
|
jsonencode({
|
|
ingress = {
|
|
enabled = false
|
|
}
|
|
}),
|
|
jsonencode({
|
|
gc = {
|
|
enabled = true
|
|
env = {
|
|
GC_INTERVAL = local.runner_gc_interval
|
|
GC_CACHE = "${lower(local.runner_cache_size)}b"
|
|
}
|
|
}
|
|
}),
|
|
]
|
|
set_sensitive {
|
|
name = "env.DRONE_RPC_SECRET"
|
|
value = random_password.drone_rpc_secret.result
|
|
}
|
|
set_sensitive {
|
|
name = "env.DRONE_UI_PASSWORD"
|
|
value = random_password.runner_dashboard.result
|
|
}
|
|
}
|
|
|
|
resource "helm_release" "drone_runner_kube" {
|
|
name = "runner-kube"
|
|
chart = "drone-runner-kube"
|
|
repository = "https://charts.drone.io"
|
|
version = "0.1.10"
|
|
namespace = kubernetes_namespace.server.metadata.0.name
|
|
create_namespace = false
|
|
|
|
values = [jsonencode({
|
|
rbac = {
|
|
buildNamespaces = [
|
|
kubernetes_namespace.jobs.metadata.0.name
|
|
]
|
|
}
|
|
}),
|
|
jsonencode({
|
|
env = {
|
|
DRONE_SERVER_HOST = "https://${local.drone_domain}"
|
|
DRONE_RPC_HOST = "${helm_release.drone_server.name}.${helm_release.drone_server.namespace}.svc.cluster.local:8080"
|
|
DRONE_RPC_PROTO = "http"
|
|
DRONE_NAMESPACE_DEFAULT = kubernetes_namespace.jobs.metadata.0.name
|
|
DRONE_UI_USERNAME = local.runner_dashboard_user
|
|
}
|
|
}),
|
|
jsonencode({
|
|
resources = {
|
|
requests = {
|
|
cpu = "100m"
|
|
memory = "50Mi"
|
|
}
|
|
limits = {
|
|
cpu = "300m"
|
|
memory = "200Mi"
|
|
}
|
|
}
|
|
}),
|
|
jsonencode({
|
|
ingress = {
|
|
enabled = false
|
|
}
|
|
})
|
|
]
|
|
set_sensitive {
|
|
name = "env.DRONE_RPC_SECRET"
|
|
value = random_password.drone_rpc_secret.result
|
|
}
|
|
set_sensitive {
|
|
name = "env.DRONE_UI_PASSWORD"
|
|
value = random_password.runner_dashboard.result
|
|
}
|
|
}
|