ioutil: make the file compile on MacOS
[fw/openocd] / tools / release / test.sh
1 #!/bin/sh -e
2
3 SRC="$1"
4 if [ "${SRC}" ]; then
5         shift
6 else
7         SRC="${0%%/*}"
8 fi
9 if [ ! -d "${SRC}/.git" ]; then
10         echo "'${SRC}' is not a git repository"
11         exit 1
12 fi
13
14 DST="$1"
15 [ "${DST}" ] || DST="release-${SRC}"
16
17 export RELEASE_FAST=yes
18
19 cat <<EOF
20 Starting test release clone process:
21    from: '${SRC}'
22      to: '${DST}'
23 This will destroy any contents in '${DST}'.
24 EOF
25 echo -n "Press Control-C to abort in "
26 for i in $(seq 5 -1 1); do echo -n "$i "; sleep 1; done
27 echo "go!"
28
29 rm -rf "${DST}"
30 git clone "${SRC}" "${DST}"
31
32 cd "${DST}"
33 #     TAG+RELEASE     NEW BRANCH (w/ -dev)
34 #       0.3.0           0.4.0-rc0
35 tools/release.sh release --next='minor' --start-rc
36
37 git checkout -q "v0.3.0"
38 #       <none>          0.3.1
39 tools/release.sh branch --next='micro'
40 #       0.3.1           0.3.2
41 tools/release.sh release --next='micro'
42
43 git checkout "v0.4.0-rc0-dev"
44 #       0.4.0-rc0       0.4.0-rc1
45 tools/release.sh release --next='rc'
46 #       0.4.0           1.0.0-rc0
47 tools/release.sh release --next='major' --final --start-rc
48
49 git checkout -q "v0.4.0"
50 #       <none>          0.4.1
51 tools/release.sh branch --next='micro'
52 #       0.4.1           0.4.2
53 tools/release.sh release --next='micro'
54
55 git checkout "v1.0.0-rc0-dev"
56 #       1.0.0-rc0       1.0.0-rc1
57 tools/release.sh release --next='rc'
58 #       1.0.0           1.1.0-rc0
59 tools/release.sh release --next='minor' --final --start-rc
60
61 git checkout -q "v1.0.0"
62 #       <none>          1.0.1
63 tools/release.sh branch --next='micro'
64 #       1.0.1           1.0.2
65 tools/release.sh release --next='micro'
66
67 git checkout "v1.1.0-rc0-dev"
68 #       1.1.0-rc0       1.1.0-rc1
69 tools/release.sh release --next='rc'
70 #       1.1.0           1.2.0
71 tools/release.sh release --next='minor' --final --start-rc
72
73 git checkout -q "v1.0.0"
74 tools/release.sh branch --next='major' --start-rc
75
76 #       <none>          2.0.0-rc0
77 git checkout "v2.0.0-rc0-dev"
78 #       2.0.0-rc0       2.0.0-rc1
79 tools/release.sh release --next='rc'
80 #       2.0.0-rc1       2.0.0-rc2
81 tools/release.sh release --next='rc'
82 #       2.0.0           2.1.0-rc0
83 tools/release.sh release --next='minor' --final --start-rc
84
85 git checkout -q "v1.1.0"
86 #       <none>          1.1.1
87 tools/release.sh branch --next='micro'
88 #       1.1.1           1.1.2
89 tools/release.sh release --next='micro'
90
91 git checkout -q "v2.0.0"
92 #       <none>          2.0.0
93 tools/release.sh branch --next='micro'
94 #       2.0.1           2.0.2
95 tools/release.sh release --next='micro'
96
97 git checkout "v1.2.0-rc0-dev"
98 #       1.2.0-rc0       1.2.0-rc1
99 tools/release.sh release --next='rc'
100 #       1.2.0           1.3.0-rc0
101 tools/release.sh release --next='micro' --final
102
103 git checkout "v2.1.0-rc0-dev"
104 #       2.1.0-rc0       2.1.0-rc1
105 tools/release.sh release --next='rc'
106 #       2.1.0-rc1       2.1.0-rc2
107 tools/release.sh release --next='rc'
108 #       2.1.0           2.2.0-rc0
109 tools/release.sh release --next='minor' --final --start-rc
110
111 git checkout -q "v2.1.0"
112 #       <none>          2.1.1
113 tools/release.sh branch --next='micro'
114 #       2.1.1           2.1.2
115 tools/release.sh release --next='micro'
116
117 git checkout "v2.2.0-rc0-dev"
118 #       2.2.0-rc0       2.2.0-rc1
119 tools/release.sh release --next='rc'
120
121 gitk --all