| 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