Make pruner a module.
This commit is contained in:
parent
15b530eee6
commit
0975c10939
6 changed files with 42 additions and 11 deletions
docker
5
docker/pruner/inputs.tf
Normal file
5
docker/pruner/inputs.tf
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
variable "stack_name" {
|
||||||
|
type = string
|
||||||
|
description = "The name of the stack to deploy the service to."
|
||||||
|
default = "docker"
|
||||||
|
}
|
3
docker/pruner/outputs.tf
Normal file
3
docker/pruner/outputs.tf
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
output "docker_service" {
|
||||||
|
value = module.pruner.docker_service
|
||||||
|
}
|
12
docker/pruner/pruner.tf
Normal file
12
docker/pruner/pruner.tf
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
module "pruner" {
|
||||||
|
source = "../service"
|
||||||
|
stack_name = var.stack_name
|
||||||
|
service_name = "pruner"
|
||||||
|
image = "matthewbaggett/pruner:latest"
|
||||||
|
global = true
|
||||||
|
environment_variables = {
|
||||||
|
INTERVAL_SECONDS = 21600 // About every 6 hours
|
||||||
|
}
|
||||||
|
mounts = { "/var/run/docker.sock" = "/var/run/docker.sock" }
|
||||||
|
restart_policy = "any"
|
||||||
|
}
|
12
docker/pruner/terraform.tf
Normal file
12
docker/pruner/terraform.tf
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
terraform {
|
||||||
|
required_version = "~> 1.6"
|
||||||
|
|
||||||
|
required_providers {
|
||||||
|
docker = {
|
||||||
|
source = "kreuzwerker/docker"
|
||||||
|
version = "~>3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -7,13 +7,11 @@ locals {
|
||||||
|
|
||||||
# Define service labels en-masse
|
# Define service labels en-masse
|
||||||
labels = merge(var.labels, {
|
labels = merge(var.labels, {
|
||||||
"com.docker.stack.namespace" = var.stack_name
|
"com.docker.stack.namespace" = var.stack_name
|
||||||
"com.docker.stack.image" = data.docker_registry_image.image.name
|
"com.docker.stack.image" = data.docker_registry_image.image.name
|
||||||
"com.docker.stack.hash" = data.docker_registry_image.image.sha256_digest
|
"ooo.grey.service.stack" = var.stack_name
|
||||||
"ooo.grey.service.stack" = var.stack_name
|
"ooo.grey.service.name" = var.service_name
|
||||||
"ooo.grey.service.name" = var.service_name
|
"ooo.grey.service.image" = data.docker_registry_image.image.name
|
||||||
#"ooo.grey.service.created" = timestamp()
|
"ooo.grey.service.image.digest" = data.docker_registry_image.image.sha256_digest
|
||||||
"ooo.grey.service.image" = data.docker_registry_image.image.name
|
|
||||||
"ooo.grey.service.hash" = data.docker_registry_image.image.sha256_digest
|
|
||||||
})
|
})
|
||||||
}
|
}
|
|
@ -37,9 +37,10 @@ resource "docker_service" "instance" {
|
||||||
dynamic "mounts" {
|
dynamic "mounts" {
|
||||||
for_each = var.mounts
|
for_each = var.mounts
|
||||||
content {
|
content {
|
||||||
target = mounts.value
|
target = mounts.value
|
||||||
source = mounts.key
|
source = mounts.key
|
||||||
type = "bind"
|
type = "bind"
|
||||||
|
read_only = false # Nice assumption bro.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue