// you’re reading...

Coder()

Gotchyas along the road to Ruby application deployment success on Joyent

Hopefully this will be most of the difficult issues we run into, as we have several ‘S’ and ‘M’ accounts over at Joyent, and we are supposed to learn from our experiences and mistakes, right? I mean, most other mammals can do this, right, so why not coders, I ask you.

First off, the Joyent wiki documentation is kind of confusing. You got textdrive the product and textdrive the server, shared hosting, shared accelerators, connectors, plain accelerators… product names, service names and domain names are all overloaded. And, coming in from Google, there are no markings on the pages to tell in which section they are part of, and their forums are like this too.

So all this is to say, please excuse me and do not laugh to hard when you read that, at my registrar (GoDaddy), to set up my DNS:
I first tried

dns1.textdrive.com
dns2.textdrive.com
dns3.textdrive.com
dns4.textdrive.com

I then tried

dns1.joyentdns.com
dns2.joyentdns.com
dns3.joyentdns.com
dns4.joyentdns.com

Finally, I figured out that this was for one of their other services, so, at GoDaddy the trick was to:

First configure your domain so that it says it is to be hosted at GoDaddy It isn’t really going to be, Well, the name server is, but not the pages. Anyway, another overloading of terms here.

Then use Total DNS Control Panel to point (in the Default DNS zone) the host at your IP address over at Joyent. Started working in about an hour or so.

Anyway, followed the directions in http://wiki.joyent.com/accelerators:absolute_beginners_guide and http://wiki.joyent.com/accelerators:deploying_rails_apps

Set up Subversion, SVN client on Windows box, SVN server on the Joyent server. The SVN server is already in place, but when adding user to access SVN, well, there are config files in ~/etc/subversion and in ~/.svn/subversion? Anyway there are two, and well, here is the thing. The Subversion user must be able to have access to subversion, SSH to be able to log in automatically from the client, and to add things to your deployment directory.
One of the mistakes I made was to create a special SVNUser, which I then backed out this and had to modify all the config files blah blah blah pain pain pain.

Then, a ‘feature’ of su on Solaris is apparently that when you su Another_User ~ (i.e. tilde) still points to the home directory of the user you logged in over SSH as. so all those config files I set up? They were for admin, not the SVN user. Doh!

And then, the documentation says that the URL for the SVN repository is http://my_domain_name.com/svn/repos. Well it took me forever to figure out that repos was supposed to be the name of the repository, which was something like svnreposository in my case.

Yeah, Yeah, we all laugh about it NOW. But these things took hours to figure out. OK, you can stop laughing now.

Then, related to the above ’su’ anomaly, make sure when you checkout of SVN, to ‘prime’ it for the initial import process, that you do it as the user who will be doing the import in. And you can’t su to them you have to log in as them.
svn export http://my_domain_name/svn/my_repostiroy_name/trunk /home/somewhere_temporary/tmp

Next, how to get rid of those nasty ^M ’s all over the freakin place.

And, to get different blog software, as this version of Wordpress has a NASTY text editor that is slow and weird and jumps around and is more or less useless.

Discussion

No comments for “Gotchyas along the road to Ruby application deployment success on Joyent”

Post a comment

You must be logged in to post a comment.

Categories