42 lines
1.1 KiB
Factor
42 lines
1.1 KiB
Factor
! Copyright (C) 2008 Slava Pestov.
|
|
! See http://factorcode.org/license.txt for BSD license.
|
|
USING: checksums checksums.openssl splitting assocs
|
|
kernel io.files bootstrap.image sequences io namespaces make
|
|
io.launcher math io.encodings.ascii io.files.temp io.pathnames
|
|
io.directories ;
|
|
IN: bootstrap.image.upload
|
|
|
|
SYMBOL: upload-images-destination
|
|
|
|
: destination ( -- dest )
|
|
upload-images-destination get
|
|
"slava@factorcode.org:/var/www/factorcode.org/newsite/images/latest/"
|
|
or ;
|
|
|
|
: checksums ( -- temp ) "checksums.txt" temp-file ;
|
|
|
|
: boot-image-names ( -- seq ) images [ boot-image-name ] map ;
|
|
|
|
: compute-checksums ( -- )
|
|
checksums ascii [
|
|
boot-image-names [
|
|
[ write bl ]
|
|
[ openssl-md5 checksum-file hex-string print ]
|
|
bi
|
|
] each
|
|
] with-file-writer ;
|
|
|
|
: upload-images ( -- )
|
|
[
|
|
"scp" ,
|
|
boot-image-names %
|
|
"temp/checksums.txt" , destination ,
|
|
] { } make try-process ;
|
|
|
|
: new-images ( -- )
|
|
"" resource-path
|
|
[ make-images compute-checksums upload-images ]
|
|
with-directory ;
|
|
|
|
MAIN: new-images
|