From 264b4860d5e8b79d3a361fb5c4a870980bef391b Mon Sep 17 00:00:00 2001
From: Curtis Vogt <curtis.vogt@gmail.com>
Date: Thu, 22 Apr 2021 16:06:12 -0500
Subject: [PATCH] Add manager label to workers

---
 src/pod.jl  | 3 +++
 test/pod.jl | 5 +++++
 2 files changed, 8 insertions(+)

diff --git a/src/pod.jl b/src/pod.jl
index 156c66e..b189b08 100644
--- a/src/pod.jl
+++ b/src/pod.jl
@@ -97,6 +97,9 @@ function worker_pod_spec!(pod::AbstractDict;
                           service_account_name=nothing)
     pod["metadata"]["name"] = "$(driver_name)-worker-$port"
 
+    # Set a label with the manager name to support easy termination of all workers
+    pod["metadata"]["labels"]["manager"] = driver_name
+
     cmd = `$cmd --bind-to=0:$port`
 
     worker_container =
diff --git a/test/pod.jl b/test/pod.jl
index 81d886b..bce3cd5 100644
--- a/test/pod.jl
+++ b/test/pod.jl
@@ -16,7 +16,12 @@ end
     @test keys(pod) == Set(["apiVersion", "kind", "metadata", "spec"])
     @test pod["apiVersion"] == "v1"
     @test pod["kind"] == "Pod"
+
+    @test keys(pod["metadata"]) == Set(["name", "labels"])
     @test pod["metadata"]["name"] == "driver-worker-8080"
+    @test keys(pod["metadata"]["labels"]) == Set(["manager"])
+    @test pod["metadata"]["labels"]["manager"] == "driver"
+
     @test pod["spec"]["restartPolicy"] == "Never"
     @test length(pod["spec"]["containers"]) == 1