/
osuosl.sh
executable file
·64 lines (54 loc) · 1.81 KB
/
osuosl.sh
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
61
62
63
64
#!/bin/bash
# Do not upload artifacts generated as part of a pull request
if test x"${TRAVIS_PULL_REQUEST-false}" != x"false"; then
echo "Not uploading AppImage since this is a pull request."
exit 0
fi
FILE="$1"
[ -f "$FILE" ] || { echo "$0: Please provide a valid path to a file" >&2 ; exit 1 ;}
# install ssh key
openssl aes-256-cbc -K $encrypted_99b076488ab1_key -iv $encrypted_99b076488ab1_iv -in build/travis/resources/osuosl_nighlies_rsa.enc -out build/travis/resources/osuosl_nighlies_rsa -d
# Copy over private key, and set permissions
cp build/travis/resources/osuosl_nighlies_rsa $HOME/.ssh/osuosl_nighlies_rsa
# set permission
chmod 600 $HOME/.ssh/osuosl_nighlies_rsa
# Create known_hosts
touch $HOME/.ssh/known_hosts
# Add osuosl key to known host
ssh-keyscan ftp-osl.osuosl.org >> $HOME/.ssh/known_hosts
eval "$(ssh-agent -s)"
expect << EOF
spawn ssh-add $HOME/.ssh/osuosl_nighlies_rsa
expect "Enter passphrase"
send "${OSUOSL_NIGHTLY_PASSPHRASE}\r"
expect eof
EOF
SSH_INDENTITY=$HOME/.ssh/osuosl_nighlies_rsa
FILE_UPLOAD_PATH="$(basename "${FILE}")"
# Read architecture from file name (characters between last dash and .AppImage)
ARCH="$(basename "$FILE" | sed -r 's|^.*-([^-]*)\.AppImage$|\1|')"
case "${ARCH}" in
x86_64|amd64 )
ARCH_NAME="x86_64"
;;
i686|i386|i[345678]86 )
ARCH_NAME="i686"
;;
armel )
ARCH_NAME="armel"
;;
armhf )
ARCH_NAME="armhf"
;;
aarch64 )
ARCH_NAME="aarch64"
;;
* )
echo "Error: unrecognised architecture '${ARCH}'" >&2
exit 1
;;
esac
# transfer file
scp -C -i $SSH_INDENTITY $FILE musescore-nightlies@ftp-osl.osuosl.org:ftp/linux/$ARCH_NAME/$FILE_UPLOAD_PATH
# delete old files
ssh -i $SSH_INDENTITY musescore-nightlies@ftp-osl.osuosl.org "cd ~/ftp/linux/$ARCH_NAME; ls MuseScoreNightly* -t | tail -n +41 | xargs -r rm"