Skip to content
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

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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant