Files
ALR-updater/template.nomad

69 lines
1.8 KiB
HCL

job "alr-updater" {
region = "global"
datacenters = ["dc1"]
type = "service"
group "alr-updater" {
network {
port "webhook" {
to = 8080
}
}
volume "alr-updater-data" {
type = "host"
source = "alr-updater-data"
read_only = false
}
task "alr-updater" {
driver = "docker"
volume_mount {
volume = "alr-updater-data"
destination = "/etc/alr-updater"
read_only = false
}
env {
GIT_REPO_DIR = "/etc/alr-updater/repo"
GIT_REPO_URL = "https://gitea.plemya-x.ru/Plemya-x/alr-repo.git"
GIT_CREDENTIALS_USERNAME = "alr-repo-bot"
GIT_CREDENTIALS_PASSWORD = "${GITEA_PASSWORD}"
GIT_COMMIT_NAME = "alr-repo-bot"
GIT_COMMIT_EMAIL = "bot@plemya-x.ru"
WEBHOOK_PASSWORD_HASH = "${PASSWORD_HASH}"
// Hack to force Nomad to re-deploy the service
// instead of ignoring it
COMMIT_SHA = "${DRONE_COMMIT_SHA}"
}
config {
image = "alpine:latest"
command = "/opt/alr-updater/alr-updater"
args = ["-DE"]
ports = ["webhook"]
volumes = ["local/alr-updater/:/opt/alr-updater:ro"]
}
artifact {
source = "https://gitea.plemya-x.ru/api/v1/repos/Plemya-x/ALR-updater/releases/latest/alr-updater-$${attr.cpu.arch}.tar.gz"
destination = "local/alr-updater"
}
service {
name = "alr-updater"
port = "webhook"
tags = [
"traefik.enable=true",
"traefik.http.routers.alr-updater.rule=Host(`updater.plemya-x.ru`)",
"traefik.http.routers.alr-updater.tls.certResolver=letsencrypt",
]
}
}
}
}