Use requirements.txt for automated version bumps. (#566)
* Use requirements.txt for automated version bumps. Move the Mailman requirements into requirements.txt file so that we can use dependabot for automated version bumping. * Remove constraint on mistune * Add requirements file to dockerfile * Add dependency on tzdata
This commit is contained in:
14
.github/dependabot.yml
vendored
14
.github/dependabot.yml
vendored
@@ -12,15 +12,23 @@ updates:
|
|||||||
- package-ecosystem: "docker" # See documentation for possible values
|
- package-ecosystem: "docker" # See documentation for possible values
|
||||||
directory: "/web" # Location of package manifests
|
directory: "/web" # Location of package manifests
|
||||||
schedule:
|
schedule:
|
||||||
interval: "weekly"
|
interval: "weekly"
|
||||||
- package-ecosystem: "docker" # See documentation for possible values
|
- package-ecosystem: "docker" # See documentation for possible values
|
||||||
directory: "/postorius" # Location of package manifests
|
directory: "/postorius" # Location of package manifests
|
||||||
schedule:
|
schedule:
|
||||||
interval: "weekly"
|
interval: "weekly"
|
||||||
# Enable version updates for Actions
|
# Enable version updates for Actions
|
||||||
- package-ecosystem: "github-actions"
|
- package-ecosystem: "github-actions"
|
||||||
# Look for `.github/workflows` in the `root` directory
|
# Look for `.github/workflows` in the `root` directory
|
||||||
directory: "/"
|
directory: "/"
|
||||||
# Check for updates once a week
|
# Check for updates once a week
|
||||||
schedule:
|
schedule:
|
||||||
interval: "weekly"
|
interval: "weekly"
|
||||||
|
- package-ecosystem: "pip"
|
||||||
|
directory: "/core"
|
||||||
|
schedule:
|
||||||
|
interval: "daily"
|
||||||
|
- package-ecosystem: "pip"
|
||||||
|
directory: "/web"
|
||||||
|
schedule:
|
||||||
|
interval: "daily"
|
||||||
@@ -4,6 +4,9 @@ FROM alpine:3.16.2
|
|||||||
#Add startup script to container
|
#Add startup script to container
|
||||||
COPY docker-entrypoint.sh /usr/local/bin/
|
COPY docker-entrypoint.sh /usr/local/bin/
|
||||||
|
|
||||||
|
# Add requirements file.
|
||||||
|
COPY requirements.txt /tmp/
|
||||||
|
|
||||||
#Install all required packages, add user for executing mailman and set execution rights for startup script
|
#Install all required packages, add user for executing mailman and set execution rights for startup script
|
||||||
RUN --mount=type=cache,target=/root/.cache \
|
RUN --mount=type=cache,target=/root/.cache \
|
||||||
apk update \
|
apk update \
|
||||||
@@ -15,10 +18,9 @@ RUN --mount=type=cache,target=/root/.cache \
|
|||||||
&& python3 -m pip install -U pip setuptools wheel \
|
&& python3 -m pip install -U pip setuptools wheel \
|
||||||
&& python3 -m pip install psycopg2 \
|
&& python3 -m pip install psycopg2 \
|
||||||
gunicorn==19.9.0 \
|
gunicorn==19.9.0 \
|
||||||
mailman==3.3.6 \
|
|
||||||
mailman-hyperkitty==1.2.0 \
|
|
||||||
pymysql \
|
pymysql \
|
||||||
'sqlalchemy<1.4.0' \
|
'sqlalchemy<1.4.0' \
|
||||||
|
-r /tmp/requirements.txt \
|
||||||
&& apk del build-deps \
|
&& apk del build-deps \
|
||||||
&& adduser -S mailman
|
&& adduser -S mailman
|
||||||
|
|
||||||
|
|||||||
5
core/requirements.txt
Normal file
5
core/requirements.txt
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
# This is a separate file from Dockerfile so that we can use dependabot
|
||||||
|
# for version updates that isn't supported for contents inside the
|
||||||
|
# Dockerfile.
|
||||||
|
mailman==3.3.4
|
||||||
|
mailman-hyperkitty==1.1.0
|
||||||
@@ -5,6 +5,8 @@ FROM alpine:3.16.2
|
|||||||
COPY mailman-web /opt/mailman-web
|
COPY mailman-web /opt/mailman-web
|
||||||
# Add startup script to container
|
# Add startup script to container
|
||||||
COPY docker-entrypoint.sh /usr/local/bin/
|
COPY docker-entrypoint.sh /usr/local/bin/
|
||||||
|
# Add requirements file.
|
||||||
|
COPY requirements.txt /tmp/
|
||||||
|
|
||||||
# Install packages and dependencies for postorius and hyperkitty Add user for
|
# Install packages and dependencies for postorius and hyperkitty Add user for
|
||||||
# executing apps, change ownership for uwsgi+django files and set execution
|
# executing apps, change ownership for uwsgi+django files and set execution
|
||||||
@@ -17,10 +19,7 @@ RUN --mount=type=cache,target=/root/.cache \
|
|||||||
postgresql-client mysql-client py3-mysqlclient curl mailcap gettext \
|
postgresql-client mysql-client py3-mysqlclient curl mailcap gettext \
|
||||||
python3 py3-pip xapian-core xapian-bindings-python3 libffi pcre-dev py-cryptography \
|
python3 py3-pip xapian-core xapian-bindings-python3 libffi pcre-dev py-cryptography \
|
||||||
&& python3 -m pip install -U 'Django<4.2' pip setuptools wheel \
|
&& python3 -m pip install -U 'Django<4.2' pip setuptools wheel \
|
||||||
&& pip install mailmanclient==3.3.4 \
|
&& pip install -r /tmp/requirements.txt \
|
||||||
postorius==1.3.7 \
|
|
||||||
hyperkitty==1.3.6 \
|
|
||||||
django-mailman3==1.3.8 \
|
|
||||||
whoosh \
|
whoosh \
|
||||||
uwsgi \
|
uwsgi \
|
||||||
'psycopg2<2.9' \
|
'psycopg2<2.9' \
|
||||||
|
|||||||
4
web/requirements.txt
Normal file
4
web/requirements.txt
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
mailmanclient==3.3.4
|
||||||
|
postorius==1.3.7
|
||||||
|
hyperkitty==1.3.6
|
||||||
|
django-mailman3==1.3.8
|
||||||
Reference in New Issue
Block a user