-
Notifications
You must be signed in to change notification settings - Fork 9
/
package.sh
executable file
·44 lines (33 loc) · 1.2 KB
/
package.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
#!/bin/bash -e
version=$(grep '"version"' manifest.json | cut -d: -f2 | cut -d\" -f2)
# Setup environment for building inside Dockerized toolchain
[ $(id -u) = 0 ] && umask 0
# Clean up from previous releases
rm -rf *.tgz *.sha256sum package SHA256SUMS
if [ -z "${ADDON_ARCH}" ]; then
TARFILE_SUFFIX=
else
PYTHON_VERSION="$(python3 --version 2>&1 | cut -d' ' -f2 | cut -d. -f 1-2)"
TARFILE_SUFFIX="-${ADDON_ARCH}-v${PYTHON_VERSION}"
fi
# Prep new package
mkdir -p lib package
# Pull down Python dependencies
pip3 install -r requirements.txt -t lib --no-binary :all: --prefix ""
# Put package together
cp -r pkg LICENSE manifest.json *.py js images views css README.md lib package/
find package -type f -name '*.pyc' -delete
find package -type f -name '._*' -delete
find package -type d -empty -delete
rm -rf package/pkg/pycache
echo "generating checksums"
cd package
find . -type f \! -name SHA256SUMS -exec shasum --algorithm 256 {} \; >> SHA256SUMS
cd -
# Make the tarball
echo "creating archive"
TARFILE="network-presence-detection-adapter-${version}${TARFILE_SUFFIX}.tgz"
tar czf ${TARFILE} package
echo "creating shasums"
shasum --algorithm 256 ${TARFILE} > ${TARFILE}.sha256sum
cat ${TARFILE}.sha256sum