upload
1 #!/bin/sh 2 set -e 3 4 SSH_LOGIN=${SSH_LOGIN:-release} 5 SSH_ADDRESS=${SSH_ADDRESS:-$SSH_LOGIN@files.radicle.xyz} 6 SSH_KEY="$(rad path)/keys/radicle" 7 8 main() { 9 version="$("$(dirname "$0")/version")" 10 11 echo "Uploading Radicle $version..." 12 13 if [ -z "$version" ]; then 14 echo "fatal: empty version number" >&2 15 exit 1 16 fi 17 18 # Create remote folder. 19 ssh -i $SSH_KEY $SSH_ADDRESS mkdir -p /var/www/files.radicle.xyz/releases/radicle-httpd/$version 20 # Copy files over. 21 scp -i $SSH_KEY "$(dirname "$0")/artifacts/radicle-httpd-$version"* $SSH_ADDRESS:/var/www/files.radicle.xyz/releases/radicle-httpd/$version 22 scp -i $SSH_KEY "$(dirname "$0")/artifacts/radicle-httpd.json" $SSH_ADDRESS:/var/www/files.radicle.xyz/releases/radicle-httpd/$version 23 24 for target in $(cat "$(dirname "$0")/TARGETS"); do 25 archive=/var/www/files.radicle.xyz/releases/radicle-httpd/$version/radicle-httpd-$version-$target.tar.xz 26 symlink=/var/www/files.radicle.xyz/releases/radicle-httpd/$version/radicle-httpd-$target.tar.xz 27 28 echo "Creating symlinks for $target.." 29 30 ssh -i $SSH_KEY $SSH_ADDRESS ln -snf $archive $symlink 31 ssh -i $SSH_KEY $SSH_ADDRESS ln -snf $archive.sig $symlink.sig 32 ssh -i $SSH_KEY $SSH_ADDRESS ln -snf $archive.sha256 $symlink.sha256 33 done 34 35 if git describe --exact-match --match='releases/*' 2>/dev/null; then 36 echo "Creating 'latest' symlink.." 37 ssh -i $SSH_KEY $SSH_ADDRESS ln -snf /var/www/files.radicle.xyz/releases/radicle-httpd/$version /var/www/files.radicle.xyz/releases/radicle-httpd/latest 38 else 39 echo "Skipping 'latest' symlink creation for development build." 40 fi 41 42 echo "Pushing tags.." 43 git push rad --tags 44 45 echo "Done." 46 } 47 48 main "$@"