-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdeploy.sh
executable file
·58 lines (51 loc) · 1.94 KB
/
deploy.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
#!/bin/bash
# this script copies build products to the relevant place
# call like ./deploy.sh from-2022.1.x experimental
# version can be from-2019.1.x from-2021.1.x from-v2022.1.x from-v2023.1.x from-next
# branch can be experimental testing stable
version="$1"
branches="${2:-experimental beta stable}"
# create folders
mkdir -p /var/www/packages/
mkdir -p /var/www/firmware/download/
mkdir -p /var/www/firmware/images/
if [ -n "$version" ]; then
echo "installing $version and branch $branch"
else
echo "You must give a version param"
exit 1
fi
site="site-${version#*-}"
# copy packages
for file in /mnt/$site/output/packages/modules/*; do
version_name="${file##*/}"
done
if [ -n "$version_name" ]; then
echo "copy packages $version_name"
cp -r /mnt/$site/output/packages/modules/$version_name /var/www/packages/$version_name
else
echo "No packages found for $version_name"
exit 1
fi
mkdir -p /var/www/firmware/images/$version_name
rsync -a --exclude "*.manifest" /mnt/$site/output/images/* /var/www/firmware/images/$version_name/
cd /mnt/manifest
git pull
mkdir -p /mnt/manifest/$version/
for branch in $branches; do
echo $branch
mkdir -p /var/www/firmware/$version/$branch
# copy manifest to branch
cp /mnt/$site/output/images/sysupgrade/$branch.manifest /mnt/manifest/$version/$branch.manifest
git add $version/$branch.manifest
# backup current manifests into upper folder
rm /var/www/firmware/$version/$branch/sysupgrade
ln -sf /var/www/firmware/images/$version_name/sysupgrade /var/www/firmware/$version/$branch/sysupgrade
ln -sf /mnt/manifest/$version/$branch.manifest /var/www/firmware/$version/$branch/sysupgrade/$branch.manifest
done
git commit -m "update $version $branches to $version_name"
# git push
# symlink for download directorydownload
rm -f /var/www/firmware/download/$version
ln -sf /var/www/firmware/images/$version_name /var/www/firmware/download/$version
#rm -r /mnt/site/output/images