[Pharo-project] The ultimate SmalltalkHub migration script
I've just used the following scripts to copy many of Lukas' repositories to SmalltalkHub. | source goSource destination goDestination files destinationFiles | source := MCHttpRepository location: ' http://source.lukas-renggli.ch/pier2addons'. destination := MCSmalltalkhubRepository owner: 'Pier' project: 'Pier2Addons' user: 'DamienCassou' password: 'XXXXXX'. goSource := Gofer new repository: source. goDestination := Gofer new repository: destination. files := source allVersionNames. (goSource allResolved select: [ :resolved | files anySatisfy: [ :each | resolved name = each ] ]) do: [ :each | goSource package: each packageName ]. goSource fetch. "downloads all mcz on your computer" destinationFiles := destination allVersionNames. "checks what files are already at destination" files reject: [ :file | destinationFiles includes: file ] thenDo: [ :file | goDestination version: file ]. "selects only the mcz that are not yet at destination" goDestination push. "sends everything to SmalltalkHub" self assert: destination allVersionNames sorted = files sorted. "checks we have exactly the same files at source and destination" -- Damien Cassou http://damiencassou.seasidehosting.st "Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
On Wed, Apr 3, 2013 at 11:06 AM, Frank Shearar <frank.shearar@gmail.com>wrote:
Is this a fork, or is the SmalltalkHub the new canonical repository for all things Lukas?
for Magritte, Pier and PetitParser, SmalltalkHub is now the official repository. -- Damien Cassou http://damiencassou.seasidehosting.st "Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
Thanks Damien!!! Stef On Apr 3, 2013, at 11:03 AM, Damien Cassou <damien.cassou@gmail.com> wrote:
I've just used the following scripts to copy many of Lukas' repositories to SmalltalkHub.
| source goSource destination goDestination files destinationFiles |
source := MCHttpRepository location: 'http://source.lukas-renggli.ch/pier2addons'. destination := MCSmalltalkhubRepository owner: 'Pier' project: 'Pier2Addons' user: 'DamienCassou' password: 'XXXXXX'.
goSource := Gofer new repository: source. goDestination := Gofer new repository: destination.
files := source allVersionNames.
(goSource allResolved select: [ :resolved | files anySatisfy: [ :each | resolved name = each ] ]) do: [ :each | goSource package: each packageName ].
goSource fetch. "downloads all mcz on your computer"
destinationFiles := destination allVersionNames. "checks what files are already at destination" files reject: [ :file | destinationFiles includes: file ] thenDo: [ :file | goDestination version: file ]. "selects only the mcz that are not yet at destination"
goDestination push. "sends everything to SmalltalkHub"
self assert: destination allVersionNames sorted = files sorted. "checks we have exactly the same files at source and destination"
-- Damien Cassou http://damiencassou.seasidehosting.st
"Success is the ability to go from one failure to another without losing enthusiasm." Winston Churchill
participants (3)
-
Damien Cassou -
Frank Shearar -
stephane ducasse