Skip to content

Commit

Permalink
chore(dev): migrate build to @angular/cli (for library)
Browse files Browse the repository at this point in the history
  • Loading branch information
benelliott committed Nov 5, 2018
1 parent 842ed78 commit 561bc11
Show file tree
Hide file tree
Showing 108 changed files with 6,677 additions and 28,138 deletions.
12 changes: 4 additions & 8 deletions .gitignore
Expand Up @@ -2,13 +2,13 @@

# compiled output
/dist
/dist-server
/tmp
/out-tsc
src/lib/dist
src/lib/yarn-error.log
/projects/spectator/dist

# dependencies
/node_modules

# IDEs and editors
/.idea
.project
Expand All @@ -17,7 +17,7 @@ src/lib/yarn-error.log
*.launch
.settings/
*.sublime-workspace
src/lib/node_modules

# IDE - VSCode
.vscode/*
!.vscode/settings.json
Expand All @@ -35,10 +35,6 @@ yarn-error.log
testem.log
/typings

# e2e
/e2e/*.js
/e2e/*.map

# System Files
.DS_Store
Thumbs.db
2 changes: 0 additions & 2 deletions .npmignore

This file was deleted.

File renamed without changes.
108 changes: 75 additions & 33 deletions angular.json
Expand Up @@ -3,30 +3,42 @@
"version": 1,
"newProjectRoot": "projects",
"projects": {
"spectator": {
"spectator-app": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "app",
"schematics": {
"@schematics/angular:component": {
"styleext": "scss"
}
},
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist",
"outputPath": "dist/spectator-app",
"index": "src/index.html",
"main": "src/main.ts",
"tsConfig": "src/tsconfig.app.json",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.app.json",
"assets": [
"src/assets",
"src/favicon.ico"
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
"src/styles.scss"
],
"scripts": []
},
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
Expand All @@ -36,10 +48,11 @@
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true,
"fileReplacements": [
"budgets": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
"type": "initial",
"maximumWarning": "2mb",
"maximumError": "5mb"
}
]
}
Expand All @@ -48,34 +61,34 @@
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "spectator:build"
"browserTarget": "spectator-app:build"
},
"configurations": {
"production": {
"browserTarget": "spectator:build:production"
"browserTarget": "spectator-app:build:production"
}
}
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "spectator:build"
"browserTarget": "spectator-app:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/test.ts",
"karmaConfig": "./karma.conf.js",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.spec.json",
"scripts": [],
"karmaConfig": "src/karma.conf.js",
"styles": [
"src/styles.css"
"src/styles.scss"
],
"scripts": [],
"assets": [
"src/assets",
"src/favicon.ico"
"src/favicon.ico",
"src/assets"
]
}
},
Expand All @@ -93,23 +106,61 @@
}
}
},
"spectator-e2e": {
"root": "",
"sourceRoot": "",
"spectator-app-e2e": {
"root": "e2e/",
"projectType": "application",
"prefix": "",
"architect": {
"e2e": {
"builder": "@angular-devkit/build-angular:protractor",
"options": {
"protractorConfig": "./protractor.conf.js",
"devServerTarget": "spectator:serve"
"protractorConfig": "e2e/protractor.conf.js",
"devServerTarget": "spectator-app:serve"
},
"configurations": {
"production": {
"devServerTarget": "spectator-app:serve:production"
}
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": "e2e/tsconfig.e2e.json",
"exclude": [
"**/node_modules/**"
]
}
}
}
},
"spectator": {
"root": "projects/spectator",
"sourceRoot": "projects/spectator/src",
"projectType": "library",
"prefix": "lib",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "projects/spectator/tsconfig.lib.json",
"project": "projects/spectator/ng-package.json"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "projects/spectator/src/test.ts",
"tsConfig": "projects/spectator/tsconfig.spec.json",
"karmaConfig": "projects/spectator/karma.conf.js"
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"e2e/tsconfig.e2e.json"
"projects/spectator/tsconfig.lib.json",
"projects/spectator/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
Expand All @@ -119,14 +170,5 @@
}
}
},
"defaultProject": "spectator",
"schematics": {
"@schematics/angular:component": {
"prefix": "app",
"styleext": "css"
},
"@schematics/angular:directive": {
"prefix": "app"
}
}
"defaultProject": "spectator-app"
}
6 changes: 3 additions & 3 deletions protractor.conf.js → e2e/protractor.conf.js
Expand Up @@ -6,7 +6,7 @@ const { SpecReporter } = require('jasmine-spec-reporter');
exports.config = {
allScriptsTimeout: 11000,
specs: [
'./e2e/**/*.e2e-spec.ts'
'./src/**/*.e2e-spec.ts'
],
capabilities: {
'browserName': 'chrome'
Expand All @@ -21,8 +21,8 @@ exports.config = {
},
onPrepare() {
require('ts-node').register({
project: 'e2e/tsconfig.e2e.json'
project: require('path').join(__dirname, './tsconfig.e2e.json')
});
jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
}
};
};
4 changes: 2 additions & 2 deletions e2e/app.e2e-spec.ts → e2e/src/app.e2e-spec.ts
@@ -1,6 +1,6 @@
import { AppPage } from './app.po';

describe('testico App', () => {
describe('workspace-project App', () => {
let page: AppPage;

beforeEach(() => {
Expand All @@ -9,6 +9,6 @@ describe('testico App', () => {

it('should display welcome message', () => {
page.navigateTo();
expect(page.getParagraphText()).toEqual('Welcome to app!');
expect(page.getParagraphText()).toEqual('Welcome to spectator-app!');
});
});
File renamed without changes.
5 changes: 2 additions & 3 deletions e2e/tsconfig.e2e.json
@@ -1,8 +1,7 @@
{
"extends": "../tsconfig.json",
"compilerOptions": {
"outDir": "../out-tsc/e2e",
"baseUrl": "./",
"outDir": "../out-tsc/app",
"module": "commonjs",
"target": "es5",
"types": [
Expand All @@ -11,4 +10,4 @@
"node"
]
}
}
}

0 comments on commit 561bc11

Please sign in to comment.