Add mk libraries
Change-Id: I829b299b6329e8f4d4424c89717d432513d1eece
diff --git a/src/com/mirantis/mk/docker.groovy b/src/com/mirantis/mk/docker.groovy
new file mode 100644
index 0000000..5ea83ee
--- /dev/null
+++ b/src/com/mirantis/mk/docker.groovy
@@ -0,0 +1,31 @@
+package com.mirantis.mk
+
+/**
+ *
+ * Docker functions
+ *
+ */
+
+/**
+ * Build step to build docker image. For use with eg. parallel
+ *
+ * @param img Image name
+ * @param baseImg Base image to use (can be empty)
+ * @param dockerFile Dockerfile to use
+ * @param timestamp Image tag
+ */
+def buildDockerImageStep(img, baseImg, dockerFile, timestamp) {
+ File df = new File(dockerfile);
+ return {
+ if (baseImg) {
+ sh "git checkout -f ${dockerfile}; sed -i -e 's,^FROM.*,FROM ${baseImg},g' ${dockerFile}"
+ }
+ docker.build(
+ "${img}:${timestamp}",
+ [
+ "-f ${dockerFile}",
+ df.getParent()
+ ].join(' ')
+ )
+ }
+}