basic plumbing for local signing for paygen

BUG=b:299105459
TEST=run_tests

Change-Id: I422c576850143452e5fdd07b922daa963509eb58
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/4893883
Reviewed-by: Chris Gerber <gerb@google.com>
Commit-Queue: Jack Neus <jackneus@google.com>
Tested-by: Jack Neus <jackneus@google.com>
diff --git a/api/controller/payload.py b/api/controller/payload.py
index ded49d0..8f4b330 100644
--- a/api/controller/payload.py
+++ b/api/controller/payload.py
@@ -96,6 +96,11 @@
             tgt_image,
         )
 
+    if input_proto.use_local_signing and not input_proto.docker_image:
+        cros_build_lib.Die(
+            "local signing enabled but no docker image specified"
+        )
+
     # Find the value of bucket or default to 'chromeos-releases'.
     destination_bucket = input_proto.bucket or "chromeos-releases"