mirror of
https://github.com/kerberos-io/agent.git
synced 2025-10-30 19:26:29 +08:00
47 lines
1.2 KiB
HCL
47 lines
1.2 KiB
HCL
terraform {
|
|
required_providers {
|
|
linux = {
|
|
source = "TelkomIndonesia/linux"
|
|
version = "0.7.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "linux" {
|
|
host = "x.y.z.u"
|
|
port = 22
|
|
user = "root"
|
|
password = "password"
|
|
}
|
|
|
|
locals {
|
|
image = "kerberos/agent"
|
|
version = "latest"
|
|
port = 80
|
|
}
|
|
|
|
resource "linux_script" "install_docker" {
|
|
lifecycle_commands {
|
|
create = "apt update && apt install -y $PACKAGE_NAME"
|
|
read = "apt-cache policy $PACKAGE_NAME | grep 'Installed:' | grep -v '(none)' | awk '{ print $2 }' | xargs | tr -d '\n'"
|
|
update = "apt update && apt install -y $PACKAGE_NAME"
|
|
delete = "apt remove -y $PACKAGE_NAME"
|
|
}
|
|
environment = {
|
|
PACKAGE_NAME = "docker"
|
|
}
|
|
}
|
|
|
|
resource "linux_script" "install_docker_kerberos_agent" {
|
|
lifecycle_commands {
|
|
create = "docker pull $IMAGE:$VERSION && docker run -d -p $PORT:80 --name agent $IMAGE:$VERSION"
|
|
read = "docker inspect agent"
|
|
update = "docker pull $IMAGE:$VERSION && docker rm agent --force && docker run -d -p $PORT:80 --name agent $IMAGE:$VERSION"
|
|
delete = "docker rm agent --force"
|
|
}
|
|
environment = {
|
|
IMAGE = local.image
|
|
VERSION = local.version
|
|
PORT = local.port
|
|
}
|
|
} |