From 97aa9b61ddc34724da619b15014b93882bc62830 Mon Sep 17 00:00:00 2001 From: William Petit Date: Tue, 19 Mar 2019 16:07:47 +0100 Subject: [PATCH] Add hook utility basic implementation --- vars/hook.groovy | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 vars/hook.groovy diff --git a/vars/hook.groovy b/vars/hook.groovy new file mode 100644 index 0000000..1f8cd71 --- /dev/null +++ b/vars/hook.groovy @@ -0,0 +1,15 @@ +def call(String name) { + def rootDir = pwd() + def filepath = "${rootDir}/.jenkins/${name}.groovy" + def exists = fileExists(filepath) + if (!exists) { + println("No hook '${filepath}' script. Skipping.") + return + } + def hook = load(filepath) + if(hook.metaClass.respondsTo(hook, 'exec')) { + hook.exec() + } else { + error("Hook script '${filepath}' exists but does not expose an exec() function.") + } +} \ No newline at end of file