diff --git a/rules/config b/rules/config index b98f585712d9..7c5e2808ad0b 100644 --- a/rules/config +++ b/rules/config @@ -234,3 +234,28 @@ INCLUDE_RADIUS = y # * install ntp/ntpstat (build_debian.sh) # * copy files from files/image_config/ntp (build_debian.sh, sonic_debian_extension.sh) INCLUDE_NTP = y + +# INCLUDE_LLDP - build docker-lldp for LLDP support +INCLUDE_LLDP = y + +# INCLUDE_SNMP - build docker-smnp for SNMP support +INCLUDE_DOCKER_SNMP = y + +# INCLUDE_TEAMD - build docker-teamd for teamd support +INCLUDE_TEAMD = y + +# INCLUDE_ROUTER_ADVERTISER - build docker-radv for router advertiser support +INCLUDE_ROUTER_ADVERTISER = y + +# INCLUDE_BGP - build docker-fmp-frr for BGP support +INCLUDE_BGP = y + +# INCLUDE_SWSS - build docker-swss for orchagent support +INCLUDE_SWSS = y + +# INCLUDE_PMON - build docker-platform-monitor +INCLUDE_PMON = y + +# INCLUDE_DATABASE - build docker-database for redis db support +INCLUDE_DATABASE = y + diff --git a/rules/docker-database.mk b/rules/docker-database.mk index 8d1183e08d25..2015a7db1e76 100644 --- a/rules/docker-database.mk +++ b/rules/docker-database.mk @@ -19,10 +19,14 @@ $(DOCKER_DATABASE)_VERSION = 1.0.0 $(DOCKER_DATABASE)_PACKAGE_NAME = database SONIC_DOCKER_IMAGES += $(DOCKER_DATABASE) +ifeq ($(INCLUDE_DATABASE), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_DATABASE) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_DATABASE_DBG) +ifeq ($(INCLUDE_DATABASE), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_DATABASE_DBG) +endif $(DOCKER_DATABASE)_CONTAINER_NAME = database $(DOCKER_DATABASE)_RUN_OPT += --privileged -t diff --git a/rules/docker-fpm.mk b/rules/docker-fpm.mk index 5490c36ba782..e658285a7f1a 100644 --- a/rules/docker-fpm.mk +++ b/rules/docker-fpm.mk @@ -1,8 +1,10 @@ # Docker-fpm rule-file is simply a wrapper containing routing-stack selection logic. +ifeq ($(INCLUDE_BGP), y) ifeq ($(SONIC_ROUTING_STACK), frr) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_FPM_FRR) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_FPM_FRR_DBG) else SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_FPM_GOBGP) endif +endif diff --git a/rules/docker-lldp.mk b/rules/docker-lldp.mk index f9c77ec14c40..0fc07e7d3195 100644 --- a/rules/docker-lldp.mk +++ b/rules/docker-lldp.mk @@ -22,10 +22,14 @@ $(DOCKER_LLDP)_WARM_SHUTDOWN_BEFORE = swss $(DOCKER_LLDP)_FAST_SHUTDOWN_BEFORE = swss SONIC_DOCKER_IMAGES += $(DOCKER_LLDP) +ifeq ($(INCLUDE_LLDP), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_LLDP) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_LLDP_DBG) +ifeq ($(INCLUDE_LLDP), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_LLDP_DBG) +endif $(DOCKER_LLDP)_CONTAINER_NAME = lldp $(DOCKER_LLDP)_RUN_OPT += --privileged -t diff --git a/rules/docker-orchagent.mk b/rules/docker-orchagent.mk index a6f554d5df47..cc87e17658e0 100644 --- a/rules/docker-orchagent.mk +++ b/rules/docker-orchagent.mk @@ -24,10 +24,14 @@ $(DOCKER_ORCHAGENT)_WARM_SHUTDOWN_BEFORE = syncd $(DOCKER_ORCHAGENT)_FAST_SHUTDOWN_BEFORE = syncd SONIC_DOCKER_IMAGES += $(DOCKER_ORCHAGENT) +ifeq ($(INCLUDE_SWSS), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_ORCHAGENT) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_ORCHAGENT_DBG) +ifeq ($(INCLUDE_SWSS), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_ORCHAGENT_DBG) +endif $(DOCKER_ORCHAGENT)_CONTAINER_NAME = swss $(DOCKER_ORCHAGENT)_RUN_OPT += --privileged -t diff --git a/rules/docker-platform-monitor.mk b/rules/docker-platform-monitor.mk index 5d6fba5f1218..d17c347a02b4 100644 --- a/rules/docker-platform-monitor.mk +++ b/rules/docker-platform-monitor.mk @@ -52,10 +52,14 @@ $(DOCKER_PLATFORM_MONITOR)_WARM_SHUTDOWN_BEFORE = swss endif SONIC_DOCKER_IMAGES += $(DOCKER_PLATFORM_MONITOR) +ifeq ($(INCLUDE_PMON), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_PLATFORM_MONITOR) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_PLATFORM_MONITOR_DBG) +ifeq ($(INCLUDE_PMON), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_PLATFORM_MONITOR_DBG) +endif $(DOCKER_PLATFORM_MONITOR)_CONTAINER_NAME = pmon $(DOCKER_PLATFORM_MONITOR)_RUN_OPT += --privileged -t diff --git a/rules/docker-router-advertiser.mk b/rules/docker-router-advertiser.mk index c2a5f9bf5d3c..62a536d6ae67 100644 --- a/rules/docker-router-advertiser.mk +++ b/rules/docker-router-advertiser.mk @@ -19,10 +19,14 @@ $(DOCKER_ROUTER_ADVERTISER)_WARM_SHUTDOWN_BEFORE = swss $(DOCKER_ROUTER_ADVERTISER)_FAST_SHUTDOWN_BEFORE = swss SONIC_DOCKER_IMAGES += $(DOCKER_ROUTER_ADVERTISER) +ifeq ($(INCLUDE_ROUTER_ADVERTISER), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_ROUTER_ADVERTISER) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_ROUTER_ADVERTISER_DBG) +ifeq ($(INCLUDE_ROUTER_ADVERTISER), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_ROUTER_ADVERTISER_DBG) +endif $(DOCKER_ROUTER_ADVERTISER)_CONTAINER_NAME = radv $(DOCKER_ROUTER_ADVERTISER)_RUN_OPT += --privileged -t diff --git a/rules/docker-snmp.mk b/rules/docker-snmp.mk index af90cf3664e8..17227abe2e70 100644 --- a/rules/docker-snmp.mk +++ b/rules/docker-snmp.mk @@ -21,10 +21,14 @@ $(DOCKER_SNMP)_VERSION = 1.0.0 $(DOCKER_SNMP)_PACKAGE_NAME = snmp SONIC_DOCKER_IMAGES += $(DOCKER_SNMP) +ifeq ($(INCLUDE_SNMP), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_SNMP) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_SNMP_DBG) +ifeq ($(INCLUDE_SNMP), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_SNMP_DBG) +endif $(DOCKER_SNMP)_CONTAINER_NAME = snmp $(DOCKER_SNMP)_RUN_OPT += --privileged -t diff --git a/rules/docker-teamd.mk b/rules/docker-teamd.mk index 4d1fe07a55ff..b353b8869062 100644 --- a/rules/docker-teamd.mk +++ b/rules/docker-teamd.mk @@ -22,10 +22,14 @@ $(DOCKER_TEAMD)_WARM_SHUTDOWN_AFTER = swss $(DOCKER_TEAMD)_FAST_SHUTDOWN_BEFORE = swss SONIC_DOCKER_IMAGES += $(DOCKER_TEAMD) +ifeq ($(INCLUDE_TEAMD), y) SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_TEAMD) +endif SONIC_DOCKER_DBG_IMAGES += $(DOCKER_TEAMD_DBG) +ifeq ($(INCLUDE_TEAMD), y) SONIC_INSTALL_DOCKER_DBG_IMAGES += $(DOCKER_TEAMD_DBG) +endif $(DOCKER_TEAMD)_CONTAINER_NAME = teamd $(DOCKER_TEAMD)_RUN_OPT += --privileged -t diff --git a/slave.mk b/slave.mk index 79a7d8f8648f..422e5c52a3dc 100644 --- a/slave.mk +++ b/slave.mk @@ -326,6 +326,14 @@ $(info "INCLUDE_MUX" : "$(INCLUDE_MUX)") $(info "INCLUDE_SYSLOG" : "$(INCLUDE_SYSLOG)") $(info "INCLUDE_RADIUS" : "$(INCLUDE_RADIUS)") $(info "INCLUDE_NTP" : "$(INCLUDE_NTP)") +$(info "INCLUDE_LLDP" : "$(INCLUDE_LLDP)") +$(info "INCLUDE_SNMP" : "$(INCLUDE_SNMP)") +$(info "INCLUDE_TEAMD" : "$(INCLUDE_TEAMD)") +$(info "INCLUDE_ROUTER_ADVERTISER" : "$(INCLUDE_ROUTER_ADVERTISER)") +$(info "INCLUDE_BGP" : "$(INCLUDE_BGP)") +$(info "INCLUDE_SWSS" : "$(INCLUDE_SWSS)") +$(info "INCLUDE_PMON" : "$(INCLUDE_PMON)") +$(info "INCLUDE_DATABASE" : "$(INCLUDE_DATABASE)") $(info "TELEMETRY_WRITABLE" : "$(TELEMETRY_WRITABLE)") $(info "ENABLE_AUTO_TECH_SUPPORT" : "$(ENABLE_AUTO_TECH_SUPPORT)") $(info "PDDF_SUPPORT" : "$(PDDF_SUPPORT)")