Quantcast
Channel: Metal Toad
Viewing all articles
Browse latest Browse all 526

Fixing "no such file" error in Capistrano upload()

$
0
0
upload via sftp failed on metaltoad.com: Net::SFTP::StatusException
(Net::SFTP::StatusException open ...releases/20130408223054/drupal/
sites/all/themes/boilerplate/css/compiled/default.css (2, "no such file"))

Last week, this error brought many of our deployments to a screeching halt. The error in question was produced by an upload task intended to compile and deploy Compass assets. It turns out that by default, the FileTransfer::upload() method uses net-sftp. In the past this gem has always created the target directory during a recursive upload. However, starting with version 2.1.x that behavior has changed, and it will not create the target by default.

commit ccf42984
Author: Pablo Merino
Date: Sat Apr 28 11:05:03 2012 +0200

    Added option to create directory on directory upload

Solution

Use the :mkdir option, like this:

upload(from, "#{release_path}/#{theme_path}/css/compiled",
  {:via =>:sftp, :mkdir=>true})
Filed under Capistrano, ruby, deployment.

Viewing all articles
Browse latest Browse all 526

Trending Articles