1/* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import { buildListProject } from "./buildListProject"; 17import { PROJECT_PATH } from "config.dev"; 18 19function getProjectPath(PRId: number, modifyPath: Array<string>) { 20 let projectPath = []; 21 const fs = require('fs'); 22 modifyPath.forEach((item: string) => { 23 let iteraterArray = item.split('/'); 24 let pathString = ''; 25 for (let i = 0; i < iteraterArray.length; i++) { 26 if (!fs.existsSync(PROJECT_PATH + pathString + '/build-profile.json5')) { 27 pathString = `${pathString}/${iteraterArray[i]}`; 28 } else if (!projectPath.includes(pathString.substring(1))) { 29 pathString = pathString.substring(1); 30 projectPath.push(pathString); 31 break; 32 }; 33 }; 34 }); 35 console.log('PR修改文件的项目路径是: '); 36 console.log(projectPath); 37 return buildListProject(PRId, projectPath); 38} 39 40export { getProjectPath };