Skip to content

Commit 16385cd

Browse files
joefiorinistefanpenner
authored andcommitted
Remove Brocfile from blueprint
Now that we have internal support for preprocessors, we can remove the Brocfile from the generated build, thus addressing #75 & #96. As people try it out and open issues for things they wish were more configurable, I think we'll start to get a better idea for what we need to include.
1 parent 8080838 commit 16385cd

File tree

5 files changed

+28
-22
lines changed

5 files changed

+28
-22
lines changed
Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
/* global require, module */
2-
var filterTemplates = require('broccoli-template');
2+
var requireLocal = require('./lib/utilities/require-local');
33
var uglifyJavaScript = require('broccoli-uglify-js');
44
var compileES6 = require('broccoli-es6-concatenator');
5-
var p = require('ember-cli/lib/preprocessors');
5+
var p = require('./lib/preprocessors');
66
var pickFiles = require('broccoli-static-compiler');
77
var env = require('broccoli-env').getEnv();
88

9+
var localApp = requireLocal('../package');
10+
911
var preprocessCss = p.preprocessCss;
1012
var preprocessTemplates = p.preprocessTemplates;
1113
var preprocessJs = p.preprocessJs;
@@ -20,20 +22,20 @@ module.exports = function (broccoli) {
2022

2123
app = pickFiles(app, {
2224
srcDir: '/',
23-
destDir: '<%= modulePrefix %>/'
25+
destDir: localApp.name + '/'
2426
});
2527

2628
app = preprocessTemplates(app);
2729

2830
config = pickFiles(config, {
2931
srcDir: '/',
3032
files: ['environment.*', 'environments/' + env + '.*'],
31-
destDir: '<%= modulePrefix %>/config'
33+
destDir: localApp.name + '/config'
3234
});
3335

3436
tests = pickFiles(tests, {
3537
srcDir: '/',
36-
destDir: '<%= modulePrefix %>/tests'
38+
destDir: localApp.name + '/tests'
3739
});
3840

3941
tests = preprocessTemplates(tests);
@@ -60,11 +62,11 @@ module.exports = function (broccoli) {
6062
'ember/resolver'
6163
],
6264
inputFiles: [
63-
'<%= modulePrefix %>/**/*.js'
65+
localApp.name + '/**/*.js'
6466
],
6567
legacyFilesToAppend: [
66-
'<%= modulePrefix %>/config/environment.js',
67-
'<%= modulePrefix %>/config/environments/' + env + '.js',
68+
localApp.name + '/config/environment.js',
69+
localApp.name + '/config/environments/' + env + '.js',
6870
'jquery.js',
6971
'handlebars.js',
7072
'ember.js',
@@ -77,7 +79,7 @@ module.exports = function (broccoli) {
7779
outputFile: '/assets/app.js'
7880
});
7981

80-
styles = preprocessCss(sourceTrees, '<%= modulePrefix %>/styles', '/assets');
82+
styles = preprocessCss(sourceTrees, localApp.name + '/styles', '/assets');
8183

8284
if (env === 'production') {
8385
applicationJs = uglifyJavaScript(applicationJs, {

lib/adapters/broccoli/build.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,12 @@ var fs = require('fs');
55
var RSVP = require('rsvp');
66
var ncp = require('ncp');
77
var rimraf = require('rimraf');
8+
var builder = require('./builder');
89

910
ncp.limit = 1;
1011

11-
function getBuilder () {
12-
var tree = broccoli.loadBrocfile();
13-
return new broccoli.Builder(tree);
14-
}
15-
1612
module.exports = function build(options) {
17-
return getBuilder().build()
13+
return builder(broccoli, options.appRoot).build()
1814
.then(function (dir) {
1915
var outputDir = options.outputPath || 'dist/';
2016

lib/adapters/broccoli/builder.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
module.exports = function getBuilder(broccoli, appRoot) {
2+
var brocfile = require('../../../Brocfile');
3+
4+
process.chdir(appRoot);
5+
6+
var tree = brocfile(broccoli);
7+
8+
if(Array.isArray(tree)) {
9+
tree = new broccoli.MergedTree(tree);
10+
}
11+
12+
return new broccoli.Builder(tree);
13+
}

lib/adapters/broccoli/server.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,11 @@
33
var broccoli = require('broccoli');
44
var Promise = require('rsvp').Promise;
55
var Server = require('../../server');
6+
var builder = require('./builder');
67
var Watcher = require('../../../node_modules/broccoli/lib/watcher');
78

8-
function getBuilder () {
9-
var tree = broccoli.loadBrocfile();
10-
return new broccoli.Builder(tree);
11-
}
12-
139
module.exports = function server(options) {
14-
var watcher = new Watcher(getBuilder());
10+
var watcher = new Watcher(builder(broccoli, options.appRoot));
1511

1612
options.watcher = watcher;
1713

lib/preprocessors/javascript.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ module.exports.supportedPlugins = {
88
};
99

1010
module.exports.coffee = function(tree, inputPath, outputPath, options) {
11-
console.log('compiling coffeescript to: ', outputPath);
1211
var compiler = requireLocal('broccoli-coffee');
1312
options = options || {};
1413
options.bare = true;

0 commit comments

Comments
 (0)