     .then (ref) ->
       opts.ref = ref
       new Promise (resolve, reject) ->
-        action args..., (err) ->
+        action clonePath, args..., (err) ->
           unless err?
             resolve()
           else

    .catch (err) ->
      callback err
    .finally ->
      fse.remove clonePath

    .catch (err) ->
      callback err
    .finally ->
      console.log "Remove #{clonePath}"
      fse.remove clonePath
      console.log "Done"

  update: (action, args..., opts, callback) ->
    clonePath = "#{repoPath}-#{opts.branch}-#{Date.now()}"
