Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Support SONiC reproduceable build for deb/py2/py3/web #5786

Closed
wants to merge 2 commits into from

Conversation

xumia
Copy link
Collaborator

@xumia xumia commented Nov 2, 2020

- Why I did it

Please add comments in #5718

Support SONiC Reproduceable Build, see design doc: sonic-net/SONiC#684
Features:

  1. Collect the version information to the folder target/versions when building any targets
    Sample commands:
    make configure PLATFORM=broadcom
    make target/sonic-aboot-broadcom.swi

  2. Support to freeze the versions after build by command: make freeze
    Sample 1: Initialize the versions or rebuild the versions
    make freeze OPTIONS="-r"
    Sample 2: Freeze and merge the versions to current distribution and the architecture
    make freeze
    Sample 3: Merge the current target versions to all distributions and all architectures
    make freeze OPTIONS="-d -a"

    You can add the version change by: git add files/build/versions
    In most cases, simply run "make freeze" to freeze the versions.

  3. Control the version in build, change the configuration file rules/config
    SONIC_VERSION_CONTROL_COMPONENTS=all

  4. To upgrade the version configuration, just build any targets, then freeze your versions.
    Sample commands:
    make configure SONIC_VERSION_CONTROL_COMPONENTS=none PLATFORM=broadcom
    make SONIC_VERSION_CONTROL_COMPONENTS=none target/sonic-aboot-broadcom.swi
    make freeze OPTIONS="-d -a"

- How I did it

- How to verify it

  1. Make the targets again
    Sample commands:
    make configure PLATFORM=broadcom
    make target/sonic-aboot-broadcom.swi
  2. Freeze the versions again
    make freeze
    You can see no version change in files/build/versions, git status files/build/versions.
    The version files are in target/versions, you can find and verify all the version changes for all the build targets.

- Which release branch to backport (provide reason below if selected)

  • 201811
  • 201911
  • 202006

- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

@lgtm-com
Copy link

lgtm-com bot commented Nov 2, 2020

This pull request introduces 1 alert when merging 7a941bfed24e952f5b27b81758d3ae4316431b69 into 10ab46f - view on LGTM.com

new alerts:

  • 1 for Unused local variable

@lgtm-com
Copy link

lgtm-com bot commented Nov 18, 2020

This pull request introduces 1 alert when merging c912a8f into 1ba583c - view on LGTM.com

new alerts:

  • 1 for Unused local variable

@xumia xumia marked this pull request as draft November 18, 2020 06:31
@xumia
Copy link
Collaborator Author

xumia commented Nov 18, 2020

See #5718

@xumia xumia closed this Nov 18, 2020
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant