build(deps): add Jiguang SDK repositories and CMake job limit plugin
Add Jiguang Maven repository (developer.jiguang.cn) to dependency resolution management for JPush SDK integration. Integrate new Expo config plugins for CMake job limiting and JCore patching. - Add jiguang maven repo to dependencyResolutionManagement and all buildscript repositories - Create withCmakeJobLimit plugin to set cmake job limits in gradle properties - Create withJcorePatch plugin for JCore SDK configuration - Increase CMAKE_BUILD_PARALLEL_LEVEL from 4 to 8 for faster native builds - Add gradle HTTP timeout settings (30s connection/socket timeout) - Remove npmmirror registry from npmrc and CI workflows (use default npm registry) - Downgrade upload-artifact action from v4 to v3 for compatibility - Remove docker layer caching for frontend-web build
This commit is contained in:
@@ -22,6 +22,35 @@ const withHuaweiPush = (config, options = {}) => {
|
||||
// is applied via buildscript classpath in build.gradle with the apms-plugin excluded.
|
||||
if (!contents.includes('developer.huawei.com/repo')) {
|
||||
const repoLine = ` maven { url 'https://developer.huawei.com/repo/' }`;
|
||||
const jigLine = ` maven { url 'https://developer.jiguang.cn/maven' }`;
|
||||
const hasPluginManagement = contents.includes('pluginManagement');
|
||||
const hasRepositoriesInPM = /pluginManagement\s*\{[\s\S]*?repositories\s*\{/.test(contents);
|
||||
|
||||
if (hasRepositoriesInPM) {
|
||||
config.modResults.contents = contents.replace(
|
||||
/(pluginManagement\s*\{[\s\S]*?repositories\s*\{)/,
|
||||
`$1\n ${repoLine}\n ${jigLine}`
|
||||
);
|
||||
} else if (hasPluginManagement) {
|
||||
config.modResults.contents = contents.replace(
|
||||
/(pluginManagement\s*\{)/,
|
||||
`$1\n repositories {\n gradlePluginPortal()\n google()\n mavenCentral()\n ${repoLine}\n ${jigLine}\n }`
|
||||
);
|
||||
} else {
|
||||
config.modResults.contents =
|
||||
`pluginManagement {\n repositories {\n ${repoLine}\n ${jigLine}\n }\n}\n\n` +
|
||||
config.modResults.contents;
|
||||
}
|
||||
}
|
||||
|
||||
// Add Jiguang Maven repo for dependency resolution (jcore/jpush SDK)
|
||||
if (!contents.includes('developer.jiguang.cn/maven')) {
|
||||
const depMgmtPattern = /dependencyResolutionManagement\s*\{[\s\S]*?repositories\s*\{/;
|
||||
if (depMgmtPattern.test(config.modResults.contents)) {
|
||||
config.modResults.contents = config.modResults.contents.replace(
|
||||
depMgmtPattern,
|
||||
` if (!contents.includes('developer.huawei.com/repo')) {
|
||||
const repoLine = ` maven { url 'https://developer.huawei.com/repo/' }`;
|
||||
const hasPluginManagement = contents.includes('pluginManagement');
|
||||
const hasRepositoriesInPM = /pluginManagement\s*\{[\s\S]*?repositories\s*\{/.test(contents);
|
||||
|
||||
@@ -51,6 +80,9 @@ const withHuaweiPush = (config, options = {}) => {
|
||||
`$&\n maven { url 'https://developer.huawei.com/repo/' }`
|
||||
);
|
||||
}
|
||||
}\n maven { url 'https://developer.jiguang.cn/maven' }`
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
return config;
|
||||
|
||||
Reference in New Issue
Block a user