18c77b71bSopenharmony_ci<?xml version="1.0" encoding="UTF-8"?>
28c77b71bSopenharmony_ci<!-- Copyright (c) 2021 Huawei Device Co., Ltd.
38c77b71bSopenharmony_ci
48c77b71bSopenharmony_ci     Licensed under the Apache License, Version 2.0 (the "License");
58c77b71bSopenharmony_ci     you may not use this file except in compliance with the License.
68c77b71bSopenharmony_ci     You may obtain a copy of the License at
78c77b71bSopenharmony_ci
88c77b71bSopenharmony_ci          http://www.apache.org/licenses/LICENSE-2.0
98c77b71bSopenharmony_ci
108c77b71bSopenharmony_ci     Unless required by applicable law or agreed to in writing, software
118c77b71bSopenharmony_ci     distributed under the License is distributed on an "AS IS" BASIS,
128c77b71bSopenharmony_ci     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
138c77b71bSopenharmony_ci     See the License for the specific language governing permissions and
148c77b71bSopenharmony_ci     limitations under the License.
158c77b71bSopenharmony_ci
168c77b71bSopenharmony_ci    This is the configuration file template for OpenHarmony OSS Audit Tool, please copy it to your project root dir and modify it refer to OpenHarmony/tools_oat/README.
178c77b71bSopenharmony_ci    All configurations in this file will be merged to OAT-Default.xml, if you have any questions or concerns, please create issue in OpenHarmony/tools_oat and @jalenchen or chenyaxun.
188c77b71bSopenharmony_ci
198c77b71bSopenharmony_ci    licensefile:
208c77b71bSopenharmony_ci    1.If the project don't have "LICENSE" in root dir, please define all the license files in this project in , OAT will check license files according to this rule.
218c77b71bSopenharmony_ci
228c77b71bSopenharmony_ci    policylist:
238c77b71bSopenharmony_ci    1. policy: If the OAT-Default.xml policies do not meet your requirements, please add policies here.
248c77b71bSopenharmony_ci    2. policyitem: The fields type, name, path, desc is required, and the fields rule, group, filefilter is optional,the default value is:
258c77b71bSopenharmony_ci    <policyitem type="" name="" path="" desc="" rule="may" group="defaultGroup" filefilter="defaultPolicyFilter"/>
268c77b71bSopenharmony_ci    3. policyitem type:
278c77b71bSopenharmony_ci        "compatibility" is used to check license compatibility in the specified path;
288c77b71bSopenharmony_ci        "license" is used to check source license header in the specified path;
298c77b71bSopenharmony_ci        "copyright" is used to check source copyright header in the specified path;
308c77b71bSopenharmony_ci        "import" is used to check source dependency in the specified path, such as import ... ,include ...
318c77b71bSopenharmony_ci        "filetype" is used to check file type in the specified path, supported file types: archive, binary
328c77b71bSopenharmony_ci        "filename" is used to check whether the specified file exists in the specified path(projectroot means the root dir of the project), supported file names: LICENSE, README, README.OpenSource
338c77b71bSopenharmony_ci    4. policyitem name: This field is used for define the license, copyright, "*" means match all, the "!" prefix means could not match this value. For example, "!GPL" means can not use GPL license.
348c77b71bSopenharmony_ci    5. policyitem path: This field is used for define the source file scope to apply this policyitem, the "!" prefix means exclude the files. For example, "!.*/lib/.*" means files in lib dir will be exclude while process this policyitem.
358c77b71bSopenharmony_ci    6. policyitem rule and group: These two fields are used together to merge policy results. "may" policyitems in the same group means any one in this group passed, the result will be passed.
368c77b71bSopenharmony_ci    7. policyitem filefilter: Used to bind filefilter which define filter rules.
378c77b71bSopenharmony_ci    7. policyitem desc: Used to describe the reason of this policy item, committers will check this while merging the code.
388c77b71bSopenharmony_ci    8. filefilter: Filter rules, the type filename is used to filter file name, the type filepath is used to filter file path.
398c77b71bSopenharmony_ci
408c77b71bSopenharmony_ci    Note:If the text contains special characters, please escape them according to the following rules:
418c77b71bSopenharmony_ci    " == &quot;
428c77b71bSopenharmony_ci    & == &amp;
438c77b71bSopenharmony_ci    ' == &apos;
448c77b71bSopenharmony_ci    < == &lt;
458c77b71bSopenharmony_ci    > == &gt;
468c77b71bSopenharmony_ci-->
478c77b71bSopenharmony_ci
488c77b71bSopenharmony_ci<configuration>
498c77b71bSopenharmony_ci    <oatconfig>
508c77b71bSopenharmony_ci        <licensefile></licensefile>
518c77b71bSopenharmony_ci        <policylist>
528c77b71bSopenharmony_ci            <policy name="projectPolicy" desc="">
538c77b71bSopenharmony_ci                <!--policyitem type="compatibility" name="GPL-2.0+" path=".*" desc="Process that runs independently, invoked by the X process."/-->
548c77b71bSopenharmony_ci                <policyitem type="license" name="LGPL" path=".*" desc="Dynamically linked by module X"/>
558c77b71bSopenharmony_ci                <!--policyitem type="copyright" name="xxx" path=".*" rule="may" group="defaultGroup" filefilter="copyrightPolicyFilter" desc="Developed by X Company"/-->
568c77b71bSopenharmony_ci            </policy>
578c77b71bSopenharmony_ci        </policylist>
588c77b71bSopenharmony_ci
598c77b71bSopenharmony_ci        <filefilterlist>
608c77b71bSopenharmony_ci            <filefilter name="defaultPolicyFilter" desc="Filters for compatibility,license header policies">
618c77b71bSopenharmony_ci                <filteritem type="filepath" name="src/main/java/ohos/oat/analysis/headermatcher/.*"
628c77b71bSopenharmony_ci                        desc="License matcher rules, not license header"/>
638c77b71bSopenharmony_ci            </filefilter>
648c77b71bSopenharmony_ci            <filefilter name="copyrightPolicyFilter" desc="Filters for copyright header policies">
658c77b71bSopenharmony_ci            </filefilter>
668c77b71bSopenharmony_ci            <filefilter name="licenseFileNamePolicyFilter" desc="Filters for LICENSE file policies">
678c77b71bSopenharmony_ci            </filefilter>
688c77b71bSopenharmony_ci            <filefilter name="readmeFileNamePolicyFilter" desc="Filters for README file policies">
698c77b71bSopenharmony_ci            </filefilter>
708c77b71bSopenharmony_ci            <filefilter name="readmeOpenSourcefileNamePolicyFilter" desc="Filters for README.OpenSource file policies">
718c77b71bSopenharmony_ci            </filefilter>
728c77b71bSopenharmony_ci            <filefilter name="binaryFileTypePolicyFilter" desc="Filters for binary file policies">
738c77b71bSopenharmony_ci                <filteritem type="filepath" name="figures/媒体子系统架构(蓝色虚线框是media_lite).png" desc="self developed image"/>
748c77b71bSopenharmony_ci                <filteritem type="filepath" name="figures/position-of-this-repository-(in-the-dotted-blue-box)-in-the-multimedia-subsystem.png" desc="self developed image"/>
758c77b71bSopenharmony_ci            </filefilter>
768c77b71bSopenharmony_ci        </filefilterlist>
778c77b71bSopenharmony_ci    </oatconfig>
788c77b71bSopenharmony_ci</configuration>