diff --git a/common/ubuntu_base.sh b/common/ubuntu_base.sh
index 10f1ee9..336662b 100644
--- a/common/ubuntu_base.sh
+++ b/common/ubuntu_base.sh
@@ -36,13 +36,16 @@
 apt-get update
 
 # Useful tools
-apt-get -y install byobu curl ethtool htop iputils-ping lsof strace tcpdump tmux traceroute tree vim-nox wget
-# Install common prerequisites
-apt-get -y install apt-transport-https libmnl0 python-apt python-m2crypto python-psutil acpid
+EXTRA_PKGS="byobu curl ethtool iputils-ping lsof strace tcpdump traceroute wget iptables"
+# Pretty tools
+EXTRA_PKGS="${EXTRA_PKGS} byobu htop tmux tree vim-nox mc"
+# Common prerequisites
+EXTRA_PKGS="${EXTRA_PKGS} apt-transport-https libmnl0 python-apt python-m2crypto python-psutil acpid"
+apt-get -y install ${EXTRA_PKGS}
 
 # Cleanup old kernels, ensure latest is installed via virtual package
 if [ ! -f /tmp/no_install_kernel ]; then
-    apt-get purge -y linux-image-* linux-headers-*
+    apt-get purge -y linux-image-* linux-headers-* | grep -v 'is not installed, so not removed'
     apt-get install -y linux-image-virtual-lts-xenial linux-image-extra-virtual-lts-xenial
 
     # Update grub cmdline
diff --git a/common/ubuntu_salt_bootstrap.sh b/common/ubuntu_salt_bootstrap.sh
index b691d4d..0b45762 100644
--- a/common/ubuntu_salt_bootstrap.sh
+++ b/common/ubuntu_salt_bootstrap.sh
@@ -48,6 +48,7 @@
 export EXTRA_FORMULAS=${EXTRA_FORMULAS:-"ntp aptly nginx iptables docker git maas jenkins"}
 export APT_REPOSITORY=" deb [arch=amd64] ${APT_MIRANTIS_SALT_REPO} "
 export APT_REPOSITORY_GPG=${APT_MIRANTIS_GPG}
+export SALT_STOPSTART_WAIT=${SALT_STOPSTART_WAIT:-10}
 if [[ ! -z "${PACKER_OFFLINE_BUILD}" ]];then
   echo "INFO: build in offline detected!"
   export BOOTSTRAP_SALTSTACK_COM="file:///tmp/bootstrap.saltstack.com.sh"
diff --git a/day01-image/files/root/interfaces b/day01-image/files/root/interfaces
index 5487659..97aaea3 100644
--- a/day01-image/files/root/interfaces
+++ b/day01-image/files/root/interfaces
@@ -13,6 +13,7 @@
   address $SALT_MASTER_DEPLOY_IP
   netmask $DEPLOY_NETWORK_NETMASK
   gateway $DEPLOY_NETWORK_GW
+  mtu $DEPLOY_NETWORK_MTU
   dns-nameservers $DNS_SERVERS
 #auto ens4
 #iface ens4 inet static
diff --git a/day01-image/run.example.sh b/day01-image/run.example.sh
index aeee71e..25efd13 100755
--- a/day01-image/run.example.sh
+++ b/day01-image/run.example.sh
@@ -21,14 +21,17 @@
 export FORMULA_VERSION=proposed
 export BINARY_MCP_VERSION=proposed
 export UBUNTU_BASEURL="http://mirror.mirantis.com/proposed/ubuntu/"
-export SALTSTACK_REPO="http://mirror.mirantis.com/proposed/saltstack-2016.3/xenial xenial main"
+export SALTSTACK_REPO="http://mirror.mirantis.com/proposed/saltstack-2017.7/xenial xenial main"
 export APT_MIRANTIS_GPG="http://apt.mirantis.com/public.gpg"
-export SALTSTACK_GPG="https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2016.3/SALTSTACK-GPG-KEY.pub"
+export SALTSTACK_GPG="https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2017.7/SALTSTACK-GPG-KEY.pub"
 export APT_MIRANTIS_SALT_REPO="http://apt.mirantis.com/xenial/ proposed salt"
 export GIT_SALT_FORMULAS_SCRIPTS=https://github.com/salt-formulas/salt-formulas-scripts.git
 export APT_REPOSITORY="deb [arch=amd64] http://apt.mirantis.com/xenial/ proposed salt"
 export APT_REPOSITORY_GPG=http://apt.mirantis.com/public.gpg
 ###
+# Hard-coded folder in template
+export PACKER_IMAGES_CACHE="${HOME}/packer_images_cache/"
+mkdir -p "${PACKER_IMAGES_CACHE}"
 
 export PACKER_LOG=1
 # For qemu test-build:
diff --git a/day01-image/scripts/cleanup.sh b/day01-image/scripts/cleanup.sh
index 2b5ccbc..0f5adec 100644
--- a/day01-image/scripts/cleanup.sh
+++ b/day01-image/scripts/cleanup.sh
@@ -10,6 +10,10 @@
 echo > /etc/apt/sources.list  || true
 rm -vf /usr/sbin/policy-rc.d || true
 
+
+echo "removeing all previously accepted salt keys"
+salt-key -D -y || true
+
 echo "cleaning up reclass"
 rm -rf /srv/salt/reclass || true
 rm -rf /srv/salt/scripts || true
@@ -42,7 +46,7 @@
 
 # stop and disable services, for healthy zerodisk
 # They should be enabled after cfg01 init
-stop_services="postgresql.service salt-api salt-master salt-minion jenkins maas-rackd.service maas-regiond.service"
+stop_services="postgresql.service salt-api salt-master salt-minion jenkins maas-rackd.service maas-regiond.service bind9"
 for s in ${stop_services} ; do
   systemctl stop ${s} || true
   systemctl disable ${s} || true
diff --git a/day01-image/scripts/salt.sh b/day01-image/scripts/salt.sh
index 78cdd79..a49b274 100644
--- a/day01-image/scripts/salt.sh
+++ b/day01-image/scripts/salt.sh
@@ -17,6 +17,7 @@
 salt-call ${SALT_OPTS} state.sls linux.network
 salt-call ${SALT_OPTS} state.sls openssh
 salt-call ${SALT_OPTS} state.sls git.server
+sleep 99h || true
 salt-call ${SALT_OPTS} state.sls postgresql
 # install only MAAS packages, don't configure anything.
 # Configuration will be processed during cfg01 initialization.
diff --git a/day01-image/template.json b/day01-image/template.json
index 1406680..c4ff8de 100644
--- a/day01-image/template.json
+++ b/day01-image/template.json
@@ -2,6 +2,8 @@
   "variables": {
     "user": "root",
     "password": "r00tme",
+    "images_cache": "{{ env `PACKER_IMAGES_CACHE` }}",
+    "disk_size": "50000",
     "do_api_token": "{{ env `DO_API_TOKEN` }}",
     "image_name": "{{ env `IMAGE_NAME` }}",
     "cluster_model": "{{ env `CLUSTER_MODEL` }}",
@@ -17,8 +19,7 @@
     "apt_mirantis_salt_repo": "{{ env `APT_MIRANTIS_SALT_REPO` }}",
     "git_salt_formulas_scripts": "{{ env `GIT_SALT_FORMULAS_SCRIPTS` }}",
     "apt_repository": "{{ env `APT_REPOSITORY` }}",
-    "apt_repository_gpg": "{{ env `APT_REPOSITORY_GPG` }}",
-    "disk_size": "50000"
+    "apt_repository_gpg": "{{ env `APT_REPOSITORY_GPG` }}"
 
   },
   "provisioners": [
@@ -125,6 +126,7 @@
       "iso_checksum": "566efef1d6f12e7d3a994c2405bdb642",
       "iso_checksum_type": "md5",
       "iso_url": "http://cloud-images.ubuntu.com/releases/xenial/release-20180306/ubuntu-16.04-server-cloudimg-amd64-disk1.img",
+      "iso_target_path": "{{ user `images_cache`}}/release-20180306_xenial-server-cloudimg-amd64-disk1.img",
       "disk_image": true,
       "accelerator": "kvm",
       "disk_size": "{{ user `disk_size`}}",
diff --git a/day01-image/template.json.env b/day01-image/template.json.env
new file mode 100644
index 0000000..fb05cc3
--- /dev/null
+++ b/day01-image/template.json.env
@@ -0,0 +1 @@
+PACKER_IMAGES_CACHE="${HOME}/packer_images_cache/"
diff --git a/mirror-image/run.example.sh b/mirror-image/run.example.sh
index 3f7328c..f1161ac 100644
--- a/mirror-image/run.example.sh
+++ b/mirror-image/run.example.sh
@@ -12,6 +12,8 @@
 # http/bootstrap.saltstack.com.sh https://github.com/saltstack/salt-bootstrap
 #
 
+export PACKER_IMAGES_CACHE="${HOME}/packer_images_cache/"
+#
 export CLUSTER_MODEL="https://github.com/Mirantis/mcp-offline-model.git"
 export CLUSTER_MODEL_REF="master"
 export CLUSTER_NAME="mcp-offline"
@@ -32,20 +34,20 @@
 export APT_REPOSITORY_GPG=${APT_MIRANTIS_GPG}
 
 # Openstack-related variables
-export VM_FLAVOR="3c4fe514-3eb6-464d-a419-7be09d72cf1e"
-export VM_FLOATING_IP_POOL="095f43ed-65ba-48ce-8185-d4080e430a88"
-export IMAGE_NAME="mcp-offline-mirror-$(date '+%Y-%m-%d-%H-%M-%S')"
-export VM_IMAGE="9953a40d-1fa2-4f26-b146-0507dbc912dc" # ubuntu cloud img
+#export VM_FLAVOR="3c4fe514-3eb6-464d-a419-7be09d72cf1e"
+#export VM_FLOATING_IP_POOL="095f43ed-65ba-48ce-8185-d4080e430a88"
+#export IMAGE_NAME="mcp-offline-mirror-$(date '+%Y-%m-%d-%H-%M-%S')"
+#export VM_IMAGE="9953a40d-1fa2-4f26-b146-0507dbc912dc" # ubuntu cloud img
 # May be need, if cloud with keystone v3 used
 #export OS_TENANT_ID=$OS_PROJECT_ID
 #export OS_DOMAIN_NAME="xxxx"
 #export OS_TENANT_NAME="xxxxx"
 
+# Hard-coded folder in template
+mkdir -p "${PACKER_IMAGES_CACHE}"
+
 export PACKER_LOG=1
 # For qemu test-build:
-#cloud-localds  --hostname ubuntu --dsmode local config-drive/cloudata.iso  config-drive/user-data.yaml
-# packer build -only=qemu -parallel=false -on-error=ask template.json
+cloud-localds  --hostname ubuntu --dsmode local config-drive/cloudata.iso  config-drive/user-data.yaml
+packer build -only=qemu -parallel=false -on-error=ask template.json
 # rm -rf ~/.packer.d/
-
-# For openstack test-build
-packer build -only=openstack -parallel=false -on-error=ask template.json
diff --git a/mirror-image/template.json b/mirror-image/template.json
index 5abc542..48045c1 100644
--- a/mirror-image/template.json
+++ b/mirror-image/template.json
@@ -3,6 +3,7 @@
     "user": "root",
     "password": "r00tme",
     "disk_size": "100000",
+    "images_cache": "{{ env `PACKER_IMAGES_CACHE` }}",
     "do_api_token": "{{ env `DO_API_TOKEN` }}",
     "image_name": "{{ env `IMAGE_NAME` }}",
     "cluster_model": "{{ env `CLUSTER_MODEL` }}",
@@ -151,7 +152,7 @@
       "accelerator": "kvm",
       "disk_size": "{{ user `disk_size`}}",
       "iso_url": "http://cloud-images.ubuntu.com/releases/xenial/release-20180306/ubuntu-16.04-server-cloudimg-amd64-disk1.img",
-      "iso_target_path": "/root/isos/xenial-server-cloudimg-amd64-disk1.img",
+      "iso_target_path": "{{ user `images_cache`}}/release-20180306_xenial-server-cloudimg-amd64-disk1.img",
       "iso_checksum_type": "md5",
       "disk_image": true,
       "disk_compression": true,
diff --git a/packer-image-buid.groovy b/packer-image-buid.groovy
new file mode 100644
index 0000000..3f05f44
--- /dev/null
+++ b/packer-image-buid.groovy
@@ -0,0 +1,311 @@
+/**
+ *
+ * Build mirror/aptly/apt01 image pipeline
+ *
+ *  PACKER_URL       = 'https://releases.hashicorp.com/packer/1.2.4/packer_1.2.4_linux_amd64.zip'
+ *  PACKER_ZIP_MD5   = '997274e80ae41102eecf9df2e5b67860'
+ *  PACKER_ARGS      = '-debug'
+ *  BUILD_ONLY       = 'openstack|qemu'
+ *  CLEANUP_AFTER    = wipe workspace AFTER build
+ *  IMAGE_NAME       = Name of the result image.
+ *  TIMESTAMP_INAME  = True|false. If true - image will be uploaded to backend with IMAGE_NAME + timestamp
+ *
+ * OPENSTACK_OPENRC_YAML: aml of key:value variables required for openstack venv
+ * example:
+ *            ---
+ *             OS_TENANT_ID: 'xxxx'
+ *             OS_TENANT_NAME: "mcp-oscore-ci"
+ *
+ * EXTRA_VARIABLES_YAML - Yaml of key:value variables required for template.json
+ * example:
+ *            ---
+ *            IMAGE_NAME: 'ubuntu-16.04-proposed'
+ *
+ *  CREDENTIALS_ID  = Global jenkins cred. for clone DEFAULT_GIT_URL
+ *  DEFAULT_GIT_URL
+ *  DEFAULT_GIT_REF
+ *
+ *  OS_VERSION         = OpenStack version
+ *  OS_CREDENTIALS_ID  = ID of credentials for OpenStack API stored in Jenkins.
+ *  OS_URL             = Keystone auth endpoint of the OpenStack.
+ *  OS_PROJECT         =
+ *
+ *  PUBLISH_BACKEND = local|glance|http
+ *  UPLOAD_URL      = URL of an WebDAV used to upload the image after creating.(Only in case PUBLISH_BACKEND == http)
+ */
+
+// Load shared libs
+def common = new com.mirantis.mk.Common()
+def McpCommon = new com.mirantis.mcp.Common()
+def openstack = new com.mirantis.mk.Openstack()
+def date = new Date()
+def dateTime = date.format("ddMMyyyy-HHmmss")
+//
+def job_env = env.getEnvironment().findAll { k, v -> v }
+
+////
+// To be removed
+//job_env['BUILD_ONLY'] = 'qemu'
+job_env['TIMESTAMP_INAME'] = true
+//job_env['CLEANUP_AFTER'] = false
+//job_env['PACKER_ARGS'] = ' -debug'
+//job_env['BUILD_OS'] = 'ubuntu-16.04'
+//job_env['IMAGE_NAME'] = 'ubuntu-16-04-x64-test'
+//job_env['DEFAULT_GIT_REF'] = 'refs/changes/06/22106/5'
+//job_env['DEFAULT_GIT_URL'] = 'ssh://mcp-jenkins@gerrit.mcp.mirantis.net:29418/mk/packer-templates'
+//job_env['CREDENTIALS_ID'] = 'gerrit'
+//job_env['PUBLISH_BACKEND'] = 'http'
+//job_env['PACKER_URL'] = "https://releases.hashicorp.com/packer/1.2.4/packer_1.2.4_linux_amd64.zip"
+//job_env['PACKER_ZIP_MD5'] = '997274e80ae41102eecf9df2e5b67860'
+//job_env['EXTRA_VARIABLES_YAML'] = "\n" +
+//    "IMAGE_NAME : \"ubuntu-16-04-x64\"\n" +
+//    "UBUNTU_BASEURL: \"http://mirror.mirantis.com/proposed/ubuntu/\"\n" +
+//    "SALTSTACK_REPO: \"deb [arch=amd64] http://mirror.mirantis.com/proposed/saltstack-2017.7/xenial xenial main\"\n" +
+//    "SALTSTACK_GPG: \"https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2017.7/SALTSTACK-GPG-KEY.pub\""
+/////
+extra_vars = readYaml text: job_env.get('EXTRA_VARIABLES_YAML','').trim()
+if (job_env.get('TIMESTAMP_INAME', false)) {
+  IMAGE_NAME = IMAGE_NAME + "-" + dateTime
+}
+// Overwrite IMAGE_NAME in template.json with expected
+extra_vars['IMAGE_NAME'] = IMAGE_NAME
+def gerrit = new com.mirantis.mk.Gerrit()
+defaultGitRef = job_env.get('DEFAULT_GIT_REF', 'HEAD')
+defaultGitUrl = job_env.get('DEFAULT_GIT_URL', null)
+
+// Self-check
+for (String req_v : ['BUILD_OS', 'BUILD_ONLY','IMAGE_NAME'] ) {
+  if (!job_env.get(req_v, false)) {
+    throw new Exception("${req_v} not set!")
+  }
+}
+
+def MapToList(input_map) {
+/**
+ * Convert dict in bash-like list
+ */
+
+  def data_list = []
+
+  for (i = 0; i < input_map.size(); i++) {
+    data = ''
+    data = input_map.keySet()[i] + "=" + input_map.values()[i]
+    data_list.add(data)
+  }
+
+  return data_list
+
+}
+
+timeout(time: 6, unit: 'HOURS') {
+  node("jsl15.mcp.mirantis.net") {
+    def checkouted = false
+    def creds = ''
+    creds = common.getPasswordCredentials(job_env.OS_CREDENTIALS_ID)
+    rcFile = openstack.createOpenstackEnv(workspace, job_env.OS_URL, job_env.OS_CREDENTIALS_ID, job_env.OS_PROJECT, "default", "", "default", "2", "")
+
+    try {
+      def workspace = common.getWorkspace()
+      def openstackEnv = "${workspace}/venv"
+      def _artifact_dir = "${workspace}/artifacts"
+      def ImagesCacheFolder = "${workspace}/../${env.JOB_NAME}_cache/"
+      stage("checkout") {
+        if (defaultGitRef && defaultGitUrl) {
+          checkouted = gerrit.gerritPatchsetCheckout(defaultGitUrl, defaultGitRef, "HEAD", job_env.CREDENTIALS_ID)
+        } else {
+          throw new Exception("Cannot checkout gerrit patchset: DEFAULT_GIT_URL is null")
+        }
+      }
+      stage("Prepare env") {
+        if (!fileExists("${workspace}/tmp")) {
+          sh "mkdir -p ${workspace}/tmp"
+        }
+        if (!fileExists(ImagesCacheFolder)) {
+          sh "mkdir -p ${ImagesCacheFolder}"
+        }
+        if (!fileExists(_artifact_dir)) {
+          sh "mkdir -p ${_artifact_dir}"
+        }
+        if (!fileExists("bin")) {
+          common.infoMsg("Downloading packer")
+          sh "mkdir -p bin"
+          dir("bin") {
+            def zipname = sh(script: "basename ${job_env.PACKER_URL}", returnStdout: true).trim()
+            sh(script: "wget --quiet ${job_env.PACKER_URL}", returnStdout: true)
+            sh "echo \"${job_env.PACKER_ZIP_MD5} ${zipname}\" >> md5sum"
+            sh(script: "md5sum -c --status md5sum", returnStdout: true)
+            sh "unzip ${zipname}"
+          }
+        }
+        if (!fileExists("${job_env.BUILD_OS}/images")) {
+          // clean images dir before building
+          sh(script: "rm -rf ${job_env.BUILD_OS}/images/*", returnStatus: true)
+        }
+      }
+
+      stage("Build Instance") {
+        def _packer_args = "${job_env.get(PACKER_ARGS, '')}"
+        def _packer_log = "${workspace}/packer.log"
+        def _artifact_list = []
+        // clean old log, for correct status grepping
+        if (fileExists(_packer_log)) {
+          sh "rm -v ${_packer_log}"
+        }
+
+        dir("${workspace}/${job_env.BUILD_OS}/") {
+          if (fileExists("config-drive/user-data.yaml")) {
+            common.infoMsg("Creating cloud-config drive")
+            if (fileExists("config-drive/cloudata.iso")) {
+              sh "rm -v config-drive/cloudata.iso"
+            }
+            sh "cloud-localds config-drive/cloudata.iso  config-drive/user-data.yaml"
+          }
+        }
+
+        if (job_env.BUILD_ONLY.toLowerCase() == "openstack") {
+
+          dir("${workspace}/${job_env.BUILD_OS}/") {
+            extra_vars_list = MapToList(extra_vars)
+            withEnv(["PATH=${env.PATH}:${workspace}/bin",
+                     "PACKER_LOG_PATH=${_packer_log}",
+                     "PACKER_LOG=1",
+                     "TMPDIR=${workspace}/tmp",
+                     "OS_USERNAME=${creds.username.toString()}",
+                     "OS_PASSWORD=${creds.password.toString()}"] + extra_vars_list) {
+
+              common.infoMsg("Run build with:")
+              sh(script: 'printenv|sort')
+              sh(script: "set -xe; packer build -only='openstack' ${_packer_args} -parallel=false template.json" )
+              _os_private = "${workspace}/${job_env.BUILD_OS}/os_${job_env.BUILD_OS}.pem"
+              if (fileExists(_os_private)) {
+                common.infoMsg("Packer private key:")
+                sh "cat ${_os_private}"
+              }
+              def packerStatus = sh(script: "grep \"Some builds didn't complete successfully and had errors\" ${_packer_log}", returnStatus: true)
+              // grep returns 0 if find something
+              if (packerStatus != 0) {
+                common.infoMsg("Openstack instance build complete")
+              } else {
+                throw new Exception("Openstack Packer build failed")
+              }
+
+              common.retry(3, 5) {
+                common.infoMsg("Attempt download openstack image..")
+                openstack.runOpenstackCommand("openstack image save --file ${_artifact_dir}/${job_env.IMAGE_NAME}.qcow2 ${IMAGE_NAME}", rcFile, openstackEnv)
+              }
+            }
+          }
+
+        } else if (job_env.BUILD_ONLY.toLowerCase() == 'qemu') {
+
+          dir("${workspace}/${job_env.BUILD_OS}/") {
+            extra_vars_list = MapToList(extra_vars)
+            withEnv(["PATH=${env.PATH}:${workspace}/bin",
+                     "PACKER_LOG_PATH=${_packer_log}",
+                     "PACKER_LOG=1",
+                     "TMPDIR=${workspace}/tmp",
+                     "PACKER_IMAGES_CACHE=${ImagesCacheFolder}"] + extra_vars_list) {
+              common.infoMsg("Run build with:")
+              sh(script: 'printenv|sort')
+              sh(script: "set -xe ; packer build -on-error=ask -only='qemu' ${_packer_args} -parallel=false template.json".toString())
+
+              def packerStatus = sh(script: "grep \"Some builds didn't complete successfully and had errors\" ${PACKER_LOG_PATH}", returnStatus: true)
+              // grep returns 0 if find something
+              if (packerStatus != 0) {
+                common.infoMsg("qemu instance build completed successfully")
+              } else {
+                throw new Exception("qemu instance build failed")
+              }
+              // collect artifacts
+              // TODO make it possible, process multiply artifacts by one run.
+              dir('images/') {
+                def _files = findFiles(glob: "**/${job_env.IMAGE_NAME}*")
+                if (_files.size() > 1) {
+                  common.warningMsg("Multiply artifacts detected!Only first one will be processed!")
+                } else if (_files.size() == 0) {
+                  common.warningMsg("No artifacts detected!")
+                }
+                for (String x : _files) {
+                  _file = sh(script: "set -x ; readlink -f ${x}", returnStdout: true)
+                  _artifact_list.add(_file.split('/').last())
+                  sh(script: "mv -v images/${x} ${_artifact_dir}/${job_env.IMAGE_NAME}.qcow2")
+                }
+              }
+            }
+          }
+
+        } else {
+          throw new Exception("Unexpected BUILD_ONLY=${env.BUILD_ONLY} target!")
+        }
+
+
+      }
+
+      stage("Publish artifacts") {
+        dir(_artifact_dir) {
+          common.infoMsg("Processing md5 for artifacts")
+          for (String x : _artifact_list) {
+            _md5 = sh(script: "md5sum ${x} > ${x}.md5", returnStdout: true).trim()
+            _size = sh(script: "ls -alh ${x}", returnStdout: true).trim()
+            common.infoMsg("Artifact file: ${_size}\n${_md5}")
+          }
+          if (job_env.PUBLISH_BACKEND.toLowerCase() == 'local') {
+            common.infoMsg("Uploading to: local")
+            common.infoMsg("For local publish target - nothing to do, all files in: ${_artifact_dir}")
+            if (job_env.get('CLEANUP_AFTER', false)) {
+              common.warningMsg("You are trying to use 'local' publish method, along with enabled CLEANUP_AFTER! ")
+              common.warningMsg("Disabling CLEANUP_AFTER option, to save you'r data ;) ")
+              job_env.CLEANUP_AFTER = false
+            }
+          } else if (job_env.PUBLISH_BACKEND.toLowerCase() == 'glance') {
+            common.infoMsg("Uploading to: openstack")
+            if (fileExists("${workspace}/venv")) {
+              common.infoMsg("cleaning virtualenv at:${workspace}/venv")
+              sh(script: "rm -rf ${workspace}/venv", returnStatus: true)
+            }
+            openstack.setupOpenstackVirtualenv(openstackEnv, job_env.OS_VERSION)
+            for (String x : findFiles(glob: "${_artifact_dir}/*")) {
+              if (x.endsWith('.md5')) {
+                common.warningMsg("Skipping:${x} from openstack upload!")
+                continue
+              }
+              openstack.runOpenstackCommand(String.format("glance image-create --name '%s' %s --file %s", imageShortName, glanceRunArgs, imageName), rcFile, openstackEnv)
+              // do upload
+            }
+
+
+          } else if (job_env.PUBLISH_BACKEND.toLowerCase() == 'http') {
+            for (String u_file : findFiles(glob: "${_artifact_dir}/*")) {
+              common.infoMsg("Uploading image ${IMAGE_NAME}")
+              def uploadImageStatus = ''
+              common.retry(3, 5) {
+                uploadImageStatus = sh(script: "echo curl -f -T ${u_file} ${job_env.UPLOAD_URL}", returnStatus: true)
+                if (uploadImageStatus != 0) {
+                  throw new Exception("Uploading file: ${u_file} failed!")
+                }
+              }
+
+            }
+            // Fixme for correct path ?
+            currentBuild.description = "<a href='http://ci.mcp.mirantis.net:8085/images/${IMAGE_NAME}.qcow2'>${IMAGE_NAME}.qcow2</a>"
+          } else {
+            throw new Exception("Unsupported publish backend:${job_env.PUBLISH_BACKEND}")
+          }
+
+        }
+      }
+    } catch (Throwable e) {
+      // If there was an error or exception thrown, the build failed
+      currentBuild.result = "FAILURE"
+      throw e
+    } finally {
+      if (job_env.get('CLEANUP_AFTER', false)) {
+        dir(workspace) {
+          sh "find . -mindepth 1 -delete"
+        }
+      } else {
+        common.infoMsg("Env has not been cleaned!")
+      }
+    }
+  }
+}
diff --git a/ubuntu-16.04/run.example.sh b/ubuntu-16.04/run.example.sh
new file mode 100644
index 0000000..df58f50
--- /dev/null
+++ b/ubuntu-16.04/run.example.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+# pre-requirments:
+# apt-get install cloud-localds
+# Cloudimg: wget https://cloud-images.ubuntu.com/xenial/XXXX/xenial-server-cloudimg-amd64-disk1.img
+# Packer: https://releases.hashicorp.com/packer/1.1.3/packer_1.1.3_linux_amd64.zip
+
+# Those script - only example for variables, which should be passed to packer and
+# overwrite variables under /scripts/ directory
+
+# External script sources:
+# http/bootstrap.saltstack.com.sh https://github.com/saltstack/salt-bootstrap
+#
+export IMAGE_NAME="ubuntu-16-04-x64"
+export UBUNTU_BASEURL="http://mirror.mirantis.com/proposed/ubuntu/"
+export SALTSTACK_REPO="deb [arch=amd64] http://mirror.mirantis.com/proposed/saltstack-2017.7/xenial xenial main"
+export SALTSTACK_GPG="https://repo.saltstack.com/apt/ubuntu/16.04/amd64/2017.7/SALTSTACK-GPG-KEY.pub"
+###
+# Hard-coded folder in template
+export PACKER_IMAGES_CACHE="${HOME}/packer_images_cache/"
+mkdir -p "${PACKER_IMAGES_CACHE}"
+
+export PACKER_LOG=1
+# For qemu test-build:
+cloud-localds  --hostname ubuntu --dsmode local config-drive/cloudata.iso  config-drive/user-data.yaml
+packer build -only=qemu -parallel=false -on-error=ask template.json
+#rm -rf ~/.packer.d/
+
diff --git a/ubuntu-16.04/template.json b/ubuntu-16.04/template.json
index 84e1a59..284237e 100644
--- a/ubuntu-16.04/template.json
+++ b/ubuntu-16.04/template.json
@@ -4,6 +4,7 @@
     "password": "ho5uo7Uome5d",
     "distro": "ubuntu-16-04-x64",
     "disk_size": "8000",
+    "images_cache": "{{ env `PACKER_IMAGES_CACHE` }}",
     "ubuntu_baseurl": "https://mirror.mirantis.com/proposed/ubuntu/",
     "saltstack_gpg": "{{ env `SALTSTACK_GPG` }}",
     "saltstack_repo": "{{ env `SALTSTACK_REPO` }}",
@@ -284,6 +285,7 @@
       "iso_checksum": "566efef1d6f12e7d3a994c2405bdb642",
       "iso_checksum_type": "md5",
       "iso_url": "http://cloud-images.ubuntu.com/releases/xenial/release-20180306/ubuntu-16.04-server-cloudimg-amd64-disk1.img",
+      "iso_target_path": "{{ user `images_cache`}}/release-20180306_xenial-server-cloudimg-amd64-disk1.img",
       "disk_image": true,
       "disk_compression": true,
       "accelerator": "kvm",
diff --git a/ubuntu-16.04/template.json.env b/ubuntu-16.04/template.json.env
index 12be33e..ed6351e 100644
--- a/ubuntu-16.04/template.json.env
+++ b/ubuntu-16.04/template.json.env
@@ -1,5 +1,7 @@
 # Env variables and description:
-DO_API_TOKEN
+#DO_API_TOKEN
+PACKER_IMAGES_CACHE="${HOME}/packer_images_cache/"
+
 
 # base.sh
 UBUNTU_BASEURL=http://mirror.mirantis.com/stable/ubuntu/
