d2d7243e80
After the JavaScript reorganization in [43309], it was no longer possible to test WordPress from the `src` folder. That meant a build step was required to test PHP modifications. That is suboptimal as even a simple copy is slower than a web server just serving the new file. We achieve building to `src` by setting a `WORKING_DIR` constant in the Gruntfile that is `build` by default, but changes to `src` when the `--dev` flag is present on any Grunt command. We provide sensible defaults so some commands, such as copying `version.php`, always build to `build`. Because testing from `build` is no longer required, we change the messages present in `index.php` and `wp-admin/index.php` to be more broadly about building WordPress. We also change the webpack config to have more straightforward behavior based on the `buildTarget` argument. It only determines the build target now and has no implicit behavior anymore. `grunt build` still works as it worked before, to make sure that the build server produces the same `wordpress.zip` we are used to. We do all this instead of a symlink setup because symlinks don't work on every platform. Props omarreiss, netweb, flixos90, SergeyBiryukov. Fixes #44492. git-svn-id: https://develop.svn.wordpress.org/trunk@44359 602fd350-edb4-49c9-b593-d223f7449a82
20 lines
459 B
JavaScript
20 lines
459 B
JavaScript
const mediaConfig = require( './tools/webpack/media' );
|
|
const packagesConfig = require( './tools/webpack/packages' );
|
|
|
|
module.exports = function( env = { environment: "production", watch: false, buildTarget: false } ) {
|
|
if ( ! env.watch ) {
|
|
env.watch = false;
|
|
}
|
|
|
|
if ( ! env.buildTarget ) {
|
|
env.buildTarget = ( env.mode === 'production' ? 'build/' : 'src/' );
|
|
}
|
|
|
|
const config = [
|
|
mediaConfig( env ),
|
|
packagesConfig( env ),
|
|
];
|
|
|
|
return config;
|
|
};
|