summaryrefslogtreecommitdiffstats
path: root/SecurityPkg/SecurityPkg.ci.yaml
blob: 2a4cbd379566e88a7ef47136845d5a9f25e2e6f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
## @file
# CI configuration for SecurityPkg
#
# Copyright (c) Microsoft Corporation
# Copyright (c) 2020 - 2024, Intel Corporation. All rights reserved.<BR>
# SPDX-License-Identifier: BSD-2-Clause-Patent
##
{
    "LicenseCheck": {
        "IgnoreFiles": [
            "DeviceSecurity/SpdmLib/Include",
        ]
    },
    "EccCheck": {
        ## Exception sample looks like below:
        ## "ExceptionList": [
        ##     "<ErrorID>", "<KeyWord>"
        ## ]
        "ExceptionList": [
            "8005", "gRT",
            "8001", "DxeTpm2MeasureBootLibUnitTestMain",
            "8001", "DxeTpmMeasureBootLibUnitTestMain"
        ],
        ## Both file path and directory path are accepted.
        "IgnoreFiles": [
            "Library/TcgStorageCoreLib/TcgStorageUtil.c",
            "Library/TcgStorageCoreLib/TcgStorageCore.c",
            "Library/Tpm2CommandLib/Tpm2NVStorage.c",
            "DeviceSecurity/SpdmLib/Include",
            "DeviceSecurity/SpdmLib/libspdm",
            "DeviceSecurity/OsStub"
        ]
    },
    "CompilerPlugin": {
        "DscPath": "SecurityPkg.dsc"
    },
    ## options defined .pytool/Plugin/HostUnitTestCompilerPlugin
    "HostUnitTestCompilerPlugin": {
        "DscPath": "Test/SecurityPkgHostTest.dsc"
    },
    "CharEncodingCheck": {
        "IgnoreFiles": []
    },
    "DependencyCheck": {
        "AcceptableDependencies": [
            "MdePkg/MdePkg.dec",
            "MdeModulePkg/MdeModulePkg.dec",
            "UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec",
            "SecurityPkg/SecurityPkg.dec",
            "StandaloneMmPkg/StandaloneMmPkg.dec",
            "CryptoPkg/CryptoPkg.dec"
        ],
        # For host based unit tests
        "AcceptableDependencies-HOST_APPLICATION":[],
        # For UEFI shell based apps
        "AcceptableDependencies-UEFI_APPLICATION":[],
        "IgnoreInf": []
    },
    "DscCompleteCheck": {
        "DscPath": "SecurityPkg.dsc",
        "IgnoreInf": []
    },
    ## options defined .pytool/Plugin/HostUnitTestDscCompleteCheck
    "HostUnitTestDscCompleteCheck": {
        "IgnoreInf": [""],
        "DscPath": "Test/SecurityPkgHostTest.dsc"
    },
    "GuidCheck": {
        "IgnoreGuidName": [],
        "IgnoreGuidValue": ["00000000-0000-0000-0000-000000000000"],
        "IgnoreFoldersAndFiles": [],
        "IgnoreDuplicates": [
            "Tpm2InstanceLibDTpm=gEfiTpmDeviceInstanceTpm20DtpmGuid", #  by design
        ]
    },
    "LibraryClassCheck": {
        "IgnoreHeaderFile": [
            "DeviceSecurity/SpdmLib/Include/library",
            "DeviceSecurity/SpdmLib/libspdm/include/library",
        ],
        "skip": True
    },

    ## options defined ci/Plugin/SpellCheck
    "SpellCheck": {
        "AuditOnly": True,           # Fails test but run in AuditOnly mode to collect log
        "ExtendWords": [             # words to extend to the dictionary for this package
            "shortformed", # tpm acpi
            "autodetect",
            "blocksid",
            "comid",
            "cpinsidpin", #OpalSScV2
            "ecdsa", # TPM
            "ecschnorr", # TPM
            "eisaid", # ACPI
            "harddisk",
            "hashall",
            "hashto",
            "kek's",
            "lfanew", # PE/COFF
            "pcrindex",
            "pkglength",
            "ppuser",
            "preos",
            "stclear",
            "toctou",
            "tpm's",
            "tpmcmdbuflength",
            "tpmcommlib",
            "tpmnvvaluelength",
            "wrlocked",
            "xored"
        ],
        "IgnoreStandardPaths": [],   # Standard Plugin defined paths that should be ignore
        "AdditionalIncludePaths": [] # Additional paths to spell check (wildcards supported)
    },

    "Defines": {
        "BLD_*_CONTINUOUS_INTEGRATION": "TRUE",
    },

    "DebugMacroCheck": {
      "StringSubstitutions": {
          # SecurityPkg/IntelTdx/TdTcg2Dxe/TdTcg2Dxe.c
          # Reason: Acknowledging use of two format specifiers in string with one argument
          #         Replace ternary operator in debug string with single specifier
          'Index == COLUME_SIZE/2 ? " | %02x" : " %02x"': "%d"
      }
    }
}