mirror of
https://github.com/facebook/react.git
synced 2026-02-26 04:24:58 +00:00
* Ensure lib/ is packaged for react-test-renderer * Run npm pack from right working directory We were running this on the original packages not the compiled ones, resulting in missing files
53 lines
1.3 KiB
JavaScript
53 lines
1.3 KiB
JavaScript
'use strict';
|
|
|
|
var fs = require('fs');
|
|
var grunt = require('grunt');
|
|
|
|
var src = 'packages/react-native-renderer/';
|
|
var dest = 'build/packages/react-native-renderer/';
|
|
var modSrc = 'build/node_modules/react-native/lib';
|
|
var lib = dest + 'lib/';
|
|
|
|
function buildRelease() {
|
|
if (grunt.file.exists(dest)) {
|
|
grunt.file.delete(dest);
|
|
}
|
|
|
|
// Copy to build/packages/react-native-renderer
|
|
var mappings = [].concat(
|
|
grunt.file.expandMapping('**/*', dest, {cwd: src}),
|
|
grunt.file.expandMapping('**/*', lib, {cwd: modSrc}),
|
|
grunt.file.expandMapping('{LICENSE,PATENTS}', dest)
|
|
);
|
|
mappings.forEach(function(mapping) {
|
|
var mappingSrc = mapping.src[0];
|
|
var mappingDest = mapping.dest;
|
|
if (grunt.file.isDir(mappingSrc)) {
|
|
grunt.file.mkdir(mappingDest);
|
|
} else {
|
|
grunt.file.copy(mappingSrc, mappingDest);
|
|
}
|
|
});
|
|
}
|
|
|
|
function packRelease() {
|
|
var done = this.async();
|
|
var spawnCmd = {
|
|
cmd: 'npm',
|
|
args: ['pack', 'packages/react-native-renderer'],
|
|
opts: {
|
|
cwd: 'build/',
|
|
},
|
|
};
|
|
grunt.util.spawn(spawnCmd, function() {
|
|
var buildSrc = 'build/react-native-renderer-' + grunt.config.data.pkg.version + '.tgz';
|
|
var buildDest = 'build/packages/react-native-renderer.tgz';
|
|
fs.rename(buildSrc, buildDest, done);
|
|
});
|
|
}
|
|
|
|
module.exports = {
|
|
buildRelease: buildRelease,
|
|
packRelease: packRelease,
|
|
};
|