Skip to content

Commit 441a239

Browse files
floriangossebenvinegar
authored andcommitted
add browserify task to build singel plugins
1 parent 17c029c commit 441a239

File tree

1 file changed

+40
-8
lines changed

1 file changed

+40
-8
lines changed

Gruntfile.js

Lines changed: 40 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,25 @@ module.exports = function(grunt) {
6969
return all;
7070
};
7171

72-
var pluginCombinations = combine(grunt.file.expand('plugins/*.js'));
72+
var plugins = grunt.file.expand('plugins/*.js');
73+
74+
var cleanedPlugins = plugins.filter(function (plugin) {
75+
var pluginName = path.basename(plugin, '.js');
76+
77+
return excludedPlugins.indexOf(pluginName) === -1;
78+
});
79+
80+
var pluginSingleFiles = cleanedPlugins.map(function (plugin) {
81+
var filename = path.basename(plugin);
82+
83+
var file = {};
84+
file.src = plugin;
85+
file.dest = path.join('build', 'plugin', filename);
86+
87+
return file;
88+
});
89+
90+
var pluginCombinations = combine(plugins);
7391
var pluginConcatFiles = _.reduce(pluginCombinations, function (dict, comb) {
7492
var key = _.map(comb, function (plugin) {
7593
return path.basename(plugin, '.js');
@@ -103,6 +121,18 @@ module.exports = function(grunt) {
103121
dest: 'build/raven.js'
104122
},
105123
plugins: {
124+
files: pluginSingleFiles,
125+
options: {
126+
external: [
127+
'../src/singleton'
128+
],
129+
transform: [
130+
[ versionify ],
131+
[ new AddPluginBrowserifyTransformer() ]
132+
]
133+
}
134+
},
135+
'plugins-combined': {
106136
files: pluginConcatFiles,
107137
options: {
108138
transform: [
@@ -161,11 +191,11 @@ module.exports = function(grunt) {
161191
options: {
162192
mocha: {
163193
ignoreLeaks: true,
164-
grep: grunt.option('grep')
194+
grep: grunt.option('grep')
165195
},
166-
log: true,
196+
log: true,
167197
reporter: 'Dot',
168-
run: true
198+
run: true
169199
},
170200
unit: {
171201
src: ['test/index.html'],
@@ -179,7 +209,7 @@ module.exports = function(grunt) {
179209

180210
release: {
181211
options: {
182-
npm: false,
212+
npm: false,
183213
commitMessage: 'Release <%= version %>'
184214
}
185215
},
@@ -315,11 +345,13 @@ module.exports = function(grunt) {
315345
grunt.registerTask('_prep', ['clean', 'gitinfo', 'version']);
316346
grunt.registerTask('browserify.core', ['_prep', 'browserify:core']);
317347
grunt.registerTask('browserify.plugins', ['_prep', 'browserify:plugins']);
348+
grunt.registerTask('browserify.plugins-combined', ['_prep', 'browserify:plugins-combined']);
318349
grunt.registerTask('build.test', ['_prep', 'browserify:test']);
319350
grunt.registerTask('build.core', ['browserify.core', 'uglify', 'fixSourceMaps', 'sri:dist']);
320-
grunt.registerTask('build.all', ['browserify.plugins', 'uglify', 'fixSourceMaps', 'sri:dist', 'sri:build']);
321-
grunt.registerTask('build', ['build.all']);
322-
grunt.registerTask('dist', ['build.core', 'copy:dist']);
351+
grunt.registerTask('build.plugins', ['browserify.plugins', 'uglify', 'fixSourceMaps', 'sri:dist']);
352+
grunt.registerTask('build.plugins-combined', ['browserify.plugins-combined', 'uglify', 'fixSourceMaps', 'sri:dist', 'sri:build']);
353+
grunt.registerTask('build', ['build.plugins-combined']);
354+
grunt.registerTask('dist', ['build.core', 'build.plugins', 'copy:dist']);
323355

324356
// Test task
325357
grunt.registerTask('test', ['eslint', 'browserify.core', 'browserify:test', 'mocha']);

0 commit comments

Comments
 (0)