mirror of
https://github.com/openstf/stf
synced 2025-10-03 17:59:28 +02:00
Moved webpack server configuration to webpack.config.
This commit is contained in:
parent
dac22bd85a
commit
5559352585
5 changed files with 91 additions and 91 deletions
|
@ -4,13 +4,13 @@ var jshint = require('gulp-jshint')
|
||||||
var jsonlint = require('gulp-jsonlint')
|
var jsonlint = require('gulp-jsonlint')
|
||||||
var webpack = require('webpack')
|
var webpack = require('webpack')
|
||||||
var ngminPlugin = require('ngmin-webpack-plugin')
|
var ngminPlugin = require('ngmin-webpack-plugin')
|
||||||
var webpackConfig = require('./webpack.config.js')
|
var webpackConfig = require('./webpack.config').webpack
|
||||||
var webpackStatusConfig = require('./res/common/status/webpack.config.js')
|
var webpackStatusConfig = require('./res/common/status/webpack.config')
|
||||||
var gettext = require('gulp-angular-gettext')
|
var gettext = require('gulp-angular-gettext')
|
||||||
var jade = require('gulp-jade')
|
var jade = require('gulp-jade')
|
||||||
var clean = require('gulp-clean')
|
var clean = require('gulp-clean')
|
||||||
var protractor = require("gulp-protractor")
|
var protractor = require("gulp-protractor")
|
||||||
var protractorConfig = require('./res/test/protractor.conf.js')
|
var protractorConfig = require('./res/test/protractor.conf')
|
||||||
var karma = require('karma').server
|
var karma = require('karma').server
|
||||||
var karmaConfig = '/res/test/karma.conf.js'
|
var karmaConfig = '/res/test/karma.conf.js'
|
||||||
var stream = require('stream')
|
var stream = require('stream')
|
||||||
|
|
|
@ -21,6 +21,8 @@ var deviceIconMiddleware = require('./app/middleware/device-icons')
|
||||||
var browserIconMiddleware = require('./app/middleware/browser-icons')
|
var browserIconMiddleware = require('./app/middleware/browser-icons')
|
||||||
var appstoreIconMiddleware = require('./app/middleware/appstore-icons')
|
var appstoreIconMiddleware = require('./app/middleware/appstore-icons')
|
||||||
|
|
||||||
|
var webpackServerConfig = require('./../../webpack.config').webpackServer
|
||||||
|
|
||||||
module.exports = function(options) {
|
module.exports = function(options) {
|
||||||
var log = logger.createLogger('app')
|
var log = logger.createLogger('app')
|
||||||
, app = express()
|
, app = express()
|
||||||
|
@ -45,13 +47,8 @@ module.exports = function(options) {
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
app.use('/static/app/build', require('./app/middleware/webpack')({
|
app.use('/static/app/build',
|
||||||
debug: true
|
require('./app/middleware/webpack')(webpackServerConfig))
|
||||||
, devtool: 'eval'
|
|
||||||
, stats: {
|
|
||||||
colors: true
|
|
||||||
}
|
|
||||||
}))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
app.use('/static/bower_components',
|
app.use('/static/bower_components',
|
||||||
|
|
|
@ -9,7 +9,7 @@ var MemoryFileSystem = require('webpack/node_modules/memory-fs')
|
||||||
|
|
||||||
var logger = require('../../../util/logger')
|
var logger = require('../../../util/logger')
|
||||||
var lifecycle = require('../../../util/lifecycle')
|
var lifecycle = require('../../../util/lifecycle')
|
||||||
var globalOptions = require('../../../../webpack.config')
|
var globalOptions = require('../../../../webpack.config').webpack
|
||||||
|
|
||||||
// Similar to webpack-dev-middleware, but integrates with our custom
|
// Similar to webpack-dev-middleware, but integrates with our custom
|
||||||
// lifecycle, behaves more like normal express middleware, and removes
|
// lifecycle, behaves more like normal express middleware, and removes
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
var pathutil = require('./../../../lib/util/pathutil')
|
var pathutil = require('./../../../lib/util/pathutil')
|
||||||
var options = require('./../../../webpack.config.js')
|
var options = require('./../../../webpack.config').webpack
|
||||||
var _ = require('lodash')
|
var _ = require('lodash')
|
||||||
|
|
||||||
module.exports = _.defaults(options, {
|
module.exports = _.defaults(options, {
|
||||||
|
|
|
@ -3,86 +3,89 @@ var webpack = require('webpack')
|
||||||
var CommonsChunkPlugin = require("webpack/lib/optimize/CommonsChunkPlugin")
|
var CommonsChunkPlugin = require("webpack/lib/optimize/CommonsChunkPlugin")
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
cache: true
|
webpack: {
|
||||||
, entry: {
|
cache: true,
|
||||||
app: pathutil.resource('app/app.js')
|
entry: {
|
||||||
, authldap: pathutil.resource('auth/ldap/scripts/entry.js')
|
app: pathutil.resource('app/app.js'),
|
||||||
, authmock: pathutil.resource('auth/mock/scripts/entry.js')
|
authldap: pathutil.resource('auth/ldap/scripts/entry.js'),
|
||||||
}
|
authmock: pathutil.resource('auth/mock/scripts/entry.js')
|
||||||
, output: {
|
},
|
||||||
path: pathutil.resource('build')
|
output: {
|
||||||
, publicPath: '/static/app/build/'
|
path: pathutil.resource('build'),
|
||||||
, filename: 'entry/[name].entry.js'
|
publicPath: '/static/app/build/',
|
||||||
, chunkFilename: '[id].[hash].chunk.js'
|
filename: 'entry/[name].entry.js',
|
||||||
}
|
chunkFilename: '[id].[hash].chunk.js'
|
||||||
, stats: {
|
},
|
||||||
colors: true
|
stats: {
|
||||||
}
|
colors: true
|
||||||
, resolve: {
|
},
|
||||||
modulesDirectories: [
|
resolve: {
|
||||||
pathutil.resource('app/components')
|
modulesDirectories: [
|
||||||
, pathutil.resource('web_modules')
|
pathutil.resource('app/components')
|
||||||
, pathutil.resource('bower_components')
|
, pathutil.resource('web_modules')
|
||||||
, './node_modules'
|
, pathutil.resource('bower_components')
|
||||||
|
, './node_modules'
|
||||||
|
],
|
||||||
|
alias: {
|
||||||
|
'angular-bootstrap': 'angular-bootstrap/ui-bootstrap-tpls',
|
||||||
|
'localforage': 'localforage/dist/localforage.js',
|
||||||
|
'socket.io': 'socket.io-client',
|
||||||
|
'oboe': 'oboe/dist/oboe-browser',
|
||||||
|
'bluebird': 'bluebird/js/browser/bluebird'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
module: {
|
||||||
|
loaders: [
|
||||||
|
{ test: /\.css$/, loader: 'style!css' },
|
||||||
|
{ test: /\.less$/, loader: 'style-loader!css-loader!less-loader'},
|
||||||
|
{ test: /\.json$/, loader: 'json' },
|
||||||
|
{ test: /\.jpg$/, loader: "url-loader?limit=1000&mimetype=image/jpeg" },
|
||||||
|
{ test: /\.png$/, loader: "url-loader?limit=1000&mimetype=image/png" },
|
||||||
|
{ test: /\.gif$/, loader: "url-loader?limit=1000&mimetype=image/gif" },
|
||||||
|
{ test: /\.svg$/, loader: "url-loader?limit=1&mimetype=image/svg+xml" },
|
||||||
|
{ test: /\.woff$/, loader: "url-loader?limit=1&mimetype=application/font-woff" },
|
||||||
|
{ test: /\.otf$/, loader: "url-loader?limit=1&mimetype=application/font-woff" },
|
||||||
|
{ test: /\.ttf$/, loader: "url-loader?limit=1&mimetype=application/font-woff" },
|
||||||
|
{ test: /\.eot$/, loader: "url-loader?limit=1&mimetype=vnd.ms-fontobject" },
|
||||||
|
{ test: /\.jade/, loader: 'template-html-loader' },
|
||||||
|
{ test: /\.html/, loader: 'html-loader' },
|
||||||
|
{ test: /angular\.js/, loader: 'exports?angular'},
|
||||||
|
{ test: /angular-route\.js/, loader: 'imports?angular=angular'},
|
||||||
|
{ test: /angular-touch\.js/, loader: 'imports?angular=angular'},
|
||||||
|
{ test: /angular-animate\.js/, loader: 'imports?angular=angular'},
|
||||||
|
{ test: /angular-growl\.js/, loader: 'imports?angular=angular'},
|
||||||
|
{ test: /oboe-browser\.js/, loader: 'imports?define=>false!exports?oboe'},
|
||||||
|
{ test: /uuid\.js/, loader: 'imports?require=>undefined'},
|
||||||
|
{ test: /localforage\.js/, loader: 'script'},
|
||||||
|
{ test: /ui-bootstrap-tpls\.js/, loader: 'script'},
|
||||||
|
{ test: /dialogs\.js/, loader: 'script'},
|
||||||
|
{ test: /bluebird\.js/, loader: 'imports?require=>undefined'}
|
||||||
|
],
|
||||||
|
noParse: [
|
||||||
|
// pathutil.resource('bower_components')
|
||||||
|
]
|
||||||
|
},
|
||||||
|
plugins: [
|
||||||
|
new webpack.ResolverPlugin(
|
||||||
|
new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin(
|
||||||
|
'bower.json'
|
||||||
|
, ['main']
|
||||||
|
)
|
||||||
|
)
|
||||||
|
, new webpack.ResolverPlugin(
|
||||||
|
new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin(
|
||||||
|
'.bower.json'
|
||||||
|
, ['main']
|
||||||
|
)
|
||||||
|
)
|
||||||
|
, new CommonsChunkPlugin("entry/commons.entry.js")
|
||||||
]
|
]
|
||||||
, alias: {
|
},
|
||||||
'angular-bootstrap': 'angular-bootstrap/ui-bootstrap-tpls'
|
webpackServer: {
|
||||||
, 'localforage': 'localforage/dist/localforage.js'
|
debug: true,
|
||||||
, 'socket.io': 'socket.io-client'
|
devtool: 'eval',
|
||||||
, 'oboe': 'oboe/dist/oboe-browser'
|
stats: {
|
||||||
, 'bluebird': 'bluebird/js/browser/bluebird'
|
colors: true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
, module: {
|
|
||||||
loaders: [
|
|
||||||
{ test: /\.css$/, loader: 'style!css' }
|
|
||||||
, { test: /\.less$/, loader: 'style-loader!css-loader!less-loader'}
|
|
||||||
, { test: /\.json$/, loader: 'json' }
|
|
||||||
, { test: /\.jpg$/, loader: "url-loader?limit=1000&mimetype=image/jpeg" }
|
|
||||||
, { test: /\.png$/, loader: "url-loader?limit=1000&mimetype=image/png" }
|
|
||||||
, { test: /\.gif$/, loader: "url-loader?limit=1000&mimetype=image/gif" }
|
|
||||||
, { test: /\.svg$/
|
|
||||||
, loader: "url-loader?limit=1&mimetype=image/svg+xml" }
|
|
||||||
, { test: /\.woff$/
|
|
||||||
, loader: "url-loader?limit=1&mimetype=application/font-woff" }
|
|
||||||
, { test: /\.otf$/
|
|
||||||
, loader: "url-loader?limit=1&mimetype=application/font-woff" }
|
|
||||||
, { test: /\.ttf$/
|
|
||||||
, loader: "url-loader?limit=1&mimetype=application/font-woff" }
|
|
||||||
, { test: /\.eot$/
|
|
||||||
, loader: "url-loader?limit=1&mimetype=vnd.ms-fontobject" }
|
|
||||||
, { test: /\.jade/
|
|
||||||
, loader: 'template-html-loader' }
|
|
||||||
, { test: /\.html/, loader: 'html-loader' }
|
|
||||||
, { test: /angular\.js/, loader: 'exports?angular'}
|
|
||||||
, { test: /angular-route\.js/, loader: 'imports?angular=angular'}
|
|
||||||
, { test: /angular-touch\.js/, loader: 'imports?angular=angular'}
|
|
||||||
, { test: /angular-animate\.js/, loader: 'imports?angular=angular'}
|
|
||||||
, { test: /angular-growl\.js/, loader: 'imports?angular=angular'}
|
|
||||||
, { test: /oboe-browser\.js/, loader: 'imports?define=>false!exports?oboe'}
|
|
||||||
, { test: /uuid\.js/, loader: 'imports?require=>undefined'}
|
|
||||||
, { test: /localforage\.js/, loader: 'script'}
|
|
||||||
, { test: /ui-bootstrap-tpls\.js/, loader: 'script'}
|
|
||||||
, { test: /dialogs\.js/, loader: 'script'}
|
|
||||||
, { test: /bluebird\.js/, loader: 'imports?require=>undefined'}
|
|
||||||
]
|
|
||||||
, noParse: [
|
|
||||||
// pathutil.resource('bower_components')
|
|
||||||
]
|
|
||||||
}
|
|
||||||
, plugins: [
|
|
||||||
new webpack.ResolverPlugin(
|
|
||||||
new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin(
|
|
||||||
'bower.json'
|
|
||||||
, ['main']
|
|
||||||
)
|
|
||||||
)
|
|
||||||
, new webpack.ResolverPlugin(
|
|
||||||
new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin(
|
|
||||||
'.bower.json'
|
|
||||||
, ['main']
|
|
||||||
)
|
|
||||||
)
|
|
||||||
, new CommonsChunkPlugin("entry/commons.entry.js")
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue