From 58d4fa80d81c14a7aa2977d31996dccf6cb11f03 Mon Sep 17 00:00:00 2001 From: Gaston Rial Saibene Date: Fri, 8 Nov 2024 14:18:34 +0100 Subject: [PATCH 1/2] fix(docker-image): downgrade Python base image and remove pkg_resources --- docker/Dockerfile | 4 ++-- requirements-base.in | 1 + requirements-base.txt | 3 ++- src/dispatch/common/utils/cli.py | 9 ++++----- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 0ed550a1adf2..a6aeca6d51e3 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.13.0-slim-bullseye as sdist +FROM python:3.11.10-slim-bullseye as sdist LABEL maintainer="oss@netflix.com" LABEL org.opencontainers.image.title="Dispatch PyPI Wheel" @@ -56,7 +56,7 @@ RUN YARN_CACHE_FOLDER="$(mktemp -d)" \ && mv /usr/src/dispatch/dist /dist # This is the image to be run -FROM python:3.13.0-slim-bullseye +FROM python:3.11.10-slim-bullseye LABEL maintainer="oss@dispatch.io" LABEL org.opencontainers.image.title="Dispatch" diff --git a/requirements-base.in b/requirements-base.in index 61bd6fa7d7e6..0bf44ae73490 100644 --- a/requirements-base.in +++ b/requirements-base.in @@ -23,6 +23,7 @@ jinja2 jira==2.0.0 joblib jsonpath_ng +lxml==5.3.0 markdown msal numpy diff --git a/requirements-base.txt b/requirements-base.txt index 676cd7b9c3fb..652e371f59da 100644 --- a/requirements-base.txt +++ b/requirements-base.txt @@ -203,8 +203,9 @@ langcodes==3.3.0 # via spacy limits==3.7.0 # via slowapi -lxml==5.0.0 +lxml==5.3.0 # via + # -r requirements-base.in # emails # premailer mako==1.3.0 diff --git a/src/dispatch/common/utils/cli.py b/src/dispatch/common/utils/cli.py index 965416990b6f..a66f45a040ba 100644 --- a/src/dispatch/common/utils/cli.py +++ b/src/dispatch/common/utils/cli.py @@ -1,14 +1,12 @@ import traceback import logging -import pkg_resources +from importlib.metadata import entry_points, EntryPoint from sqlalchemy.exc import SQLAlchemyError from dispatch.plugins.base import plugins, register - logger = logging.getLogger(__name__) - # Plugin endpoints should determine authentication # TODO allow them to specify (kglisson) def install_plugin_events(api): """Adds plugin endpoints to the event router.""" @@ -16,14 +14,15 @@ def install_plugin_events(api): if plugin.events: api.include_router(plugin.events, prefix="/{organization}/events", tags=["events"]) - def install_plugins(): """ Installs plugins associated with dispatch :return: """ + # Retrieve entry points for 'dispatch.plugins' + dispatch_plugins = entry_points().get("dispatch.plugins", []) - for ep in pkg_resources.iter_entry_points("dispatch.plugins"): + for ep in dispatch_plugins: logger.info(f"Attempting to load plugin: {ep.name}") try: plugin = ep.load() From 60038a774030d08950e1a017201394a17bef0cc3 Mon Sep 17 00:00:00 2001 From: Marc Vilanova <39573146+mvilanova@users.noreply.github.com> Date: Mon, 16 Dec 2024 11:22:34 -0800 Subject: [PATCH 2/2] Update cli.py --- src/dispatch/common/utils/cli.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dispatch/common/utils/cli.py b/src/dispatch/common/utils/cli.py index a66f45a040ba..4bed4f8bfd35 100644 --- a/src/dispatch/common/utils/cli.py +++ b/src/dispatch/common/utils/cli.py @@ -1,6 +1,6 @@ import traceback import logging -from importlib.metadata import entry_points, EntryPoint +from importlib.metadata import entry_points from sqlalchemy.exc import SQLAlchemyError from dispatch.plugins.base import plugins, register