aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2020-01-26 21:57:27 +0100
committerAlex Auvolat <alex@adnab.me>2020-01-26 21:57:27 +0100
commit15745b1b390792d5defbc73788adadf1c0656fbe (patch)
tree81ab0d64f47ef3591d1e7ce56b097d0b03b994a1
parent97f5effe5506a8cbfbbb3fbe176929c188c361b3 (diff)
downloadbottin-15745b1b390792d5defbc73788adadf1c0656fbe.tar.gz
bottin-15745b1b390792d5defbc73788adadf1c0656fbe.zip
Add dockerfile, makefile and example nomad configuration file
-rw-r--r--Dockerfile5
-rw-r--r--Makefile11
-rw-r--r--gobottin.hcl.example60
3 files changed, 76 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..f662db6
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,5 @@
+FROM scratch
+
+ADD gobottin /
+
+ENTRYPOINT ["/gobottin"]
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..7ff12b2
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,11 @@
+all: gobottin
+
+gobottin: main.go ssha.go util.go acl.go
+ go get -d -v
+ CGO_ENABLED=0 GOOS=linux go build -a -v
+
+docker: all
+ docker build -t lxpz/gobottin_amd64:$(TAG) .
+ docker push lxpz/gobottin_amd64:$(TAG)
+ docker tag lxpz/gobottin_amd64:$(TAG) lxpz/gobottin_amd64:latest
+ docker push lxpz/gobottin_amd64:latest
diff --git a/gobottin.hcl.example b/gobottin.hcl.example
new file mode 100644
index 0000000..75a05c9
--- /dev/null
+++ b/gobottin.hcl.example
@@ -0,0 +1,60 @@
+job "directory" {
+ datacenters = ["dc1"]
+ type = "service"
+
+ constraint {
+ attribute = "${attr.cpu.arch}"
+ value = "amd64"
+ }
+
+ group "ldap" {
+ count = 2
+ task "server" {
+ driver = "docker"
+ config {
+ image = "lxpz/gobottin_amd64:1"
+ readonly_rootfs = true
+ port_map {
+ ldap_port = 1389
+ }
+ volumes = [
+ "secrets/config.json:/config.json"
+ ]
+ }
+
+ artifact {
+ source = "http://127.0.0.1:8500/v1/kv/configuration/directory/gobottin/config.json?raw"
+ destination = "secrets/config.json"
+ mode = "file"
+ }
+
+ resources {
+ memory = 100
+ network {
+ port "ldap_port" {
+ static = "389"
+ }
+ }
+ }
+
+ service {
+ tags = ["bottin"]
+ port = "ldap_port"
+ address_mode = "host"
+ name = "bottin"
+ check {
+ type = "tcp"
+ port = "ldap_port"
+ interval = "60s"
+ timeout = "5s"
+ check_restart {
+ limit = 3
+ grace = "90s"
+ ignore_warnings = false
+ }
+ }
+ }
+ }
+ }
+}
+