@@ -13,29 +13,41 @@ ARG DEBIAN_FRONTEND="noninteractive"
13
13
RUN \
14
14
echo "**** install packages ****" && \
15
15
apt-get update && \
16
- apt-get install -y \
16
+ apt-get install --no-install-recommends - y \
17
17
bash \
18
18
curl \
19
19
jsvc \
20
20
libcap2 \
21
21
logrotate \
22
22
mongodb-server \
23
23
openjdk-8-jre-headless && \
24
- echo "**** install omada ****" && \
24
+ echo "**** download omada ****" && \
25
25
# Somehow figure out version detection and download URL here
26
26
if [ -z ${APP_VERSION+x} ]; then \
27
+ echo "**** No APP_VERSION supplied, detecting ****" && \
27
28
APP_VERSION=$(curl -sL https://www.tp-link.com/uk/support/download/omada-software-controller/ \
28
29
| grep -E -m 1 -io 'https?://[^ ]+.tar.gz' \
29
30
| awk -F "/" '{print $NF}' \
30
31
| awk -F '_' '{print $4}' ); \
31
32
fi && \
33
+ if [ -z ${APP_VERSION} ]; then \
34
+ echo "**** No current version found, trying previous major versions ****" && \
35
+ PREVIOUS_MAJOR_VER=$(curl -sL "https://www.tp-link.com/uk/support/download/omada-software-controller" | grep -E -io 'https://www.tp-link.com/uk/support/download/omada-software-controller/\S {2}' | awk -F '/' '{print $8}' | awk 'NR==2{print $1}' ) && \
36
+ echo "**** Previous major version was $PREVIOUS_MAJOR_VER ****" && \
37
+ APP_VERSION=$(curl -sL "https://www.tp-link.com/uk/support/download/omada-software-controller/${PREVIOUS_MAJOR_VER}" \
38
+ | grep -E -m 1 -io 'https?://[^ ]+.tar.gz' \
39
+ | awk -F "/" '{print $NF}' \
40
+ | awk -F '_' '{print $4}' ); \
41
+ fi && \
42
+ echo "**** App version is ${APP_VERSION} ****" && \
32
43
mkdir -p /tmp/omada && \
33
- OMADA_DOWNLOAD=$(curl -sL https://www.tp-link.com/uk/support/download/omada-software-controller/ \
44
+ OMADA_DOWNLOAD=$(curl -sL " https://www.tp-link.com/uk/support/download/omada-software-controller/$(echo $APP_VERSION | cut -c 1-2)" \
34
45
| grep -E -io "https?://[^ ]+${APP_VERSION}_linux_x64.tar.gz" ) && \
35
46
# Download Omada package, try and handle their appalling packaging "standards"
36
47
curl -o \
37
48
/tmp/omada.tar.gz -L \
38
49
${OMADA_DOWNLOAD} && \
50
+ echo "**** unpack omada ****" && \
39
51
if [ $(tar -tf /tmp/omada.tar.gz | awk -F "\n " '{print $1;exit}' | grep -i "omada" ) ]; then \
40
52
tar xf \
41
53
/tmp/omada.tar.gz -C \
45
57
/tmp/omada.tar.gz -C \
46
58
/tmp/omada/; \
47
59
fi && \
60
+ echo "**** install omada ****" && \
48
61
mkdir -p /app/omada && \
49
62
cd /tmp/omada && \
50
63
for name in bin data properties webapps keystore lib install.sh uninstall.sh; do cp ${name} /app/omada -r; done && \
0 commit comments