fromConfig static method
Future<MelosWorkspace>
fromConfig(
- MelosWorkspaceConfig workspaceConfig, {
- GlobalOptions? global,
- PackageFilters? packageFilters,
- required MelosLogger logger,
Build a MelosWorkspace from a workspace configuration.
Implementation
static Future<MelosWorkspace> fromConfig(
MelosWorkspaceConfig workspaceConfig, {
GlobalOptions? global,
PackageFilters? packageFilters,
required MelosLogger logger,
}) async {
final allPackages = await PackageMap.resolvePackages(
workspacePath: workspaceConfig.path,
packages: workspaceConfig.packages,
ignore: workspaceConfig.ignore,
logger: logger,
);
final dependencyOverridePackages = await PackageMap.resolvePackages(
workspacePath: workspaceConfig.path,
packages: workspaceConfig.commands.bootstrap.dependencyOverridePaths,
ignore: const [],
logger: logger,
);
final filteredPackages = await allPackages.applyFilters(packageFilters);
return MelosWorkspace(
name: workspaceConfig.name,
path: workspaceConfig.path,
config: workspaceConfig,
allPackages: allPackages,
logger: logger,
filteredPackages: filteredPackages,
dependencyOverridePackages: dependencyOverridePackages,
sdkPath: resolveSdkPath(
configSdkPath: workspaceConfig.sdkPath,
envSdkPath:
currentPlatform.environment[EnvironmentVariableKey.melosSdkPath],
commandSdkPath: global?.sdkPath,
workspacePath: workspaceConfig.path,
),
);
}