Skip to content

Commit 07c1d72

Browse files
committed
Refactor SF_deployer and SF_docs_deployer scripts
- Simplify and consolidate logic in SF_deployer - Introduce deploy_file function for reusability - Update folder structure to include Raspberry Pi 5 - Reorganize SF_docs_deployer with modular set_folder_and_filepath function - Improve error handling and URL encoding - Standardize deployment process across different toolchain types
1 parent 26411e1 commit 07c1d72

File tree

2 files changed

+110
-231
lines changed

2 files changed

+110
-231
lines changed

utils/SF_deployer

+50-132
Original file line numberDiff line numberDiff line change
@@ -23,141 +23,59 @@
2323

2424
# This script auto-deploys CI compiled Cross & Native GCC Toolchain binaries to Sourceforge secured server
2525

26-
#Deploy Cross-compiler Toolchain binaries
27-
if [ -f "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" ]; then
28-
if [ "$RPI_TYPE" = "64" ]; then
29-
if [ "$BASE" = "true" ]; then
30-
if [ "$RPIOS_TYPE" = "buster" ]; then
31-
FOLDER="CLI Base/64/Buster/GCC $GCC_VERSION"
32-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
33-
FOLDER="CLI Base/64/Bullseye/GCC $GCC_VERSION"
34-
else
35-
FOLDER="CLI Base/64/Bookworm/GCC $GCC_VERSION"
36-
fi
37-
else
38-
if [ "$RPIOS_TYPE" = "buster" ]; then
39-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/Buster/GCC $GCC_VERSION"
40-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
41-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/Bullseye/GCC $GCC_VERSION"
42-
else
43-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/Bookworm/GCC $GCC_VERSION"
44-
fi
45-
fi
46-
if [ "$FOLDER" != "" ]; then
47-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
48-
fi
49-
else
50-
if [ "$RPIOS_TYPE" = "buster" ]; then
51-
if [ "$BASE" = "true" ]; then
52-
FOLDER="CLI Base/Buster/GCC $GCC_VERSION"
53-
else
54-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/Buster/GCC $GCC_VERSION"
55-
fi
56-
if [ "$RPI_TYPE" = "0-1" ] && [ "$FOLDER" != "" ]; then
57-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 1, Zero/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
58-
fi
59-
if [ "$RPI_TYPE" = "2-3" ] && [ "$FOLDER" != "" ]; then
60-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 2, 3/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
61-
fi
62-
if [ "$RPI_TYPE" = "3+" ] && [ "$FOLDER" != "" ]; then
63-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 3A+, 3B+, 4/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
64-
fi
65-
fi
66-
if [ "$RPIOS_TYPE" = "bullseye" ]; then
67-
if [ "$BASE" = "true" ]; then
68-
FOLDER="CLI Base/Bullseye/GCC $GCC_VERSION"
69-
else
70-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/Bullseye/GCC $GCC_VERSION"
71-
fi
72-
if [ "$RPI_TYPE" = "0-1" ] && [ "$FOLDER" != "" ]; then
73-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 1, Zero/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
74-
fi
75-
if [ "$RPI_TYPE" = "2-3" ] && [ "$FOLDER" != "" ]; then
76-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 2, 3/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
77-
fi
78-
if [ "$RPI_TYPE" = "3+" ] && [ "$FOLDER" != "" ]; then
79-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 3A+, 3B+, 4/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
80-
fi
81-
fi
82-
if [ "$RPIOS_TYPE" = "bookworm" ]; then
83-
if [ "$BASE" = "true" ]; then
84-
FOLDER="CLI Base/Bookworm/GCC $GCC_VERSION"
85-
else
86-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/Bookworm/GCC $GCC_VERSION"
87-
fi
88-
if [ "$RPI_TYPE" = "0-1" ] && [ "$FOLDER" != "" ]; then
89-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 1, Zero/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
90-
fi
91-
if [ "$RPI_TYPE" = "2-3" ] && [ "$FOLDER" != "" ]; then
92-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 2, 3/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
93-
fi
94-
if [ "$RPI_TYPE" = "3+" ] && [ "$FOLDER" != "" ]; then
95-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 3A+, 3B+, 4/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
96-
fi
97-
fi
98-
fi
26+
BASE_URL="sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers"
27+
28+
function deploy_file() {
29+
local FOLDER="$1"
30+
local FILEPATH="$2"
31+
local SUBFOLDER="$3"
32+
33+
if [ -f "$FILEPATH" ]; then
34+
URL="$BASE_URL/$FOLDER/$SUBFOLDER"
35+
URL=$(printf "%s\n" "$URL" | sed 's/ /%20/g')
36+
curl -k "$URL" -u "$USER_SFTP:$PASSWORD_SFTP" -T "$FILEPATH" --ftp-create-dirs
37+
else
38+
echo "Cannot find $FILEPATH"
39+
fi
40+
}
41+
42+
# Set FOLDER based on conditions
43+
if [ "$RPI_TYPE" = "64" ]; then
44+
if [ "$BASE" = "true" ]; then
45+
FOLDER="CLI Base/64/$RPIOS_TYPE/GCC $GCC_VERSION"
46+
else
47+
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/$RPIOS_TYPE/GCC $GCC_VERSION"
48+
fi
49+
SUBFOLDER=""
9950
else
100-
echo "Cannot find $HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz"
51+
if [ "$BASE" = "true" ]; then
52+
FOLDER="CLI Base/$RPIOS_TYPE/GCC $GCC_VERSION"
53+
else
54+
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/$RPIOS_TYPE/GCC $GCC_VERSION"
55+
fi
56+
case "$RPI_TYPE" in
57+
"0-1") SUBFOLDER="Raspberry Pi 1, Zero/" ;;
58+
"2-3") SUBFOLDER="Raspberry Pi 2, 3/" ;;
59+
"3+") SUBFOLDER="Raspberry Pi 3A+, 3B+, 4, 5/" ;;
60+
esac
10161
fi
10262

103-
#Deploy Native-compiler Toolchain binaries
104-
if [ -f "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" ]; then
105-
if [ "$RPI_TYPE" = "64" ]; then
106-
if [ "$RPIOS_TYPE" = "buster" ]; then
107-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/Buster/GCC $GCC_VERSION"
108-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
109-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/Bullseye/GCC $GCC_VERSION"
110-
else
111-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/Bookworm/GCC $GCC_VERSION"
112-
fi
113-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
114-
else
115-
if [ "$RPIOS_TYPE" = "buster" ]; then
116-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/Buster/GCC $GCC_VERSION"
117-
if [ "$RPI_TYPE" = "0-1" ]; then
118-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 1, Zero/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
119-
fi
120-
if [ "$RPI_TYPE" = "2-3" ]; then
121-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 2, 3/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
122-
fi
123-
if [ "$RPI_TYPE" = "3+" ]; then
124-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 3A+, 3B+, 4/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
125-
fi
126-
fi
127-
if [ "$RPIOS_TYPE" = "bullseye" ]; then
128-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/Bullseye/GCC $GCC_VERSION"
129-
if [ "$RPI_TYPE" = "0-1" ]; then
130-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 1, Zero/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
131-
fi
132-
if [ "$RPI_TYPE" = "2-3" ]; then
133-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 2, 3/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
134-
fi
135-
if [ "$RPI_TYPE" = "3+" ]; then
136-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 3A+, 3B+, 4/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
137-
fi
138-
fi
139-
if [ "$RPIOS_TYPE" = "bookworm" ]; then
140-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/Bookworm/GCC $GCC_VERSION"
141-
if [ "$RPI_TYPE" = "0-1" ]; then
142-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 1, Zero/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
143-
fi
144-
if [ "$RPI_TYPE" = "2-3" ]; then
145-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 2, 3/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
146-
fi
147-
if [ "$RPI_TYPE" = "3+" ]; then
148-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/Raspberry Pi 3A+, 3B+, 4/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz" --ftp-create-dirs
149-
fi
150-
fi
151-
fi
63+
# Deploy Cross-compiler Toolchain binaries
64+
FILEPATH="$HOME/cross-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz"
65+
deploy_file "$FOLDER" "$FILEPATH" "$SUBFOLDER"
66+
67+
# Deploy Native-compiler Toolchain binaries
68+
if [ "$RPI_TYPE" = "64" ]; then
69+
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/$RPIOS_TYPE/GCC $GCC_VERSION"
70+
SUBFOLDER=""
15271
else
153-
echo "Cannot find $HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz"
72+
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/$RPIOS_TYPE/GCC $GCC_VERSION"
15473
fi
15574

156-
if [ -f "$HOME/desktop-gcc-$GCC_VERSION-pi_$OS_TYPE.tar.gz" ]; then
157-
FOLDER="Exclusive-Experimental Toolchains/Desktop/$OS_TYPE/GCC $GCC_VERSION"
158-
if [ "$FOLDER" != "" ]; then
159-
curl -k "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/desktop-gcc-$GCC_VERSION-pi_$OS_TYPE.tar.gz" --ftp-create-dirs
160-
else
161-
exit 1
162-
fi
163-
fi
75+
FILEPATH="$HOME/native-gcc-$GCC_VERSION-pi_$RPI_TYPE.tar.gz"
76+
deploy_file "$FOLDER" "$FILEPATH" "$SUBFOLDER"
77+
78+
# Deploy Desktop-compiler Toolchain binaries
79+
FILEPATH="$HOME/desktop-gcc-$GCC_VERSION-pi_$OS_TYPE.tar.gz"
80+
FOLDER="Exclusive-Experimental Toolchains/Desktop/$OS_TYPE/GCC $GCC_VERSION"
81+
deploy_file "$FOLDER" "$FILEPATH" ""

utils/SF_docs_deployer

+60-99
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ helpfunction() {
3535
echo "Usage: $0 -t [Toolchain Type] -f [Folder type] -o [Target Pi OS type] -r [Raspberry Pi type] "
3636
echo -e "\t-t Toolchain Type?: (cross|native|cross_64|native_64|CLI)"
3737
echo -e "\t-f Upload Folder type?: (root|main|base|experimental)"
38-
echo -e "\t-o Raspberry Pi OS type?: (bookworm|buster|bullseye)"
38+
echo -e "\t-o Raspberry Pi OS type?: (buster|bullseye|bookworm)"
3939
echo -e "\t-r What's yours Target Raspberry Pi type?: (0-1|2-3|3+|x86|x86_64)"
4040
echo ""
4141
echo ""
@@ -71,105 +71,66 @@ fi
7171
echo "Doing $TOOLCHAIN with Folder: $FOLDER_TYPE, RASPBERRY: $RPI_TYPE AND OS: $RPIOS_TYPE!"
7272

7373
# deploy root folder docs
74-
if [ "$FOLDER_TYPE" = "root" ]; then
75-
if [ -f "$HOME/root/README.md" ]; then
76-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/root/README.md" --ftp-create-dirs
77-
else
78-
echo "Error: No valid Root docs found!"
79-
exit 1
80-
fi
81-
exit 0
82-
fi
74+
BASE_URL="sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers"
75+
FILEPATH=""
76+
77+
set_folder_and_filepath() {
78+
case "$FOLDER_TYPE" in
79+
"root")
80+
FOLDER=""
81+
FILEPATH="$HOME/root/README.md"
82+
;;
83+
"base")
84+
case "$TOOLCHAIN" in
85+
"CLI") FOLDER="CLI Base" ;;
86+
"cross_64"|"native_64") FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains" ;;
87+
"cross") FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains" ;;
88+
"native") FOLDER="Raspberry Pi GCC Native-Compiler Toolchains" ;;
89+
*) echo "Error: Invalid Raspberry Compiler Type!"; exit 1 ;;
90+
esac
91+
FILEPATH="$HOME/base/README.md"
92+
;;
93+
"main")
94+
case "$TOOLCHAIN" in
95+
"cross"|"native")
96+
FOLDER="Raspberry Pi GCC ${TOOLCHAIN^}-Compiler Toolchains/${RPIOS_TYPE^}"
97+
;;
98+
"cross_64"|"native_64")
99+
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit ${TOOLCHAIN%-64^}-Compiler Toolchains/${RPIOS_TYPE^}"
100+
;;
101+
*) echo "Error: Invalid Main toolchain!"; exit 1 ;;
102+
esac
103+
FILEPATH="$HOME/main/README.md"
104+
;;
105+
"experimental")
106+
if [[ "$RPI_TYPE" =~ ^("x86"|"x86_64")$ ]]; then
107+
FOLDER="Exclusive-Experimental Toolchains/Desktop/$RPI_TYPE"
108+
FILEPATH="$HOME/experiment/README.md"
109+
elif [ -f "$HOME/main/README.md" ]; then
110+
FOLDER="Exclusive-Experimental Toolchains/Desktop"
111+
FILEPATH="$HOME/main/README.md"
112+
elif [ -f "$HOME/base/README.md" ]; then
113+
FOLDER="Exclusive-Experimental Toolchains"
114+
FILEPATH="$HOME/base/README.md"
115+
else
116+
echo "Warning: No Experimental docs found!"
117+
exit 1
118+
fi
119+
;;
120+
*) echo "Error: Wrong folder!"; exit 1 ;;
121+
esac
122+
}
83123

84-
if [ "$FOLDER_TYPE" = "base" ] && [ -f "$HOME/base/README.md" ]; then
85-
if [ "$TOOLCHAIN" = "CLI" ]; then
86-
FOLDER="CLI Base"
87-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/base/README.md" --ftp-create-dirs
88-
elif [[ "$TOOLCHAIN" =~ ^("cross_64"|"native_64")$ ]]; then
89-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains"
90-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/base/README.md" --ftp-create-dirs
91-
else
92-
if [ "$TOOLCHAIN" = "cross" ]; then
93-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains"
94-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/base/README.md" --ftp-create-dirs
95-
elif [ "$TOOLCHAIN" = "native" ]; then
96-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains"
97-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/base/README.md" --ftp-create-dirs
98-
else
99-
echo "Error: Invalid Raspberry Compiler Type!"
100-
exit 0
101-
fi
102-
fi
103-
exit 0
104-
fi
124+
set_folder_and_filepath
105125

106-
# deploy Toolchain specific folder docs
107-
if [ "$FOLDER_TYPE" = "main" ] && [ -f "$HOME/main/README.md" ]; then
108-
if [ "$TOOLCHAIN" = "cross" ]; then
109-
if [ "$RPIOS_TYPE" = "buster" ]; then
110-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/Buster"
111-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
112-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
113-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/Bullseye"
114-
elif [ "$RPIOS_TYPE" = "bookworm" ]; then
115-
FOLDER="Raspberry Pi GCC Cross-Compiler Toolchains/Bookworm"
116-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
117-
else
118-
echo "Error: Invalid Raspberry OS Type!"
119-
exit 1
120-
fi
121-
elif [ "$TOOLCHAIN" = "native" ]; then
122-
if [ "$RPIOS_TYPE" = "buster" ]; then
123-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/Buster"
124-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
125-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
126-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/Bullseye"
127-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
128-
elif [ "$RPIOS_TYPE" = "bookworm" ]; then
129-
FOLDER="Raspberry Pi GCC Native-Compiler Toolchains/Bookworm"
130-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
131-
else
132-
echo "Error: Invalid Raspberry OS Type!"
133-
exit 0
134-
fi
135-
elif [ "$TOOLCHAIN" = "cross_64" ]; then
136-
if [ "$RPIOS_TYPE" = "buster" ]; then
137-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/Buster"
138-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
139-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/Bullseye"
140-
else
141-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Cross-Compiler Toolchains/Bookworm"
142-
fi
143-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
144-
elif [ "$TOOLCHAIN" = "native_64" ]; then
145-
if [ "$RPIOS_TYPE" = "buster" ]; then
146-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/Buster"
147-
elif [ "$RPIOS_TYPE" = "bullseye" ]; then
148-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/Bullseye"
149-
else
150-
FOLDER="Bonus Raspberry Pi GCC 64-Bit Toolchains/Raspberry Pi GCC 64-Bit Native-Compiler Toolchains/Bookworm"
151-
fi
152-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
153-
else
154-
echo "Error: Invalid Main toolchain!"
155-
exit 1
156-
fi
157-
exit 0
126+
if [ ! -f "$FILEPATH" ]; then
127+
echo "Error: No valid docs found at $FILEPATH!"
128+
exit 1
158129
fi
159130

160-
if [ "$FOLDER_TYPE" = "experimental" ]; then
161-
if [ -f "$HOME/experiment/README.md" ] && [[ "$RPI_TYPE" =~ ^("x86"|"x86_64")$ ]]; then
162-
FOLDER="Exclusive-Experimental Toolchains/Desktop/$RPI_TYPE"
163-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/experiment/README.md" --ftp-create-dirs
164-
elif [ -f "$HOME/main/README.md" ]; then
165-
FOLDER="Exclusive-Experimental Toolchains/Desktop"
166-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/main/README.md" --ftp-create-dirs
167-
elif [ -f "$HOME/base/README.md" ]; then
168-
FOLDER="Exclusive-Experimental Toolchains"
169-
curl -k -v "sftp://frs.sourceforge.net/home/pfs/project/raspberry-pi-cross-compilers/$FOLDER/" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$HOME/base/README.md" --ftp-create-dirs
170-
171-
else
172-
echo "Warning: No Experimental docs found!"
173-
exit 1
174-
fi
175-
fi
131+
URL="$BASE_URL/$FOLDER/"
132+
URL=$(printf "%s\n" "$URL" | sed 's/ /%20/g')
133+
134+
curl -k "$URL" -u "$USER_SFTP":"$PASSWORD_SFTP" -T "$FILEPATH" --ftp-create-dirs
135+
136+
exit 0

0 commit comments

Comments
 (0)