[edk2-devel] [PATCH v1 0/1] Use Pip version of BaseTools

Steven Shi steven.shi at intel.com
Tue Nov 3 04:54:20 UTC 2020


Hello Carlson,
I'd like to know the validation process of the BaseTools patch in Open CI after we fully adopt the pip based BaseTools. There will be two different repos as edk2-basetools and edk2,  and the two repos closely depend on each other to do the build validation. We might need a mechanism to sync the two repos dependency when we want to change the edk2-basetools. When I send a patch to change edk2-basetools, is there a mechanism in Open CI to let the build agent not to use the pre-installed pip basetools, but to clone the new branch version of edk2-basetools, build&install the new version basetools, and force the edk2 to finish build with the new version basetools?


Thanks
Steven Shi

> -----Original Message-----
> From: devel at edk2.groups.io <devel at edk2.groups.io> On Behalf Of
> Matthew Carlson
> Sent: Tuesday, November 3, 2020 8:36 AM
> To: devel at edk2.groups.io
> Cc: Feng, Bob C <bob.c.feng at intel.com>; Liming Gao
> <gaoliming at byosoft.com.cn>; Chen, Christine <yuwei.chen at intel.com>;
> Sean Brogan <sean.brogan at microsoft.com>; Kinney, Michael D
> <michael.d.kinney at intel.com>
> Subject: [edk2-devel] [PATCH v1 0/1] Use Pip version of BaseTools
> 
> From: Matthew Carlson <matthewfcarlson at gmail.com>
> 
> Hello all,
> 
> This patch adds the capability to leverage the pip based BaseTools.
> The BaseTools master is current with EDK2 master (as of 3pm Nov 2, 2020).
> While I could rehash a lot of what has gone out on the mailing list, I think
> it might be better just to link the discussion.
> 
> In a nutshell, setup will detect if edk2-basetools is installed, and if it
> is, use the other verison of BinWrappers (BinPipWrappers). This should
> provide an easy and convenient way to transition over. By default, CI
> uses the pip version.
> 
> The pipeline is setup. Every commit that gets pushed to master on basetools
> get published to pypi and tagged. This should offer bisectability and easier
> debugging. Additionally, the pip requirements file tracks a specific version.
> 
> We'd like to set a date for when PR's no longer go into EDK2 for BaseTools
> and instead go exclusively into the new basetools repo.
> 
> Ref: https://edk2.groups.io/g/devel/topic/76572200#64993
> Ref: https://github.com/tianocore/edk2-basetools
> Ref: https://github.com/tianocore/edk2/pull/1072
> 
> Cc: Bob Feng <bob.c.feng at intel.com>
> Cc: Liming Gao <gaoliming at byosoft.com.cn>
> Cc: Yuwei Chen <yuwei.chen at intel.com>
> Cc: Sean Brogan <sean.brogan at microsoft.com>
> Cc: Michael Kinney <michael.d.kinney at intel.com>
> 
> Matthew Carlson (1):
>   BaseTools: Use pip module if available, CI uses it by default
> 
>  .pytool/CISettings.py                                                               |  20 +-
>  BaseTools/BinPipWrappers/PosixLike/AmlToC                                           |  14 +
>  BaseTools/BinPipWrappers/PosixLike/BPDG                                             |  12 +
>  BaseTools/BinPipWrappers/PosixLike/Brotli                                           |  29 ++
>  BaseTools/BinPipWrappers/PosixLike/BrotliCompress                                   |
> 34 ++
>  BaseTools/BinPipWrappers/PosixLike/DevicePath                                       |  29
> ++
>  BaseTools/BinPipWrappers/PosixLike/Ecc                                              |  13 +
>  BaseTools/BinPipWrappers/PosixLike/EfiRom                                           |  29
> ++
>  BaseTools/BinPipWrappers/PosixLike/GenCrc32                                         |  29
> ++
>  BaseTools/BinPipWrappers/PosixLike/GenDepex                                         |  12
> +
>  BaseTools/BinPipWrappers/PosixLike/GenFds                                           |  12 +
>  BaseTools/BinPipWrappers/PosixLike/GenFfs                                           |  29 ++
>  BaseTools/BinPipWrappers/PosixLike/GenFv                                            |  29 ++
>  BaseTools/BinPipWrappers/PosixLike/GenFw                                            |  29
> ++
>  BaseTools/BinPipWrappers/PosixLike/GenPatchPcdTable                                 |
> 12 +
>  BaseTools/BinPipWrappers/PosixLike/GenSec                                           |  29
> ++
>  BaseTools/BinPipWrappers/PosixLike/GenerateCapsule                                  |
> 12 +
>  BaseTools/BinPipWrappers/PosixLike/LzmaCompress                                     |
> 29 ++
>  BaseTools/BinPipWrappers/PosixLike/LzmaF86Compress                                  |
> 19 +
>  BaseTools/BinPipWrappers/PosixLike/PatchPcdValue                                    |
> 12 +
>  BaseTools/BinPipWrappers/PosixLike/Pkcs7Sign                                        |  12 +
>  BaseTools/BinPipWrappers/PosixLike/Rsa2048Sha256GenerateKeys
> |  12 +
>  BaseTools/BinPipWrappers/PosixLike/Rsa2048Sha256Sign
> |  12 +
>  BaseTools/BinPipWrappers/PosixLike/Split                                            |  29 ++
>  BaseTools/BinPipWrappers/PosixLike/TargetTool                                       |  12
> +
>  BaseTools/BinPipWrappers/PosixLike/TianoCompress                                    |
> 29 ++
>  BaseTools/BinPipWrappers/PosixLike/Trim                                             |  13 +
>  BaseTools/BinPipWrappers/PosixLike/UPT                                              |  12 +
>  BaseTools/BinPipWrappers/PosixLike/VfrCompile                                       |  29
> ++
>  BaseTools/BinPipWrappers/PosixLike/VolInfo                                          |  29 ++
>  BaseTools/BinPipWrappers/PosixLike/build                                            |  12 +
>  BaseTools/{BinWrappers =>
> BinPipWrappers}/PosixLike/posix_path_env.yaml             |   3 +-
>  BaseTools/BinPipWrappers/WindowsLike/AmlToC.bat                                     |
> 3 +
>  BaseTools/BinPipWrappers/WindowsLike/BPDG.bat                                       |
> 3 +
>  BaseTools/BinPipWrappers/WindowsLike/BrotliCompress.bat
> |  55 ++
>  BaseTools/BinPipWrappers/WindowsLike/Ecc.bat                                        |   3
> +
>  BaseTools/BinPipWrappers/WindowsLike/GenDepex.bat
> |   3 +
>  BaseTools/BinPipWrappers/WindowsLike/GenFds.bat                                     |
> 3 +
>  BaseTools/BinPipWrappers/WindowsLike/GenPatchPcdTable.bat
> |   3 +
>  BaseTools/BinPipWrappers/WindowsLike/GenerateCapsule.bat
> |   1 +
>  BaseTools/BinPipWrappers/WindowsLike/PatchPcdValue.bat
> |   3 +
>  BaseTools/BinPipWrappers/WindowsLike/Pkcs7Sign.bat                                  |
> 3 +
>  BaseTools/BinPipWrappers/WindowsLike/Rsa2048Sha256GenerateKeys.bat
> |   1 +
>  BaseTools/BinPipWrappers/WindowsLike/Rsa2048Sha256Sign.bat
> |   3 +
>  BaseTools/BinPipWrappers/WindowsLike/TargetTool.bat                                 |
> 3 +
>  BaseTools/BinPipWrappers/WindowsLike/Trim.bat                                       |   3
> +
>  BaseTools/BinPipWrappers/WindowsLike/UPT.bat                                        |   3
> +
>  BaseTools/BinPipWrappers/WindowsLike/build.bat                                      |   3
> +
>  BaseTools/{BinWrappers =>
> BinPipWrappers}/WindowsLike/win_build_tools_path_env.yaml |   3 +-
>  BaseTools/BinWrappers/PosixLike/posix_path_env.yaml                                 |
> 1 +
>  BaseTools/BinWrappers/WindowsLike/win_build_tools_path_env.yaml
> |   1 +
>  BaseTools/BuildEnv                                                                  | 548 ++++++++++---
> -------
>  BaseTools/Scripts/PatchCheck.py                                                     |   1 +
>  BaseTools/toolsetup.bat                                                             |  19 +
>  pip-requirements.txt                                                                |   1 +
>  55 files changed, 1035 insertions(+), 272 deletions(-)
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/AmlToC
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/BPDG
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/Brotli
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/BrotliCompress
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/DevicePath
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/Ecc
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/EfiRom
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenCrc32
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenDepex
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenFds
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenFfs
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenFv
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenFw
>  create mode 100644
> BaseTools/BinPipWrappers/PosixLike/GenPatchPcdTable
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenSec
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/GenerateCapsule
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/LzmaCompress
>  create mode 100644
> BaseTools/BinPipWrappers/PosixLike/LzmaF86Compress
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/PatchPcdValue
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/Pkcs7Sign
>  create mode 100644
> BaseTools/BinPipWrappers/PosixLike/Rsa2048Sha256GenerateKeys
>  create mode 100644
> BaseTools/BinPipWrappers/PosixLike/Rsa2048Sha256Sign
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/Split
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/TargetTool
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/TianoCompress
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/Trim
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/UPT
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/VfrCompile
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/VolInfo
>  create mode 100644 BaseTools/BinPipWrappers/PosixLike/build
>  copy BaseTools/{BinWrappers =>
> BinPipWrappers}/PosixLike/posix_path_env.yaml (71%)
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/AmlToC.bat
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/BPDG.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/BrotliCompress.bat
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/Ecc.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/GenDepex.bat
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/GenFds.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/GenPatchPcdTable.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/GenerateCapsule.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/PatchPcdValue.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/Pkcs7Sign.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/Rsa2048Sha256GenerateKeys.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/Rsa2048Sha256Sign.bat
>  create mode 100644
> BaseTools/BinPipWrappers/WindowsLike/TargetTool.bat
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/Trim.bat
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/UPT.bat
>  create mode 100644 BaseTools/BinPipWrappers/WindowsLike/build.bat
>  copy BaseTools/{BinWrappers =>
> BinPipWrappers}/WindowsLike/win_build_tools_path_env.yaml (70%)
> 
> --
> 2.28.0.vfs.0.0
> 
> 
> 
> 
> 



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#66908): https://edk2.groups.io/g/devel/message/66908
Mute This Topic: https://groups.io/mt/77996473/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-






More information about the edk2-devel-archive mailing list