]> git.proxmox.com Git - mirror_edk2.git/commit
.pytool/Plugin/UncrustifyCheck: Add Uncrustify CI plugin
authorMichael Kubacki <michael.kubacki@microsoft.com>
Mon, 6 Dec 2021 15:22:22 +0000 (07:22 -0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Tue, 7 Dec 2021 18:51:02 +0000 (18:51 +0000)
commitdc453b51640f945233a1edb062c0c97f88c21e79
tree789a6320e10c7e280092720d05ed33d63161446a
parent7c0ad2c33810ead45b7919f8f8d0e282dae52e71
.pytool/Plugin/UncrustifyCheck: Add Uncrustify CI plugin

REF:https://bugzilla.tianocore.org/show_bug.cgi?id=3748

Adds a new CI plugin for Uncrustify. This is used to check
coding standard compliance of source code to the EDK II C Coding
Standards Specification.

An external dependency is added in the plugin directory to retrieve
the Uncrustify executable. Currently, the executable is from an edk2
fork of the application host in this repository:

https://dev.azure.com/projectmu/Uncrustify/

Note that the Uncrustify application outputs the commit ID that the
application was built from when given the --version parameter.

This ID can be mapped to the version specified in the Uncrustify CI
plugin external dependency file (uncrustify_ext_dep.yaml) such as
73.0.3 by visiting the Uncrustify edk2 fork release pipeline page
which associates the NuGet package version with the commit ID it was
built from:

https://dev.azure.com/projectmu/Uncrustify/_build

The default Uncrustify configuration files are added in the plugin
directory. Additional details are in the Readme.md file added in
the Uncrustify plugin directory.

Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Bret Barkelew <bret.barkelew@microsoft.com>
Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
Tested-by: Michael D Kinney <michael.d.kinney@intel.com>
.pytool/Plugin/UncrustifyCheck/Readme.md [new file with mode: 0644]
.pytool/Plugin/UncrustifyCheck/UncrustifyCheck.py [new file with mode: 0644]
.pytool/Plugin/UncrustifyCheck/default_file_header.txt [new file with mode: 0644]
.pytool/Plugin/UncrustifyCheck/default_function_header.txt [new file with mode: 0644]
.pytool/Plugin/UncrustifyCheck/uncrustify.cfg [new file with mode: 0644]
.pytool/Plugin/UncrustifyCheck/uncrustify_ext_dep.yaml [new file with mode: 0644]
.pytool/Plugin/UncrustifyCheck/uncrustify_plug_in.yaml [new file with mode: 0644]
.pytool/Readme.md