initial implementation of IP allocator, only using memory storage
diff --git a/build.gradle b/build.gradle
index fcc000e..cc271b6 100644
--- a/build.gradle
+++ b/build.gradle
@@ -27,7 +27,7 @@
     // using the -PdeployConfig=<file-path> syntax.
     deployConfig = project.hasProperty('deployConfig') ? project.getProperty('deployConfig') : './config/default.yml'
 
-    dockerPath = project.hasProperty('dockerPath') ? project.getProperty('dockerPath') : '$dockerPath'
+    dockerPath = project.hasProperty('dockerPath') ? project.getProperty('dockerPath') : '/usr/bin'
 }
 
 task buildBootstrapImage(type: Exec) {
@@ -44,6 +44,20 @@
     commandLine "$dockerPath/docker", 'push', "$targetReg/cord-maas-bootstrap:$targetTag"
 }
 
+task buildAllocationImage(type: Exec) {
+    commandLine "$dockerPath/docker", 'build', '-t', 'cord-maas-ip-allocator', './ip-allocator'
+}
+
+task tagAllocationImage(type: Exec) {
+   dependsOn buildBootstrapImage
+   commandLine "$dockerPath/docker", 'tag', 'cord-maas-ip-allocator', "$targetReg/cord-maas-ip-allocator:$targetTag"
+}
+
+task publishAllocationImage(type: Exec) {
+    dependsOn tagBootstrapImage
+    commandLine "$dockerPath/docker", 'push', "$targetReg/cord-maas-ip-allocator:$targetTag"
+}
+
 task buildAutomationImage(type: Exec) {
     commandLine "$dockerPath/docker", 'build', '-t', "cord-maas-automation", "-f", "./automation/Dockerfile", "./automation"
 }
@@ -117,18 +131,21 @@
     dependsOn buildBootstrapImage
     dependsOn buildHarvesterImage
     dependsOn buildAutomationImages
+    dependsOn buildAllocationImage
 }
 
 task tagImages {
     dependsOn tagBootstrapImage
     dependsOn tagHarvesterImage
     dependsOn tagAutomationImages
+    dependsOn tagAllocationImage
 }
 
 task publish {
     dependsOn publishBootstrapImage
     dependsOn publishHarvesterImage
     dependsOn publishAutomationImages
+    dependsOn publishAllocationImage
 }
 
 // ~~~~~~~~~~~~~~~~~~~ Deployment / Test Tasks  ~~~~~~~~~~~~~~~~~~~~~~~