index.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. let prompt = require('prompt');
  2. let shelljs = require('shelljs');
  3. let fs = require('fs');
  4. let basePath = '../../dist/preview release';
  5. // This can be changed when we have a new major release.
  6. let minimumDependency = '>=3.1.0-alpha';
  7. let packages = [
  8. {
  9. name: 'core',
  10. path: '../../'
  11. },
  12. {
  13. name: 'gui',
  14. path: basePath + '/gui/'
  15. },
  16. {
  17. name: 'materials',
  18. path: basePath + '/materialsLibrary/'
  19. },
  20. {
  21. name: 'postProcess',
  22. path: basePath + '/postProcessesLibrary/'
  23. },
  24. {
  25. name: 'loaders',
  26. path: basePath + '/loaders/'
  27. },
  28. {
  29. name: 'serializers',
  30. path: basePath + '/serializers/'
  31. },
  32. {
  33. name: 'proceduralTextures',
  34. path: basePath + '/proceduralTexturesLibrary/'
  35. },
  36. {
  37. name: 'inspector',
  38. path: basePath + '/inspector/'
  39. }
  40. ];
  41. //check if logged in
  42. let loginCheck = shelljs.exec('npm whoami');
  43. if (loginCheck.code === 0) {
  44. prompt.start();
  45. prompt.get(['version'], function (err, result) {
  46. let version = result.version;
  47. packages.forEach((package) => {
  48. let packageJson = require(package.path + 'package.json');
  49. packageJson.version = version;
  50. if (packageJson.peerDependencies) packageJson.peerDependencies.babylonjs = minimumDependency;
  51. fs.writeFileSync(package.path + 'package.json', JSON.stringify(packageJson, null, 4));
  52. console.log('Publishing ' + package.name + " from " + package.path);
  53. //publish the respected package
  54. shelljs.exec('npm publish \"' + package.path + "\"");
  55. });
  56. });
  57. } else {
  58. console.log('not logged in.');
  59. }