index.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. //check if logged in
  38. let loginCheck = shelljs.exec('npm whoami');
  39. if (loginCheck.code === 0) {
  40. prompt.start();
  41. prompt.get(['version'], function (err, result) {
  42. let version = result.version;
  43. packages.forEach((package) => {
  44. let packageJson = require(package.path + 'package.json');
  45. packageJson.version = version;
  46. if (packageJson.peerDependencies) packageJson.peerDependencies.babylonjs = minimumDependency;
  47. fs.writeFileSync(package.path + 'package.json', JSON.stringify(packageJson, null, 4));
  48. console.log('Publishing ' + package.name);
  49. //publish the respected package
  50. shelljs.exec('npm publih ' + package.path);
  51. });
  52. });
  53. } else {
  54. console.log('not logged in.');
  55. }