chore(app/angular): add additional log outputs

this should help improving the error reporting when a user has trouble using app/angular
This commit is contained in:
Kai Röder 2020-01-11 09:56:11 +01:00
parent 93ccb846f1
commit 7980eb656c

View File

@ -50,6 +50,7 @@ export function getAngularCliConfig(dirToSearch: string) {
const fname = path.join(dirToSearch, 'angular.json'); const fname = path.join(dirToSearch, 'angular.json');
if (!fs.existsSync(fname)) { if (!fs.existsSync(fname)) {
logger.error(`Could not find angular.json using ${fname}`);
return undefined; return undefined;
} }
@ -67,9 +68,26 @@ export function getLeadingAngularCliProject(ngCliConfig: any) {
throw new Error('angular.json must have projects entry.'); throw new Error('angular.json must have projects entry.');
} }
const fallbackProject = defaultProject && projects[defaultProject]; let projectName;
const firstProject = projects[Object.keys(projects)[0]]; const firstProjectName = Object.keys(projects)[0];
return projects.storybook || fallbackProject || firstProject; if (projects.storybook) {
projectName = 'storybook';
} else if (defaultProject && projects[defaultProject]) {
projectName = defaultProject;
} else if (projects[firstProjectName]) {
projectName = firstProjectName;
}
const project = projects[projectName];
if (!project) {
logger.error(`Could not find angular project '${projectName}' in angular.json.`);
} else {
logger.info(`=> Using angular project '${projectName}' for configuring Storybook.`);
}
if (!project.architect.build) {
logger.error(`architect.build is not defined for project '${projectName}'.`);
}
return project;
} }
export function getAngularCliWebpackConfigOptions(dirToSearch: Path) { export function getAngularCliWebpackConfigOptions(dirToSearch: Path) {
@ -102,7 +120,7 @@ export function getAngularCliWebpackConfigOptions(dirToSearch: Path) {
optimization: {}, optimization: {},
...projectOptions, ...projectOptions,
assets: normalizedAssets, assets: normalizedAssets,
budgets budgets,
}, },
}; };
} }