GenMacEditor.js 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. var fs = require('fs-extra');
  2. var bcommon = require("./BuildCommon");
  3. var host = require("./Host");
  4. var atomicRoot = bcommon.atomicRoot;
  5. var srcDir = bcommon.artifactsRoot + "Build/EditorData/";
  6. var dstDir = bcommon.artifactsRoot + "Build/MacEditor/";
  7. namespace('build', function() {
  8. task('genmaceditorinstaller', ["genmaceditor"], {
  9. async: true
  10. }, function() {
  11. bcommon.cleanCreateDir(dstDir + "MacEditorInstaller");
  12. var editorAppFolder = dstDir + "AtomicEditor.app";
  13. cmds = [
  14. "security -v list-keychains -d system -s /Users/jenkins/Library/Keychains/codesign.keychain && " +
  15. "security -v unlock-keychain -p \"\" /Users/jenkins/Library/Keychains/codesign.keychain && " +
  16. "codesign -s \"THUNDERBEAST GAMES LLC\" \"" + editorAppFolder + "\"",
  17. "cd " + dstDir + " && zip -r -X " + "./MacEditorInstaller/AtomicEditor_MacOSX_" + bcommon.buildSHA + ".zip ./AtomicEditor.app"
  18. ];
  19. jake.exec(cmds, function() {
  20. console.log("Built Mac Editor");
  21. complete();
  22. }, {
  23. printStdout: true
  24. });
  25. });
  26. task('genmaceditor', {
  27. async: true
  28. }, function() {
  29. bcommon.cleanCreateDir(dstDir);
  30. console.log("Generating Mac App Bundle");
  31. var editorAppFolder = dstDir + "AtomicEditor.app/Contents/";
  32. fs.copySync(srcDir + "MacApps/EditorApp",
  33. editorAppFolder);
  34. fs.copySync(srcDir + "EditorBinaries/Mac/AtomicEditor",
  35. editorAppFolder + "MacOS/AtomicEditor");
  36. fs.copySync(srcDir + "Resources/CoreData",
  37. editorAppFolder + "Resources/CoreData");
  38. fs.copySync(srcDir + "Resources/EditorData",
  39. editorAppFolder + "Resources/EditorData");
  40. fs.copySync(srcDir + "Resources/PlayerData",
  41. editorAppFolder + "Resources/PlayerData");
  42. fs.copySync(srcDir + "Resources/ToolData",
  43. editorAppFolder + "Resources/ToolData");
  44. fs.copySync(srcDir + "AtomicExamples",
  45. editorAppFolder + "Resources/ToolData/AtomicExamples");
  46. fs.copySync(srcDir + "Docs",
  47. editorAppFolder + "Resources/ToolData/Docs/JSDocs");
  48. complete();
  49. });
  50. }); // end of build namespace