2017-10-24 00:01:42 -05:00
|
|
|
# docker image for virtual switch based sonic docker image
|
|
|
|
|
|
|
|
DOCKER_SONIC_VS = docker-sonic-vs.gz
|
|
|
|
$(DOCKER_SONIC_VS)_PATH = $(PLATFORM_PATH)/docker-sonic-vs
|
Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye (#13294)
* Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
* iproute2: Force a new version and timestamp to be used for the package
There is an issue with Docker's overlay2 storage driver when not using
native diffs (and thus falling back to naive diff mode), which is the
case in the CI builds. The way the naive diff mode detects changes is by
comparing the file size and comparing the timestamps (specifically, I
believe it's the modification timestamp), and if there's a change there,
then it's considered a change that needs to be recorded as part of that
layer.
The problem is that with the code being added in the patch, the file
size remains the same, and the timestamp of binary files appear to be
the same timestamp as the changelog entry (likely for reproducible build
purposes). The file size remains the same likely due to extra padding
within the file introduced by relro. Because of this, Docker doesn't
detect this file has changed, and doesn't save the new file as part of
this layer.
To work around this, create a new changelog entry (with a new version as
well) with a new timestamp. This will result in the binary files having
a different timestamp, and thus will get saved by Docker as part of that
layer.
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
---------
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2023-03-19 23:14:27 -05:00
|
|
|
$(DOCKER_SONIC_VS)_DEPENDS += $(SYNCD_VS) \
|
2020-10-06 08:23:24 -05:00
|
|
|
$(PYTHON3_SWSSCOMMON) \
|
2020-06-24 16:07:22 -05:00
|
|
|
$(LIBTEAMDCTL) \
|
2017-11-30 16:59:25 -06:00
|
|
|
$(LIBTEAM_UTILS) \
|
2020-07-21 12:33:43 -05:00
|
|
|
$(SONIC_DEVICE_DATA) \
|
|
|
|
$(LIBYANG) \
|
|
|
|
$(LIBYANG_CPP) \
|
2020-11-25 12:28:36 -06:00
|
|
|
$(LIBYANG_PY3) \
|
2020-10-23 11:52:29 -05:00
|
|
|
$(SONIC_UTILITIES_DATA) \
|
2021-11-25 07:38:17 -06:00
|
|
|
$(SONIC_HOST_SERVICES_DATA) \
|
|
|
|
$(IPROUTE2)
|
2019-02-05 00:06:37 -06:00
|
|
|
|
2022-10-12 00:04:14 -05:00
|
|
|
$(DOCKER_SONIC_VS)_PYTHON_WHEELS += $(SONIC_PY_COMMON_PY3) \
|
2021-01-28 11:44:43 -06:00
|
|
|
$(SONIC_PLATFORM_COMMON_PY3) \
|
2020-08-03 13:43:12 -05:00
|
|
|
$(SONIC_YANG_MODELS_PY3) \
|
2020-11-25 12:28:36 -06:00
|
|
|
$(SONIC_YANG_MGMT_PY3) \
|
|
|
|
$(SONIC_UTILITIES_PY3) \
|
2020-10-23 11:52:29 -05:00
|
|
|
$(SONIC_HOST_SERVICES_PY3)
|
2020-06-22 17:38:36 -05:00
|
|
|
|
2018-10-21 19:20:27 -05:00
|
|
|
ifeq ($(INSTALL_DEBUG_TOOLS), y)
|
Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye (#13294)
* Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
* iproute2: Force a new version and timestamp to be used for the package
There is an issue with Docker's overlay2 storage driver when not using
native diffs (and thus falling back to naive diff mode), which is the
case in the CI builds. The way the naive diff mode detects changes is by
comparing the file size and comparing the timestamps (specifically, I
believe it's the modification timestamp), and if there's a change there,
then it's considered a change that needs to be recorded as part of that
layer.
The problem is that with the code being added in the patch, the file
size remains the same, and the timestamp of binary files appear to be
the same timestamp as the changelog entry (likely for reproducible build
purposes). The file size remains the same likely due to extra padding
within the file introduced by relro. Because of this, Docker doesn't
detect this file has changed, and doesn't save the new file as part of
this layer.
To work around this, create a new changelog entry (with a new version as
well) with a new timestamp. This will result in the binary files having
a different timestamp, and thus will get saved by Docker as part of that
layer.
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
---------
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2023-03-19 23:14:27 -05:00
|
|
|
$(DOCKER_SONIC_VS)_DEPENDS += $(LIBSWSSCOMMON_DBG) \
|
2018-10-21 19:20:27 -05:00
|
|
|
$(LIBSAIREDIS_DBG) \
|
2018-10-22 23:17:08 -05:00
|
|
|
$(LIBSAIVS_DBG) \
|
2018-10-21 19:20:27 -05:00
|
|
|
$(SYNCD_VS_DBG)
|
|
|
|
endif
|
|
|
|
|
2021-06-23 11:15:56 -05:00
|
|
|
ifeq ($(SONIC_ROUTING_STACK), frr)
|
2017-10-24 00:01:42 -05:00
|
|
|
$(DOCKER_SONIC_VS)_DEPENDS += $(FRR)
|
|
|
|
else
|
|
|
|
$(DOCKER_SONIC_VS)_DEPENDS += $(GOBGP)
|
|
|
|
endif
|
|
|
|
|
2017-11-30 16:59:25 -06:00
|
|
|
$(DOCKER_SONIC_VS)_FILES += $(CONFIGDB_LOAD_SCRIPT) \
|
2018-11-21 00:32:40 -06:00
|
|
|
$(ARP_UPDATE_SCRIPT) \
|
2020-09-18 20:44:23 -05:00
|
|
|
$(ARP_UPDATE_VARS_TEMPLATE) \
|
2019-01-30 04:04:20 -06:00
|
|
|
$(BUFFERS_CONFIG_TEMPLATE) \
|
2019-02-01 13:18:02 -06:00
|
|
|
$(QOS_CONFIG_TEMPLATE) \
|
2020-07-29 16:20:31 -05:00
|
|
|
$(SONIC_VERSION) \
|
2020-11-23 11:31:42 -06:00
|
|
|
$(UPDATE_CHASSISDB_CONFIG_SCRIPT) \
|
|
|
|
$(COPP_CONFIG_TEMPLATE)
|
2017-11-30 16:59:25 -06:00
|
|
|
|
Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye (#13294)
* Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
* iproute2: Force a new version and timestamp to be used for the package
There is an issue with Docker's overlay2 storage driver when not using
native diffs (and thus falling back to naive diff mode), which is the
case in the CI builds. The way the naive diff mode detects changes is by
comparing the file size and comparing the timestamps (specifically, I
believe it's the modification timestamp), and if there's a change there,
then it's considered a change that needs to be recorded as part of that
layer.
The problem is that with the code being added in the patch, the file
size remains the same, and the timestamp of binary files appear to be
the same timestamp as the changelog entry (likely for reproducible build
purposes). The file size remains the same likely due to extra padding
within the file introduced by relro. Because of this, Docker doesn't
detect this file has changed, and doesn't save the new file as part of
this layer.
To work around this, create a new changelog entry (with a new version as
well) with a new timestamp. This will result in the binary files having
a different timestamp, and thus will get saved by Docker as part of that
layer.
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
---------
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2023-03-19 23:14:27 -05:00
|
|
|
$(DOCKER_SONIC_VS)_LOAD_DOCKERS += $(DOCKER_SWSS_LAYER_BULLSEYE)
|
2017-10-24 00:01:42 -05:00
|
|
|
SONIC_DOCKER_IMAGES += $(DOCKER_SONIC_VS)
|
2021-06-30 14:45:40 -05:00
|
|
|
|
Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye (#13294)
* Upgrade docker-sonic-vs and docker-syncd-vs to Bullseye
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
* iproute2: Force a new version and timestamp to be used for the package
There is an issue with Docker's overlay2 storage driver when not using
native diffs (and thus falling back to naive diff mode), which is the
case in the CI builds. The way the naive diff mode detects changes is by
comparing the file size and comparing the timestamps (specifically, I
believe it's the modification timestamp), and if there's a change there,
then it's considered a change that needs to be recorded as part of that
layer.
The problem is that with the code being added in the patch, the file
size remains the same, and the timestamp of binary files appear to be
the same timestamp as the changelog entry (likely for reproducible build
purposes). The file size remains the same likely due to extra padding
within the file introduced by relro. Because of this, Docker doesn't
detect this file has changed, and doesn't save the new file as part of
this layer.
To work around this, create a new changelog entry (with a new version as
well) with a new timestamp. This will result in the binary files having
a different timestamp, and thus will get saved by Docker as part of that
layer.
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
---------
Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
2023-03-19 23:14:27 -05:00
|
|
|
SONIC_BULLSEYE_DOCKERS += $(DOCKER_SONIC_VS)
|