public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Zhang, Shenglei" <shenglei.zhang@intel.com>
To: devel@edk2.groups.io
Cc: Bob Feng <bob.c.feng@intel.com>,
	Bret Barkelew <Bret.Barkelew@microsoft.com>,
	Michael D Kinney <michael.d.kinney@intel.com>,
	Liming Gao <liming.gao@intel.com>,
	Sean Brogan <sean.brogan@microsoft.com>
Subject: [PATCH v3 00/17] Add a pipline to check Ecc issues for edk2 on open ci
Date: Wed, 10 Jun 2020 16:14:20 +0800	[thread overview]
Message-ID: <20200610081437.61352-1-shenglei.zhang@intel.com> (raw)

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 4027 bytes --]

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2606
As planed we will enable Ecc check for edk2 on open ci. And they are
ready now, but these are V3 series. So I expect that contributors in
edk2 community can try using this script when reviewing. And I appreciate
receiving feedback and comments if someone find errors or false positive
issues.

I created a pipline of EccCheck for my forked edk2.
https://dev.azure.com/shengleizhang/shengleizhang/_build?definitionId=10&_a=summary

The patch series are big, so the commits are also pushed into my forked tree.
https://github.com/shenglei10/edk2/commits/ECC

Patches
1/17: EccCheck.py is a tool to report Ecc issues for commits. It can be run
     on azure servers for open ci, or locally. Its usage is like
     PatchCheck.py.
2/17: It's a lib necessary for py3 to run Ecc on azure servers. For local
     use, we need to type command
     "py -3 -m pip install antlr4-python3-runtime==4.7.1" first.
3/17: Windows-EccCheck.yml is a yaml file to configure the newly added
     pipline. Azure uses this to create a pipline.
4/17~17/17: We consider some cases that will report out Ecc issues but they won't
     be fixed, like submodule and industry standard related things. So we
     add two configuration fields "Exception" and "IgnoreFiles" for people
     to use. These patches add configuration in yaml files for Ecc check.

Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>

v2: Update 1/17, fix the bug that the script can't hanlde multiple commits.

v3: Update 1/17, set the only workalbe workspace is edk2 root directory.
    Update 2/17, designate the version of antlr4 is 4.7.1.
    Add 4/17~17/17.

Shenglei Zhang (17):
  BaseTools/Scripts: Add EccCheck.py
  pip-requirements.txt: Add Ecc required lib
  .azurepiplines: Add a pipline to check ECC issues for commits
  MdeModulePkg/MdeModulePkg.ci.yaml: Add configuration for Ecc check
  ArmVirtPkg/ArmVirtPkg.ci.yaml: Add configuration for Ecc check
  CryptoPkg/CryptoPkg.ci.yaml: Add configuration for Ecc check
  EmulatorPkg/EmulatorPkg.ci.yaml: Add configuration for Ecc check
  FatPkg/FatPkg.ci.yaml: Add configuration for Ecc check
  FmpDevicePkg/FmpDevicePkg.ci.yaml: Add configuration for Ecc check
  MdePkg/MdePkg.ci.yaml: Add configuration for Ecc check
  NetworkPkg/NetworkPkg.ci.yaml: Add configuration for Ecc check
  OvmfPkg/OvmfPkg.ci.yaml: Add configuration for Ecc check
  PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml: Add configuration for Ecc check
  SecurityPkg/SecurityPkg.ci.yaml: Add configuration for Ecc check
  ShellPkg/ShellPkg.ci.yaml: Add configuration for Ecc check
  UefiCpuPkg/UefiCpuPkg.ci.yaml: Add configuration for Ecc check
  UnitTestFrameworkPkg: Add configuration for Ecc check in yaml file

 .azurepipelines/Windows-EccCheck.yml          |  38 ++
 ArmVirtPkg/ArmVirtPkg.ci.yaml                 |  10 +
 BaseTools/Scripts/EccCheck.py                 | 437 ++++++++++++++++++
 CryptoPkg/CryptoPkg.ci.yaml                   |  10 +
 EmulatorPkg/EmulatorPkg.ci.yaml               |  10 +
 FatPkg/FatPkg.ci.yaml                         |  10 +
 FmpDevicePkg/FmpDevicePkg.ci.yaml             |  10 +
 MdeModulePkg/MdeModulePkg.ci.yaml             |  10 +
 MdePkg/MdePkg.ci.yaml                         |  10 +
 NetworkPkg/NetworkPkg.ci.yaml                 |  10 +
 OvmfPkg/OvmfPkg.ci.yaml                       |  10 +
 PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml         |  10 +
 SecurityPkg/SecurityPkg.ci.yaml               |  10 +
 ShellPkg/ShellPkg.ci.yaml                     |  10 +
 UefiCpuPkg/UefiCpuPkg.ci.yaml                 |  10 +
 .../UnitTestFrameworkPkg.ci.yaml              |  10 +
 pip-requirements.txt                          |   1 +
 17 files changed, 616 insertions(+)
 create mode 100644 .azurepipelines/Windows-EccCheck.yml
 create mode 100644 BaseTools/Scripts/EccCheck.py

-- 
2.18.0.windows.1


             reply	other threads:[~2020-06-10  8:15 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-10  8:14 Zhang, Shenglei [this message]
2020-06-10  8:14 ` [PATCH v3 01/17] BaseTools/Scripts: Add EccCheck.py Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 02/17] pip-requirements.txt: Add Ecc required lib Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 03/17] .azurepiplines: Add a pipline to check ECC issues for commits Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 04/17] MdeModulePkg/MdeModulePkg.ci.yaml: Add configuration for Ecc check Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 05/17] ArmVirtPkg/ArmVirtPkg.ci.yaml: " Zhang, Shenglei
2020-06-11 14:24   ` Laszlo Ersek
2020-06-10  8:14 ` [PATCH v3 06/17] CryptoPkg/CryptoPkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 07/17] EmulatorPkg/EmulatorPkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 08/17] FatPkg/FatPkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 09/17] FmpDevicePkg/FmpDevicePkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 10/17] MdePkg/MdePkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 11/17] NetworkPkg/NetworkPkg.ci.yaml: " Zhang, Shenglei
2020-06-10 12:31   ` Maciej Rabeda
2020-06-10  8:14 ` [PATCH v3 12/17] OvmfPkg/OvmfPkg.ci.yaml: " Zhang, Shenglei
2020-06-11 14:24   ` Laszlo Ersek
2020-06-10  8:14 ` [PATCH v3 13/17] PcAtChipsetPkg/PcAtChipsetPkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 14/17] SecurityPkg/SecurityPkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 15/17] ShellPkg/ShellPkg.ci.yaml: " Zhang, Shenglei
2020-06-10  8:14 ` [PATCH v3 16/17] UefiCpuPkg/UefiCpuPkg.ci.yaml: " Zhang, Shenglei
2020-06-11 14:24   ` Laszlo Ersek
2020-06-10  8:14 ` [PATCH v3 17/17] UnitTestFrameworkPkg: Add configuration for Ecc check in yaml file Zhang, Shenglei
  -- strict thread matches above, loose matches on Subject: below --
2020-06-10  8:46 [PATCH v3 00/17] Add a pipline to check Ecc issues for edk2 on open ci Zhang, Shenglei

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200610081437.61352-1-shenglei.zhang@intel.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox