[Pharo-project] Amazon AWS S3 Monticello Mirror

Sven Van Caekenberghe sven at beta9.be
Sun May 15 22:46:24 CEST 2011


Hello,

I did a little proof of concept: I set up an Amazon AWS S3 Monticello Mirror.

I wrote a Smalltalk script using the Zn HTTP client, the Zinc-AWS S3 client and some pieces of MCHttpRepository and ZnMonticelloServerDelegate to copy all 273 entries of http://www.squeaksource.com/ZincHTTPComponents/ into a folder called 'ZincHTTPComponents' in an S3 bucket named 'mc-mirror'. Then I configured things a bit to make it look like a public read-only Monticello HTTP repository.

The net result is this Monticello repository:

MCHttpRepository
	location: 'http://mc-mirror.s3-website-eu-west-1.amazonaws.com/ZincHTTPComponents/'
	user: ''
	password: ''

Which works as it should on unmodified images (except that it is read-only).
With a proper DNS CNAME entry the hostname could become something more friendly.

Next, I will try to turn this little hack into something more robust, that can also efficiently resynchronize the copy when versions are added to the original. Then, this could become the bot I talked about earlier.

IMHO this could be a very robust fallback mechanism for SqueakSource, and even a primary one for those repositories you never commit to (which is most of them) and thus take off some the load of SqueakSource.

Sven




More information about the Pharo-project mailing list