From e93afcb48cac1c8bd8fa267456b7874535aec313 Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Tue, 6 Aug 2024 16:24:06 +0300 Subject: [PATCH 1/8] [HDX-10073] update the base image --- Dockerfile | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7e70f7f..b0fb63c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,34 +1,36 @@ -FROM public.ecr.aws/unocha/python:3.9 +FROM public.ecr.aws/unocha/python:3.9-stable WORKDIR /srv/www COPY . . RUN apk add \ - git \ - libffi-dev \ - unit \ - unit-python3 && \ + git \ + libffi-dev \ + unit \ + unit-python3 && \ mkdir -p \ - /etc/services.d/hxl \ - /srv/cache \ - /srv/config \ - /srv/output \ - /var/log/proxy && \ + /etc/services.d/hxl \ + /srv/cache \ + /srv/config \ + /srv/output \ + /var/log/proxy && \ mv config.py.TEMPLATE /srv/config/config.py && \ mv docker_files/hxl_run /etc/services.d/hxl/run && \ mv docker_files/app.py docker_files/app_nr.py docker_files/app_elastic.py . && \ pip3 --no-cache-dir install --upgrade \ - pip \ - wheel && \ + pip \ + wheel && \ pip3 install --upgrade -r requirements.txt && \ pip3 install \ - elastic-apm[flask] \ - newrelic && \ + elastic-apm[flask] \ + newrelic && \ apk del \ - git \ - libffi-dev && \ + git \ + libffi-dev && \ rm -rf /root/.cache && \ rm -rf /var/cache/apk/* EXPOSE 5000 + +ENTRYPOINT [ "/init" ] From 94c7e0dd0d4f1c9dfe0ef8fc9b75d0f1f7df9a19 Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Tue, 6 Aug 2024 16:24:40 +0300 Subject: [PATCH 2/8] remove legacy dependency specifier (see https://pip.pypa.io/en/stable/news/#b1-2024-05-06) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 3b2dfda..54262ea 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ urllib3<1.27,>1.21.1 # avoid caching bug requests_cache ckanapi>=3.5 -flask>=2.2.5<2.3 # 2.3 messes up pip dependencies +flask<2.3 # 2.3 messes up pip dependencies #git+https://github.com/HXLStandard/libhxl-python.git@dev#egg=libhxl # for development libhxl==5.2.1 # for release flask-caching From 170929a46239156832abda8de742a546d7fdb562 Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Tue, 6 Aug 2024 16:27:26 +0300 Subject: [PATCH 3/8] fix docker-compose tests --- .github/workflows/run-tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml index 87ebb61..75437cf 100644 --- a/.github/workflows/run-tests.yml +++ b/.github/workflows/run-tests.yml @@ -12,6 +12,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 + - name: They are the same. + run: sudo ln -sf /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose - name: Building HXL Proxy image run: docker-compose -f docker-compose-github-actions.yml build proxy - name: Spinning up container From 7e9c10a425b61f1d2000e0e7e9b81ef1d866ea8b Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Tue, 6 Aug 2024 17:59:22 +0300 Subject: [PATCH 4/8] install nginx unit from source, along with a matching python module --- Dockerfile | 29 +++++++++++++++++++++-------- docker_files/hxl_run | 2 +- 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/Dockerfile b/Dockerfile index b0fb63c..02415e3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,14 +1,20 @@ FROM public.ecr.aws/unocha/python:3.9-stable +ARG UNITD_VERSION=1.32.1-1 + WORKDIR /srv/www COPY . . -RUN apk add \ +# when we use the same python as the latest alpine distro, sure +#unit \ +#unit-python3 && \ + +RUN apk add --no-cache --upgrade --virtual .build-deps \ + build-base \ git \ libffi-dev \ - unit \ - unit-python3 && \ + pcre-dev && \ mkdir -p \ /etc/services.d/hxl \ /srv/cache \ @@ -23,11 +29,18 @@ RUN apk add \ wheel && \ pip3 install --upgrade -r requirements.txt && \ pip3 install \ - elastic-apm[flask] \ - newrelic && \ - apk del \ - git \ - libffi-dev && \ + elastic-apm[flask] && \ + cd /tmp && \ + git clone https://github.com/nginx/unit && \ + cd /tmp/unit && \ + git checkout ${UNITD_VERSION} && \ + ./configure && make && make install && \ + ./configure python && make python && make python-install && \ + apk del .build-deps && \ + apk add pcre && \ + addgroup unit -g 101 && \ + adduser -D -H unit -G unit && \ + mkdir -p /var/lib/unit/ && \ rm -rf /root/.cache && \ rm -rf /var/cache/apk/* diff --git a/docker_files/hxl_run b/docker_files/hxl_run index 47a00f9..e9f0cca 100644 --- a/docker_files/hxl_run +++ b/docker_files/hxl_run @@ -29,4 +29,4 @@ fi chmod 600 /var/lib/unit/conf.json chown unit /var/log/proxy -exec unitd --no-daemon --control 127.0.0.1:8080 --log /var/log/proxy/proxy.log +exec unitd --user unit --group unit --statedir /var/lib/unit --no-daemon --control 127.0.0.1:8080 --log /var/log/proxy/proxy.log From f2c0d4540e32bb67082df085f9151f47bee86e0c Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Tue, 6 Aug 2024 18:09:43 +0300 Subject: [PATCH 5/8] fix unit uid --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 02415e3..bc6349b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -39,7 +39,7 @@ RUN apk add --no-cache --upgrade --virtual .build-deps \ apk del .build-deps && \ apk add pcre && \ addgroup unit -g 101 && \ - adduser -D -H unit -G unit && \ + adduser -D -H unit -u 100 -G unit && \ mkdir -p /var/lib/unit/ && \ rm -rf /root/.cache && \ rm -rf /var/cache/apk/* From 6590692d79c5a60fe9baa5e43f606d94e3f85f43 Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Wed, 7 Aug 2024 11:21:29 +0300 Subject: [PATCH 6/8] pin flask to 3.0.3 as on prod --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 54262ea..a91aca6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ urllib3<1.27,>1.21.1 # avoid caching bug requests_cache ckanapi>=3.5 -flask<2.3 # 2.3 messes up pip dependencies +flask==3.0.3 # 2.3 messes up pip dependencies #git+https://github.com/HXLStandard/libhxl-python.git@dev#egg=libhxl # for development libhxl==5.2.1 # for release flask-caching From bf379bdf3808141c65fc1c17fc82115a93962991 Mon Sep 17 00:00:00 2001 From: Serban Teodorescu Date: Wed, 7 Aug 2024 11:21:49 +0300 Subject: [PATCH 7/8] no more comments --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index a91aca6..ecd27ed 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,7 @@ urllib3<1.27,>1.21.1 # avoid caching bug requests_cache ckanapi>=3.5 -flask==3.0.3 # 2.3 messes up pip dependencies +flask==3.0.3 #git+https://github.com/HXLStandard/libhxl-python.git@dev#egg=libhxl # for development libhxl==5.2.1 # for release flask-caching From c6c6dd660afc3e7ad7a39074faf896853ce4c02c Mon Sep 17 00:00:00 2001 From: Dan Mihaila Date: Wed, 21 Aug 2024 10:16:38 +0300 Subject: [PATCH 8/8] prepare version 2.2.3 --- CHANGELOG | 4 ++++ hxl_proxy/__init__.py | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index d687830..60565c7 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +2024-08-21 Release 2.2.3: + - update docker base image + - remove legacy deps specifiers + 2024-06-06 Release 2.2.2: - add Google Tab Manager js lib - ability to configure GTM via env var GOOGLE_TAG_MANAGER_ID diff --git a/hxl_proxy/__init__.py b/hxl_proxy/__init__.py index a573967..7548e42 100644 --- a/hxl_proxy/__init__.py +++ b/hxl_proxy/__init__.py @@ -8,7 +8,7 @@ """ -__version__="2.2.2" +__version__="2.2.3" """Module version number See https://www.python.org/dev/peps/pep-0396/