tasks/ssh.min
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
#!/usr/bin/env min ".env.yml" fread from-yaml :env "min.yml" fread from-yaml :config env /ssh-host :host env /ssh-h3rald-dir :h3rald-dir env /ssh-min-dir :min-dir "Min_DeveloperGuide.htm" :guide-file "$#/assets/min/$#" (h3rald-dir guide-file) =% :h3rald-guide "cd " min-dir suffix :min-cd "cd " h3rald-dir suffix :h3rald-cd "$#/contents/min.md" (min-dir) =% :min-md "min.yml" fread from-yaml :config config /version :min-version "version:\\s+\\d+\\.\\d+\\.\\d+" :min-v-reg "version: $#" (min-version) =% :min-v-rep ; Helpers ( :prog (prog which "" ==) ("$# is not available" (prog) =% error 1 exit) when ) :required ( "export PATH=~/bin:~/.nimble/bin:$PATH" min-cd ) :init {} ( ; This should be executed on the remote host guide-file h3rald-guide cp min-md fread "s/$#/$#/m" (min-v-reg min-v-rep) =% regex min-md fwrite ) :h3rald-update ( "ssh" required "ssh - build ($#)" (host) =% notice ( init "min run ssh:h3rald-update" h3rald-cd "git pull" "hastysite build" ) => "; " join :cmds "ssh $# \"$#\"" (host cmds) =% !! ) %h3rald ( "ssh" required "ssh - build ($#)" (host) =% notice ( init "git pull" "nifty upgrade" "min run build" "min run build:guide" "min run build:site" ) => "; " join :cmds "ssh $# \"$#\"" (host cmds) =% !! ) %build +ssh-tasks |