View Full Version : [FIXED] deploy fails on Mac

17 Apr 2012, 8:41 AM

Architect build 410, on OS X lion (latest updates)

When I press the deploy button rsync fails due to a missing --exclude before project.xds.

if I copy the rsync and run it in a terminal, including the --exclude before project.xds it runs fine.

to me it seems that that 'project.xds' is wrong too!, it should --exclude [projectname].xds

must be a typo in the script


the terminal output: (xxxxx replaces some info)
Last login: Tue Apr 17 18:23:55 on ttys001
xxxxxx-xxxxxs-macbook-pro:~ xxxxx$ /var/folders/79/b11207qx20db42yxqmlbqrdc0000gn/T/temp.sh ; exit;
rsync -arvuz /Users/xxxxxx/Documents/senchaarchitect/xxx/ /Users/xxxxxx/html/work/xxx/ --exclude .svn --exclude .git --exclude .DS_Store --exclude .cvs --exclude metadata --exclude chat.xds project.xds --cvs-exclude
building file list ... done
ERROR: destination must be a directory when copying more than 1 file
rsync error: errors selecting input/output files, dirs (code 3) at /SourceCache/rsync/rsync-42/rsync/main.c(503) [receiver=2.6.9]
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at /SourceCache/rsync/rsync-42/rsync/io.c(452) [sender=2.6.9]

additional info:
I looked up the temp.sh file and it's contents seem correct!

echo rsync -arvuz /Users/martijn/Documents/senchaarchitect/uco/ /Users/xxxxxx/html/work/xxx/ --exclude .svn --exclude .git --exclude .DS_Store --exclude .cvs --exclude metadata --exclude *.xds --cvs-exclude
rsync -arvuz /Users/xxxx/Documents/senchaarchitect/xxx/ /Users/xxxxxx/html/work/xxx/ --exclude .svn --exclude .git --exclude .DS_Store --exclude .cvs --exclude metadata --exclude *.xds --cvs-exclude

17 Apr 2012, 9:53 AM
Ok that's wild!

You have two xds fiels in the same folder uco/

chat.xds and project.xds

1) That's not encouraged
2) Wondering why it's converting *.xds to the actual files ...

Looking into this

17 Apr 2012, 10:33 AM
It is even more weird.

there are no chat.xds and project.xds at all in that directory, in fact I do not recall a project "chat"

If i cut and past the full path of temp.sh and start it at from the command prompt it runs fine.
It looks like there is a stale temp.sh somewhere which is executed instead there is no logic in that since the file is executed with full path, but still it looks like that is happening.

If info is needed, ask me


17 Apr 2012, 10:48 AM
Deploy also fails if you have a space in the path. See the terminal log below

rsync -arvuz /Users/zoltanmagyar/Sandbox/Sencha Designer/FieldServices/ /Users/zoltanmagyar/Sandbox/Sencha Designer/FieldServices/../deployed/ --exclude .svn --exclude .git --exclude .DS_Store --exclude .cvs --exclude metadata --exclude *.xds --cvs-excludebuilding file list ... rsync: link_stat "/Users/zoltanmagyar/Sandbox/Sencha" failed: No such file or directory (2)
rsync: link_stat "/Users/zoltanmagyar/Designer/FieldServices/." failed: No such file or directory (2)
rsync: link_stat "/Users/zoltanmagyar/Sandbox/Sencha" failed: No such file or directory (2)
rsync: mkdir "/Users/zoltanmagyar/Designer/FieldServices/../deployed" failed: No such file or directory (2)
rsync error: error in file IO (code 11) at /SourceCache/rsync/rsync-42/rsync/main.c(544) [receiver=2.6.9]
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at /SourceCache/rsync/rsync-42/rsync/io.c(452) [sender=2.6.9]

The correct path is /Users/zoltanmagyar/Sandbox/Sencha Designer/FieldServices/ but it in some case tries to access /Users/zoltanmagyar/Designer/FieldServices/. and /Users/zoltanmagyar/Sandbox/Sencha which are obviously does not exist.

17 Apr 2012, 11:00 AM
I know if you could put single quotes around the source and dest directories, it would work with spaces in the path, that is normal behavior.

I just do not understand where the chat.xds and project.xds come from, they are non existent on my file system....


17 Apr 2012, 11:19 AM
Single quotes are working as long as you have absolute path. But working in a team relative paths must be used so it's not an option.

17 Apr 2012, 11:22 AM
It turns out rsync is finding chat.xds and project.xds in my $HOME where it is executed. so the *.xds makes rsync behave different if there are project files in the home directory of the developer in question.

My iOS simulator and packager do not work either. if to look into the iOS thing there are posts on that. but the packager not working might be related this, not sure:

Last login: Tue Apr 17 21:09:35 on ttys000
xxxxxxx-xxxxxx-macbook-pro:~ xxxxxxx$ /var/folders/79/b11207qx20db42yxqmlbqrdc0000gn/T/temp.sh ; exit;
sencha package /Users/xxxxx/Documents/senchaarchitect/test/packager.json
stbuild(1443) malloc: *** mmap(size=18446744072704991232) failed (error code=12)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
terminate called throwing an exceptionlogout

[Process completed]

17 Apr 2012, 11:27 AM
you are right on that, but not completely
../'directory with spaces'/bin will work too..
will make things more complex though


17 Apr 2012, 5:49 PM
Making this work well on Linux Mac and windows is my sole goal this week! Quotes are 1 route I've been testing

17 Apr 2012, 11:54 PM
Quetes will work if the space is in the relative path not in the base path. In our case it ../deployed so adding quotes around wouldn't help at all. I think the derived path must be quoted before it is written to the script as a parameter of rsync.

19 Apr 2012, 7:03 AM
give me an example of the script you'd like to see

e.g. rsync [options] src dest

19 Apr 2012, 8:10 AM
I think all what is needed here is to use

rsync -arvuz 'src' 'dest'

Instead of

rsync -arvuz src dest

I.e. just add quotes around the paths to make sure spaces in the path don't mess up rsync. You can test it for yourself creating a simple test project on a path containing space.

19 Apr 2012, 8:24 AM
Ah OK good that's already been done and will be in the next update