diff --git a/packages/angular_devkit/build_angular/src/dev-server/index.ts b/packages/angular_devkit/build_angular/src/dev-server/index.ts index b925b71a62..893e04e006 100644 --- a/packages/angular_devkit/build_angular/src/dev-server/index.ts +++ b/packages/angular_devkit/build_angular/src/dev-server/index.ts @@ -227,6 +227,7 @@ export class DevServerBuilder implements Builder { disableHostCheck: options.disableHostCheck, publicPath: servePath, hot: options.hmr, + contentBase: false, }; if (options.ssl) { diff --git a/packages/angular_devkit/build_angular/test/dev-server/works_spec_large.ts b/packages/angular_devkit/build_angular/test/dev-server/works_spec_large.ts index 6c62967f00..f6984ed88b 100644 --- a/packages/angular_devkit/build_angular/test/dev-server/works_spec_large.ts +++ b/packages/angular_devkit/build_angular/test/dev-server/works_spec_large.ts @@ -34,4 +34,16 @@ describe('Dev Server Builder', () => { take(1), ).toPromise().then(done, done.fail); }, 30000); + + it(`doesn't serve files on the cwd directly`, async () => { + const res = await runTargetSpec(host, devServerTargetSpec).pipe( + tap((buildEvent) => expect(buildEvent.success).toBe(true)), + // When webpack-dev-server doesn't have `contentBase: false`, this will serve the repo README. + concatMap(() => from(request('http://localhost:4200/README.md'))), + take(1), + ).toPromise(); + + expect(res).not.toContain('This file is automatically generated during release.'); + expect(res).toContain('HelloWorldApp'); + }); });