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

Create crypto binaries report #122

Open
wants to merge 2 commits into
base: release/202311
Choose a base branch
from

Conversation

DorLevi95
Copy link

Description

Creating a reporting script to run in post build.
This script will generate a report about the crypto binaries containing useful info:

  • Binaries sizes
  • Submodules info
  • Linked openssllib*.inf to each binary
  • Openssllib*.inf build configuration flags

The report will be placed in the build folder with the name "Report_" and published during Crypto tests pipeline.
A follow up PR needs to be added, which will compare reports during each PR (latest release branch report as the baseline report) and produce necessary warnings.
The goal is to catch risky changes that can break functionality or influence the memory consumption (e.g. increase or decrease in size).

Currently the report is only generated and publish during the Crypto tests pipeline. i.e. STANDARD_DEBUG flavor.
This mainly influences only the binaries sizes and might be enough to catch abnormal increase/decrease.

Please refer to this draft PR to view and example of the report and its comparison during a PR: #118

@github-actions github-actions bot added the language:python Pull requests that update Python code label Jan 12, 2025
@DorLevi95 DorLevi95 changed the title Create build report about the crypto binaries Create crypto binaries report Jan 12, 2025

def get_module_type_for_crypto_bin(self, thebuilder):

CryptoBinPkg_Driver_path = Path(thebuilder.ws) / "CryptoBinPkg" / "Driver"
Copy link

@inbal2l inbal2l Jan 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would probebly define CryptoBinPkg_Driver_path (along side other enrvironment-dependent params) in the beginning of the program to make it visibal, so that if changed can be changed in one place.


class ReportCrypto(IUefiBuildPlugin):

def do_post_build(self, thebuilder):
Copy link

@inbal2l inbal2l Jan 13, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Flickdm, @DorLevi95, @kenlautner - generally speaking, I think it might be worth adopting Doxygen decomentation style (for python, described here) for future projects, so that we can use that to auto-gen decomentation site for the tools. What do you think?

@Flickdm Flickdm self-requested a review January 13, 2025 18:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
language:python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants