From 1df7c9a99345b8b0ff3b4e29d63b4cf8ff063e4c Mon Sep 17 00:00:00 2001 From: Joe LeVeque Date: Fri, 20 Apr 2018 10:42:19 -0700 Subject: [PATCH] [docker-platform-monitor] Convert ledd from polling-based to subscription-based model (#1623) --- dockers/docker-platform-monitor/Dockerfile.j2 | 39 +++++++++---------- rules/docker-platform-monitor.mk | 2 +- src/sonic-platform-daemons | 2 +- 3 files changed, 21 insertions(+), 22 deletions(-) diff --git a/dockers/docker-platform-monitor/Dockerfile.j2 b/dockers/docker-platform-monitor/Dockerfile.j2 index 4dd8acaf0..95e9d150e 100755 --- a/dockers/docker-platform-monitor/Dockerfile.j2 +++ b/dockers/docker-platform-monitor/Dockerfile.j2 @@ -3,35 +3,34 @@ FROM docker-config-engine # Make apt-get non-interactive ENV DEBIAN_FRONTEND=noninteractive -# Update apt's package index files +# Update apt's cache of available packages RUN apt-get update # Install required packages -RUN apt-get install -y python-pip sensord fancontrol +RUN apt-get install -y python-pip libpython2.7 sensord fancontrol {% if docker_platform_monitor_debs.strip() -%} -# Copy all locally-built Debian package dependencies -COPY{{' '}} -{%- for deb in docker_platform_monitor_debs.split(' ') -%} -debs/{{ deb }}{{' '}} -{%- endfor -%} -/debs/ +# Copy locally-built Debian package dependencies +{%- for deb in docker_platform_monitor_debs.split(' ') %} +COPY debs/{{ deb }} /debs/ +{%- endfor %} -# Install all locally-built Debian package dependencies -# and implicitly install their dependencies -RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /debs/*.deb -{% endif %} +# Install locally-built Debian packages and implicitly install their dependencies +{%- for deb in docker_platform_monitor_debs.split(' ') %} +RUN dpkg_apt() { [ -f $1 ] && { dpkg -i $1 || apt-get -y install -f; } || return 1; }; dpkg_apt /debs/{{ deb }} +{%- endfor %} +{%- endif %} {% if docker_platform_monitor_whls.strip() -%} -# Copy all locally-built Python wheel dependencies -COPY{{' '}} -{%- for whl in docker_platform_monitor_whls.split(' ') -%} -python-wheels/{{ whl }}{{' '}} -{%- endfor -%} -/python-wheels/ +# Copy locally-built Python wheel dependencies +{%- for whl in docker_platform_monitor_whls.split(' ') %} +COPY python-wheels/{{ whl }} /python-wheels/ +{%- endfor %} -# Install all locally-built Python wheel dependencies -RUN pip install /python-wheels/*.whl +# Install locally-built Python wheel dependencies +{%- for whl in docker_platform_monitor_whls.split(' ') %} +RUN pip install /python-wheels/{{ whl }} +{%- endfor %} {% endif %} # Clean up diff --git a/rules/docker-platform-monitor.mk b/rules/docker-platform-monitor.mk index 345e82f7b..00b4d4868 100644 --- a/rules/docker-platform-monitor.mk +++ b/rules/docker-platform-monitor.mk @@ -2,7 +2,7 @@ DOCKER_PLATFORM_MONITOR = docker-platform-monitor.gz $(DOCKER_PLATFORM_MONITOR)_PATH = $(DOCKERS_PATH)/docker-platform-monitor -$(DOCKER_PLATFORM_MONITOR)_DEPENDS += $(SONIC_LEDD) +$(DOCKER_PLATFORM_MONITOR)_DEPENDS += $(LIBSWSSCOMMON) $(PYTHON_SWSSCOMMON) $(SONIC_LEDD) $(DOCKER_PLATFORM_MONITOR)_PYTHON_WHEELS += $(SONIC_PLATFORM_COMMON_PY2) $(DOCKER_PLATFORM_MONITOR)_PYTHON_WHEELS += $(SWSSSDK_PY2) $(DOCKER_PLATFORM_MONITOR)_LOAD_DOCKERS = $(DOCKER_CONFIG_ENGINE) diff --git a/src/sonic-platform-daemons b/src/sonic-platform-daemons index 31c007e26..c940a7d18 160000 --- a/src/sonic-platform-daemons +++ b/src/sonic-platform-daemons @@ -1 +1 @@ -Subproject commit 31c007e260ba081bc73cbf467eb27cd8747c2177 +Subproject commit c940a7d18ecd4dc22bbaf2aee6908045cbe24508