-
Notifications
You must be signed in to change notification settings - Fork 17
Expand file tree
/
Copy pathrelease.sh
More file actions
executable file
·91 lines (78 loc) · 3.68 KB
/
Copy pathrelease.sh
File metadata and controls
executable file
·91 lines (78 loc) · 3.68 KB
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#!/bin/bash
# Usage:
# $ USE_SW=<tagged-version-to-release> ./release.sh
# Example: USE_SW=v0.24 ./release.sh
# we are going for the 3 fingered claw approach (try <task>)
yell() { echo "$0: $*" >&2; }
die() { yell "$*"; fail; exit 111; }
try() { "$@" || die "cannot $*"; }
GRN="\033[32m"
RED="\033[31m"
NOC="\033[0m"
# Execute in ci/ folder
STM32_DIR=../veccart
MENU_DIR=../multicart
RELEASE_DIR=../releases
SOURCE_RELEASE=v0.23
SOURCE_RELEASE_URL=https://github.com/technobly/VEXTREME/releases/download/v0.23/VEXTREME-v0.23.zip
: ${USE_SW:?"REQUIRED! Usage: USE_VER=v0.24 ./release.sh"}
main() {
try rm -rf $RELEASE_DIR/$USE_SW
try rm -f $RELEASE_DIR/vextreme-$USE_SW.zip
if [ ! -d "$RELEASE_DIR/$SOURCE_RELEASE" ]; then
if [ ! -e "$RELEASE_DIR/VEXTREME-v0.23.zip" ]; then
cd $RELEASE_DIR
curl -L "$SOURCE_RELEASE_URL" > "VEXTREME-v0.23.zip"
unzip VEXTREME-v0.23.zip
fi
fi
USE_HW=v0.2
try cd $STM32_DIR
try make clean all USE_HW=$USE_HW -s #&> /dev/null
try mkdir -p $RELEASE_DIR
try mkdir -p $RELEASE_DIR/$USE_SW
try mkdir -p $RELEASE_DIR/$USE_SW/stm32
try mkdir -p $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW
try cp veccart.bin $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.bin
try cp veccart.elf $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.elf
try cp veccart.hex $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.hex
try cp veccart.list $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.list
USE_HW=v0.3
try make clean all -s USE_HW=$USE_HW #&> /dev/null
try mkdir -p $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW
try cp veccart.bin $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.bin
try cp veccart.elf $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.elf
try cp veccart.hex $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.hex
try cp veccart.list $RELEASE_DIR/$USE_SW/stm32/hardware-$USE_HW/stm32-sw.$USE_SW.hw.$USE_HW.list
try cd $MENU_DIR
try make clean all #&> /dev/null
try mkdir -p $RELEASE_DIR/$USE_SW/VEXTREME
try cp multicart.bin $RELEASE_DIR/$USE_SW/VEXTREME/multicart.bin
try cp $RELEASE_DIR/$SOURCE_RELEASE/VEXTREME/vec.bin $RELEASE_DIR/$USE_SW/VEXTREME/vec.bin
try cp -R $RELEASE_DIR/$SOURCE_RELEASE/VEXTREME/roms $RELEASE_DIR/$USE_SW/VEXTREME/roms
try cd $RELEASE_DIR
try zip -vr VEXTREME-$USE_SW.zip $USE_SW -x "*.DS_Store" #&> /dev/null
pass
return 0;
}
pass() {
echo -e ${GRN}' 8888888b. d8888 .d8888b. .d8888b. '${NOC}
echo -e ${GRN}' 888 Y88b d88888 d88P Y88b d88P Y88b '${NOC}
echo -e ${GRN}' 888 888 d88P888 Y88b. Y88b. '${NOC}
echo -e ${GRN}' 888 d88P d88P 888 "Y888b. "Y888b. '${NOC}
echo -e ${GRN}' 8888888P" d88P 888 "Y88b. "Y88b. '${NOC}
echo -e ${GRN}' 888 d88P 888 "888 "888 '${NOC}
echo -e ${GRN}' 888 d8888888888 Y88b d88P Y88b d88P '${NOC}
echo -e ${GRN}' 888 d88P 888 "Y8888P" "Y8888P" '${NOC}
}
fail() {
echo -e ${RED}' 8888888888 d8888 8888888 888 888 '${NOC}
echo -e ${RED}' 888 d88888 888 888 888 '${NOC}
echo -e ${RED}' 888 d88P888 888 888 888 '${NOC}
echo -e ${RED}' 8888888 d88P 888 888 888 888 '${NOC}
echo -e ${RED}' 888 d88P 888 888 888 888 '${NOC}
echo -e ${RED}' 888 d88P 888 888 888 Y8P '${NOC}
echo -e ${RED}' 888 d8888888888 888 888 " '${NOC}
echo -e ${RED}' 888 d88P 888 8888888 88888888 888 '${NOC}
}
main