[Pharo-project] Amazon AWS S3 Monticello Mirror
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
thanks this is an excellent initiative. Marcus will love that. Stef On May 15, 2011, at 10:46 PM, Sven Van Caekenberghe wrote:
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
participants (2)
-
Stéphane Ducasse -
Sven Van Caekenberghe