Park Place, the S3 Clone You've Been Always Almost Wanting to Save Fifteen Cents With! #
Yes yeah, that’s right. Put that dime away and put especially that clunky nickel away. Rubyist’s don’t get rich by spending money frivolously on online services. And when we do, we don’t spend in minute coinage! Micropayments only feed an ecosystem built entirely from misers and young, innocent newlyweds. Maybe steam captains. We don’t want that for us!
That crisp, sensible whistling you hear is coming from Park Place. Experts in our field agree! For example, here is what I said earlier today about Park Place when I was by myself in the garden with my blazer on:
I sure got carried away today working on that S3 clone. Geez, what was I thinking? Now I’ve ruined a whole crop of cucumbers. (Sound of stabbing many vegetables with so pokey cleets.) At least my new S3 clone, which happens to go by the name of Park Place, is a complete implementation of the REST API. However, I haven’t done any of the XML ACL requests yet. Like RedHanded readers are gonna care about that!
Yes, it’s done in Camping. And you have to update Camping. AND UPDATE MONGREL AND ACTIVERECORD.
gem install camping --source code.whytheluckystiff.net gem install mongrel activerecord svn co http://code.whytheluckystiff.net/svn/parkplace/trunk parkplace cd parkplace/lib ruby parkplace.rb
If you really do start into this, some tips:
- It’ll create the SQLite3 database for you, if you’re sure you’ve absolutely followed BeAlertWhenOnSqlite3.
- You’ll need to add users manually into the
parkplace_users
table. - If you use Amazon’s Ruby library, you’ll need to change the
S3::DEFAULT_HOST
andS3::PORTS_BY_SECURITY
inS3.rb
. They are hard-coded. Amazon does not want you to save fifteen cents! - And, oh once again, THERE IS NO SOAP SUPPORT.
So, in conclusion, Amazon will be pretty furious about this and they will pursue class-action suits and, since my life is not in order, lots of pretty gruesome things will come out about me. One of the first things they’ll bring up is how I claim to give away FREE WEEiZARDS! and have failed to deliver to all participating parties. The ignorance of my critics never fails to astonish me. I have delivered free weeizards! on many occassions and at all times. Duh, check your fax machines, guys! But the courts DO NOT see eye-to-eye. (Never have.)
You’ll definitely want to be blogging about this one, guys. It’s one of those classic stories many can relate to, while still being highly rare and fully collectible!
Danno
Wouldn’t WebDAV cousin, once removed, be more appropriate?
pmcm
Here was me thinking you meant this S3 Turns out that one’s actually called S5… two louder.
flgr
Hm, probably no need to modify S3.rb.
Just do this:
Hard coding stuff is quite hard in Ruby.
mindtriggerz
Hrm… RES Tfull network object persistance… interesting…
why
If you want to put a WebDAV layer on top, go ahead.
trevor
very very cool. nice work why.
<|:{
The only S3 I know was a maker of graphics chips in the 90’s. Did you clone a graphics engine?
jes5199
Will this work with BRACKUP ?
why
<|:{: Yes, the graphics are in XML .
jes5199: At very least, someone’s gonna have to hack Perl’s Net::Amazon::S3 module to let you say a host.
Skorgu
Thats powerfully hot. Supa-cool why, supa-cool.
psmith
I followed your instructions but was greeted with:
why
psmith: You’ve got an old version of Mongrel somewhere. Or have you installed Mongrel from source at all? It could be loading that rather than the gem. That’ll need to go as well.
psmith
why: That got it: I had an early version installed from source. D’oh.
<|:{
When is the Nvidia due?
snej
I don’t get it—why is this useful? The point of S3 is to let you cheaply rent storage on a Huge Server In The Sky with immense bandwidth, uptime and reliability. The API is just the means to get your stuff there. Running the API on my server doesn’t make my server bigger or faster or more reliable. Did I miss something?
why
Hey, snej, I’ll explain the point of the software if you can give a good reason for questioning it.
Skorgu
snej: Now any software that uses S3 can also be used with any given server without mucking about in its internals. It gives us the option to use S3-aware apps without S3.
misuba
parkplace = flexibility, and insurance against any future corporate naughty doin’s on the part of a server provider.
floyd
poor me
obie
the point as I see it… test your S3-usin’ apps for free using a local instance of Park Place. Use the real S3 for production only, since it costs money.
mindtriggerz
snej: But what if you DO have a Huge Server in the Sky already? Why pay Amazon if you can provide the stuff for free?
Why: Camping is begging for a ActionWebService layer. I may end up working on that, if I’m not too buisy with Pry
Yeehaw!
I’m gonna throw these ups on http://rubyonrailsblog.com for good ol freshness and poppin fun :)
Comments are closed for this entry.