Issue with nanoc deploy with rsync on a different port, plus alternative deployment advice from a GIT repo?

Skip to first unread message

Dave Everitt

Feb 9, 2020, 9:36:24 AM2/9/20
to nanoc
I've had previous issues with rsync, but moved the site to another server where we've restricted access by port (i.e. not 22) and am getting another error. My setup:

    kind: rsync
    dst: 'username@SERVERIPADDRESS:PORT/home/user/webapps/html'

I'm using a high-numbered port specified in the address (:PORT), but getting the following error:

exit status: 255
  stdout: Nothing written
  stderr: ssh: connect to host SERVERIPADDRESS= port 22: Connection refused

although the correct port is specified in the dst value, it seems to be ignored - is there a way to specify the port in nanoc.yaml?

To confirm: I can SSH in on the command-line using these credentials.

Places I've looked:

Or would I be better going all the way with GIT? We've used GIT for pushing other non-nanoc sites to the same server, but the GIT repo for this site (current single remote on GitHub) covers the entire nanoc folder, excluding "output" - for now I'd rather to avoid the complexity of fiddling with the 'output' directory to make it a separate repo - unless there's an easier way.

Denis Defreyne

Feb 9, 2020, 10:04:20 AM2/9/20
Hey Dave,

Try adding this to the rsync options in the configuration file:
options: [ '-e', 'ssh -p myport' ]
... replacing myport with the port number.

Rsync runs over SSH, so to run it over a different port, you specify a different SSH command (with the port) using -e.

Hope this helps,


You received this message because you are subscribed to the Google Groups "nanoc" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit
Message has been deleted

Dave Everitt

Feb 9, 2020, 10:46:33 AM2/9/20
to nanoc
thanks Denis

that got a little further, but although the path is correct:

TTY::Command::ExitError: Running `rsync -e ssh\ -p\ 24718 /PATH_TO_LOCAL_SITE/output/ USER@IPADDRESS/home/USERNAME/webapps/html` failed with
  exit status: 3
  stdout: skipping directory .
  stderr: rsync: change_dir#3 "/PATH_TO_LOCAL_SITE//USER@IPADDRESS/home/USERNAME/webapps" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(706) [Receiver=3.1.3]

I'm actually getting better results by using GIT after I:
  • set up a bare GIT repo in the user folder but outside the remote website root
  • set my deploy block "remote" value to the bare repo
  • use a "hooks/post-receive" script inside my remote repo to copy the files to the site root (not yet working, but see below)
Now nanoc appears to deploy without error:

No issues found. Deploying!
Deploying via Git to branch “master” on remote “ssh://USERNAME@DOMAIN:PORT/home/USER/REMOTE.git”…

However, my remote repo on the server isn't getting updated on "deploy":

Deploying via Git to branch “master” on remote “ssh://USERNAME@DOMAIN:PORT/home/USER/REMOTE.git”…

Although there's no error. So if you can spot anything obvious, let me know!

Dave Everitt

Feb 9, 2020, 11:13:49 AM2/9/20
to nanoc

  • accepting the SSH cert locally
  • adding the remote path to GIT in the "output" repo
  • `chmod +x` the "post-receive" hook on the server
nanoc is now happily deploying using GIT!

I can only thank you for setting up nanoc internals so this is relatively easy i.e. knowing that `nanoc deploy` means the output dir when using a GIT repo (with the correct remote) inside it.

I wish I could mark the post "solved" or change the title… it wasn't too painful after all.

I still have other nanoc sites that use rsync, so I'll see how it goes with them.

Dave Everitt

Feb 10, 2020, 6:04:09 AM2/10/20
to nanoc
Briefly - Denis, if you want me to add this GIT method (to a server rather than to GitHub pages) to the Nanoc deployment section of the docs I'd be happy to when I get a moment. The full details are on my edited post at ServerFault. Just let me know.

Pito Salas

Mar 31, 2020, 9:24:46 AM3/31/20
to, Julian Ho
Hi there,

Has anyone tried to generate slides (i.e. presentations) from the markdown using nanoc? Any tips?

- Pito

Dave Everitt

Apr 1, 2020, 6:55:13 AM4/1/20
to nanoc
Hi Pito  - this seems like it needs a new post rather than adding to this one? BTW I use pure Markdown and Reveal.js for slides, although nanoc could handle this with a right Reveal-based layout… - Dave
Reply all
Reply to author
0 new messages