-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use pzstd for FILESYSTEM_DOCKERFS when defined BUILD_REDUCE_IMAGE_SIZE #21824
Open
lipxu
wants to merge
9
commits into
sonic-net:master
Choose a base branch
from
lipxu:20250221_publicMaster_pzstd
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+74
−15
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/azp run Azure.sonic-buildimage |
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Saikrishna Arcot <[email protected]>
Signed-off-by: Saikrishna Arcot <[email protected]>
Fix zstd dockerfs build for ONIE and for non-amd64
/azp run Azure.sonic-buildimage |
Azure Pipelines successfully started running 1 pipeline(s). |
Currently, there are two methods of having a reduced image size: BUILD_REDUCE_IMAGE_SIZE build configuration (resulting in the use of a zstd-compressed docker tarball for the installation file), and docker_inram (resulting in the docker tarball being extracted into RAM at bootup time instead to disk) (this particular option seems to be better supported on Aboot and not ONIE). These two are logically separate; one is a build-time configuration for an image, and the other is a runtime platform-specific option. This means that it's theoretically possible to have an image be built with BUILD_REDUCE_IMAGE_SIZE enabled and then be loaded onto a device that doesn't use docker_inram. If the image is being installed from SONiC, then that's _probably_ file, as long as the SONiC installation has zstd installed. If the image is being installed from ONIE or Aboot, then both of those environments currently don't support zstd-compressed tarballs, so image installation fails. Because of that, fail explicitly saying that this image is not supported in that environment. Signed-off-by: Saikrishna Arcot <[email protected]>
Add checks for zstd tarball extraction from ONIE or Aboot
/azp run Azure.sonic-buildimage |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run Azure.sonic-buildimage |
Azure Pipelines successfully started running 1 pipeline(s). |
Signed-off-by: Saikrishna Arcot <[email protected]>
Fix references to gzip/zstd variables
/azp run Azure.sonic-buildimage |
Azure Pipelines successfully started running 1 pipeline(s). |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why I did it
We enabled the docker inram feature for slim image.
It would extract the docker image to ram during the boot, so it would take extra times during boot.
Work item tracking
31323281
How I did it
Use pzstd which is more efficient tool to compress and decompress the docker file to reduce the boot time.
How to verify it
Boot image on 7060 and also run warm-reboot pipeline on 7060.
Which release branch to backport (provide reason below if selected)
Tested branch (Please provide the tested image version)
Description for the changelog
Link to config_db schema for YANG module changes
A picture of a cute animal (not mandatory but encouraged)