diff --git a/packages/angular/src/generators/ng-add/migrate-from-angular-cli.spec.ts b/packages/angular/src/generators/ng-add/migrate-from-angular-cli.spec.ts index 52c7adf3578945..ec24e7c690c65e 100644 --- a/packages/angular/src/generators/ng-add/migrate-from-angular-cli.spec.ts +++ b/packages/angular/src/generators/ng-add/migrate-from-angular-cli.spec.ts @@ -241,6 +241,13 @@ describe('workspace', () => { ).not.toBeDefined(); }); + it('should set the default project correctly', async () => { + await migrateFromAngularCli(tree, {}); + expect(readJson(tree, 'nx.json').defaultProject).toMatchInlineSnapshot( + `"myApp"` + ); + }); + it('should create nx.json', async () => { await migrateFromAngularCli(tree, { defaultBase: 'main' }); expect(readJson(tree, 'nx.json')).toMatchSnapshot(); diff --git a/packages/angular/src/generators/ng-add/migrate-from-angular-cli.ts b/packages/angular/src/generators/ng-add/migrate-from-angular-cli.ts index 9d30fea4f6f0fa..55a91be396be0f 100755 --- a/packages/angular/src/generators/ng-add/migrate-from-angular-cli.ts +++ b/packages/angular/src/generators/ng-add/migrate-from-angular-cli.ts @@ -3,8 +3,10 @@ import { formatFiles, installPackagesTask, readJson, + readWorkspaceConfiguration, Tree, updateJson, + updateWorkspaceConfiguration, } from '@nrwl/devkit'; import { nxVersion } from '../../utils/versions'; import type { GeneratorOptions } from './schema'; @@ -36,6 +38,10 @@ export async function migrateFromAngularCli( const projects = getAllProjects(tree); const options = normalizeOptions(tree, rawOptions, projects); + const defaultProject = projects.apps.find((app) => + app.config.sourceRoot?.startsWith('src') + ); + if (options.preserveAngularCliLayout) { addDependenciesToPackageJson( tree, @@ -103,6 +109,14 @@ export async function migrateFromAngularCli( await formatFiles(tree); } + if (defaultProject) { + const workspaceConfig = readWorkspaceConfiguration(tree); + updateWorkspaceConfiguration(tree, { + ...workspaceConfig, + defaultProject: defaultProject.name, + }); + } + if (!options.skipInstall) { return () => { installPackagesTask(tree);