Fix unreference variable.
[cdist.git] / cdist
diff --git a/cdist b/cdist
index bd64e77239c9663c5a28d1483121d93e484f3941..682924413cc5f5001a300873ac20e38cff882ab6 100755 (executable)
--- a/cdist
+++ b/cdist
@@ -548,8 +548,10 @@ class DockerTarget(Target):
             opts += '-v %s:%s ' % (m, m)
         if self.privileged:
             opts += '--privileged=true '
+        if config.has('git_reference'):
+            opts += '-v %s:%s ' % (config.get('git_reference'), config.get('git_reference'))
         if self.ccache:
-            opts += "-e CCACHE_DIR=/ccache --volumes-from ccache-%s" % self.image
+            opts += "-e CCACHE_DIR=/ccache/%s --mount source=ccache,target=/ccache" % self.image
 
         tag = self.image
         if config.has('docker_hub_repository'):
@@ -904,6 +906,8 @@ class Tree(object):
             redirect = '>/dev/null'
         if config.has('git_reference'):
             ref = '--reference-if-able %s/%s.git' % (config.get('git_reference'), self.name)
+        else:
+            ref = ''
         command('git clone %s %s %s/%s.git %s/src/%s' % (flags, ref, config.get('git_prefix'), self.name, target.directory, self.name))
         os.chdir('%s/src/%s' % (target.directory, self.name))