@maka/maka-cli 5.122.1 → 5.123.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (366) hide show
  1. package/README.md +64 -64
  2. package/bundle/typescript/package.json +120 -120
  3. package/bundle/typescript/src/README.md +64 -64
  4. package/bundle/typescript/src/commands/aws/aws.command.js +2 -2
  5. package/bundle/typescript/src/commands/aws/ci.sub.cmd.js +5 -5
  6. package/bundle/typescript/src/commands/aws/ckp.sub.cmd.js +12 -12
  7. package/bundle/typescript/src/commands/aws/csg.sub.cmd.js +3 -3
  8. package/bundle/typescript/src/commands/aws/di.sub.cmd.js +8 -8
  9. package/bundle/typescript/src/commands/aws/rkp.sub.cmd.js +5 -5
  10. package/bundle/typescript/src/commands/aws/sth.sub.cmd.js +3 -3
  11. package/bundle/typescript/src/commands/aws/ti.sub.cmd.js +5 -5
  12. package/bundle/typescript/src/commands/build/build.js +16 -16
  13. package/bundle/typescript/src/commands/build/docker.sub.cmd.js +9 -9
  14. package/bundle/typescript/src/commands/create.js +36 -36
  15. package/bundle/typescript/src/commands/debug.js +4 -4
  16. package/bundle/typescript/src/commands/deploy/deploy.command.js +2 -2
  17. package/bundle/typescript/src/commands/deploy/galaxy.sub.cmd.js +2 -2
  18. package/bundle/typescript/src/commands/deploy/github.sub.cmd.js +8 -8
  19. package/bundle/typescript/src/commands/deploy/ubuntu.sub.cmd.js +14 -10
  20. package/bundle/typescript/src/commands/deploy/ubuntu.sub.cmd.js.map +1 -1
  21. package/bundle/typescript/src/commands/env/env.command.js +8 -8
  22. package/bundle/typescript/src/commands/env/set.sub.cmd.js +11 -11
  23. package/bundle/typescript/src/commands/game/sideQuest/adept-powers.d.ts +15 -0
  24. package/bundle/typescript/src/commands/game/sideQuest/adept-powers.js +12 -0
  25. package/bundle/typescript/src/commands/game/sideQuest/adept-powers.js.map +1 -1
  26. package/bundle/typescript/src/commands/game/sideQuest/archetypes.d.ts +10 -0
  27. package/bundle/typescript/src/commands/game/sideQuest/archetypes.js +40 -14
  28. package/bundle/typescript/src/commands/game/sideQuest/archetypes.js.map +1 -1
  29. package/bundle/typescript/src/commands/game/sideQuest/augmentations.d.ts +33 -10
  30. package/bundle/typescript/src/commands/game/sideQuest/augmentations.js +155 -72
  31. package/bundle/typescript/src/commands/game/sideQuest/augmentations.js.map +1 -1
  32. package/bundle/typescript/src/commands/game/sideQuest/commands/advance.js +15 -6
  33. package/bundle/typescript/src/commands/game/sideQuest/commands/advance.js.map +1 -1
  34. package/bundle/typescript/src/commands/game/sideQuest/commands/ask.js +1 -1
  35. package/bundle/typescript/src/commands/game/sideQuest/commands/ask.js.map +1 -1
  36. package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js +1 -1
  37. package/bundle/typescript/src/commands/game/sideQuest/commands/bluff.js.map +1 -1
  38. package/bundle/typescript/src/commands/game/sideQuest/commands/cast.js +33 -33
  39. package/bundle/typescript/src/commands/game/sideQuest/commands/cast.js.map +1 -1
  40. package/bundle/typescript/src/commands/game/sideQuest/commands/drone.js +1 -1
  41. package/bundle/typescript/src/commands/game/sideQuest/commands/drone.js.map +1 -1
  42. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js +2 -2
  43. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js.map +1 -1
  44. package/bundle/typescript/src/commands/game/sideQuest/commands/grapple.js +5 -1
  45. package/bundle/typescript/src/commands/game/sideQuest/commands/grapple.js.map +1 -1
  46. package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js +6 -6
  47. package/bundle/typescript/src/commands/game/sideQuest/commands/hack.js.map +1 -1
  48. package/bundle/typescript/src/commands/game/sideQuest/commands/haggle.js +4 -4
  49. package/bundle/typescript/src/commands/game/sideQuest/commands/haggle.js.map +1 -1
  50. package/bundle/typescript/src/commands/game/sideQuest/commands/hop.js +1 -1
  51. package/bundle/typescript/src/commands/game/sideQuest/commands/hop.js.map +1 -1
  52. package/bundle/typescript/src/commands/game/sideQuest/commands/initiate.d.ts +20 -0
  53. package/bundle/typescript/src/commands/game/sideQuest/commands/initiate.js +9 -0
  54. package/bundle/typescript/src/commands/game/sideQuest/commands/initiate.js.map +1 -1
  55. package/bundle/typescript/src/commands/game/sideQuest/commands/lead.js +7 -3
  56. package/bundle/typescript/src/commands/game/sideQuest/commands/lead.js.map +1 -1
  57. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js +3 -3
  58. package/bundle/typescript/src/commands/game/sideQuest/commands/move.js.map +1 -1
  59. package/bundle/typescript/src/commands/game/sideQuest/commands/persuade.js +1 -1
  60. package/bundle/typescript/src/commands/game/sideQuest/commands/persuade.js.map +1 -1
  61. package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js +3 -3
  62. package/bundle/typescript/src/commands/game/sideQuest/commands/rest.js.map +1 -1
  63. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +9 -9
  64. package/bundle/typescript/src/commands/game/sideQuest/commands/sheet.js +10 -10
  65. package/bundle/typescript/src/commands/game/sideQuest/commands/sheet.js.map +1 -1
  66. package/bundle/typescript/src/commands/game/sideQuest/commands/source.js +7 -7
  67. package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js +1 -1
  68. package/bundle/typescript/src/commands/game/sideQuest/commands/tap.js.map +1 -1
  69. package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.d.ts +24 -0
  70. package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js +95 -0
  71. package/bundle/typescript/src/commands/game/sideQuest/factories/chargen-factory.js.map +1 -1
  72. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +443 -443
  73. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +6 -6
  74. package/bundle/typescript/src/commands/game/sideQuest/game.d.ts +45 -1
  75. package/bundle/typescript/src/commands/game/sideQuest/game.js +120 -9
  76. package/bundle/typescript/src/commands/game/sideQuest/game.js.map +1 -1
  77. package/bundle/typescript/src/commands/game/sideQuest/metatypes.d.ts +53 -0
  78. package/bundle/typescript/src/commands/game/sideQuest/metatypes.js +86 -0
  79. package/bundle/typescript/src/commands/game/sideQuest/metatypes.js.map +1 -0
  80. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js +214 -208
  81. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js.map +1 -1
  82. package/bundle/typescript/src/commands/game/sideQuest/models/player.d.ts +215 -18
  83. package/bundle/typescript/src/commands/game/sideQuest/models/player.js +548 -117
  84. package/bundle/typescript/src/commands/game/sideQuest/models/player.js.map +1 -1
  85. package/bundle/typescript/src/commands/game/sideQuest/models/room.js +9 -9
  86. package/bundle/typescript/src/commands/game/sideQuest/models/scene.d.ts +2 -1
  87. package/bundle/typescript/src/commands/game/sideQuest/models/scene.js +3 -2
  88. package/bundle/typescript/src/commands/game/sideQuest/models/scene.js.map +1 -1
  89. package/bundle/typescript/src/commands/game/sideQuest/qualities.d.ts +96 -4
  90. package/bundle/typescript/src/commands/game/sideQuest/qualities.js +290 -11
  91. package/bundle/typescript/src/commands/game/sideQuest/qualities.js.map +1 -1
  92. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene1.json +556 -556
  93. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene2.json +1447 -1447
  94. package/bundle/typescript/src/commands/game/sideQuest/skill-groups.d.ts +11 -1
  95. package/bundle/typescript/src/commands/game/sideQuest/skill-groups.js +13 -1
  96. package/bundle/typescript/src/commands/game/sideQuest/skill-groups.js.map +1 -1
  97. package/bundle/typescript/src/commands/game/sideQuest/skills.d.ts +17 -0
  98. package/bundle/typescript/src/commands/game/sideQuest/skills.js +23 -0
  99. package/bundle/typescript/src/commands/game/sideQuest/skills.js.map +1 -0
  100. package/bundle/typescript/src/commands/game/sideQuest/spells.d.ts +76 -3
  101. package/bundle/typescript/src/commands/game/sideQuest/spells.js +48 -21
  102. package/bundle/typescript/src/commands/game/sideQuest/spells.js.map +1 -1
  103. package/bundle/typescript/src/commands/game/sideQuest/types/save-file.d.ts +8 -0
  104. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog-data.d.ts +90 -82
  105. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog-data.js +277 -10
  106. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog-data.js.map +1 -1
  107. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.d.ts +121 -2
  108. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.js +342 -18
  109. package/bundle/typescript/src/commands/game/sideQuest/utilities/catalog.js.map +1 -1
  110. package/bundle/typescript/src/commands/game/sideQuest/utilities/cloud-saves.d.ts +65 -2
  111. package/bundle/typescript/src/commands/game/sideQuest/utilities/cloud-saves.js +74 -7
  112. package/bundle/typescript/src/commands/game/sideQuest/utilities/cloud-saves.js.map +1 -1
  113. package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js +1 -1
  114. package/bundle/typescript/src/commands/game/sideQuest/utilities/combat-exchange.js.map +1 -1
  115. package/bundle/typescript/src/commands/game/sideQuest/utilities/effects.d.ts +248 -0
  116. package/bundle/typescript/src/commands/game/sideQuest/utilities/effects.js +38 -0
  117. package/bundle/typescript/src/commands/game/sideQuest/utilities/effects.js.map +1 -0
  118. package/bundle/typescript/src/commands/game/sideQuest/utilities/ephemeral.js +14 -14
  119. package/bundle/typescript/src/commands/game/sideQuest/utilities/first-aid.js +1 -2
  120. package/bundle/typescript/src/commands/game/sideQuest/utilities/first-aid.js.map +1 -1
  121. package/bundle/typescript/src/commands/game/sideQuest/utilities/perception.js +1 -2
  122. package/bundle/typescript/src/commands/game/sideQuest/utilities/perception.js.map +1 -1
  123. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js +5 -0
  124. package/bundle/typescript/src/commands/game/sideQuest/utilities/persistence.js.map +1 -1
  125. package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.js +5 -1
  126. package/bundle/typescript/src/commands/game/sideQuest/utilities/planes.js.map +1 -1
  127. package/bundle/typescript/src/commands/game/sideQuest/utilities/pregen-worksheet.js +22 -12
  128. package/bundle/typescript/src/commands/game/sideQuest/utilities/pregen-worksheet.js.map +1 -1
  129. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js +1 -2
  130. package/bundle/typescript/src/commands/game/sideQuest/utilities/spots.js.map +1 -1
  131. package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.d.ts +1 -0
  132. package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js +20 -0
  133. package/bundle/typescript/src/commands/game/sideQuest/utilities/web-character-generator.js.map +1 -1
  134. package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js +2 -2
  135. package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +33 -2
  136. package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js.map +1 -1
  137. package/bundle/typescript/src/commands/generate.js +2 -2
  138. package/bundle/typescript/src/commands/lint.js +10 -10
  139. package/bundle/typescript/src/commands/login.js +19 -1
  140. package/bundle/typescript/src/commands/login.js.map +1 -1
  141. package/bundle/typescript/src/commands/logout.js +16 -1
  142. package/bundle/typescript/src/commands/logout.js.map +1 -1
  143. package/bundle/typescript/src/commands/maka.cmd.js +26 -26
  144. package/bundle/typescript/src/commands/murder.js +14 -14
  145. package/bundle/typescript/src/commands/proxy.js +13 -13
  146. package/bundle/typescript/src/commands/remote/reconfig.sub.cmd.js +6 -6
  147. package/bundle/typescript/src/commands/run/docker.sub.cmd.js +11 -11
  148. package/bundle/typescript/src/commands/run/run.command.js +24 -24
  149. package/bundle/typescript/src/commands/set/global.sub.cmd.js +8 -8
  150. package/bundle/typescript/src/commands/set/local.sub.cmd.js +2 -2
  151. package/bundle/typescript/src/commands/set/set.command.js +3 -3
  152. package/bundle/typescript/src/commands/testCmd/test.command.js +2 -2
  153. package/bundle/typescript/src/exec.js +0 -0
  154. package/bundle/typescript/src/generators/api.js +11 -11
  155. package/bundle/typescript/src/generators/collection.js +6 -6
  156. package/bundle/typescript/src/generators/hook.js +10 -10
  157. package/bundle/typescript/src/generators/kits/auth/auth.generator.js +2 -2
  158. package/bundle/typescript/src/generators/kits/auth/auth0-meteor.auth.gen.js +612 -612
  159. package/bundle/typescript/src/generators/kits/auth/basic-meteor.auth.gen.js +48 -48
  160. package/bundle/typescript/src/generators/kits/auth/provider.auth.gen.js +12 -12
  161. package/bundle/typescript/src/generators/kits/esri/esri.generator.js +3 -3
  162. package/bundle/typescript/src/generators/kits/esri/map.esri.gen.js +7 -7
  163. package/bundle/typescript/src/generators/kits/frames/frames.generator.js +16 -16
  164. package/bundle/typescript/src/generators/kits/mui/auth.mui.gen.js +2 -2
  165. package/bundle/typescript/src/generators/kits/mui/auth0.mui.gen.js +5 -5
  166. package/bundle/typescript/src/generators/kits/mui/frame.mui.gen.js +4 -4
  167. package/bundle/typescript/src/generators/kits/mui/mui.generator.js +22 -22
  168. package/bundle/typescript/src/generators/services/translation.js +5 -5
  169. package/bundle/typescript/src/templates/aws/cloudformation/create-ec2-instance.template +14 -14
  170. package/bundle/typescript/src/templates/meteor/api/api.js +20 -20
  171. package/bundle/typescript/src/templates/meteor/api/api.js.ts +20 -20
  172. package/bundle/typescript/src/templates/meteor/api/apollo-gateway.js +50 -50
  173. package/bundle/typescript/src/templates/meteor/api/apollo-gateway.js.ts +55 -55
  174. package/bundle/typescript/src/templates/meteor/api/graphql-api.js +63 -63
  175. package/bundle/typescript/src/templates/meteor/api/graphql-api.js.ts +69 -69
  176. package/bundle/typescript/src/templates/meteor/api/methods.js +39 -39
  177. package/bundle/typescript/src/templates/meteor/api/methods.js.ts +40 -40
  178. package/bundle/typescript/src/templates/meteor/api/register-api.js +3 -3
  179. package/bundle/typescript/src/templates/meteor/api/register-api.js.ts +3 -3
  180. package/bundle/typescript/src/templates/meteor/api/resolvers.js +9 -9
  181. package/bundle/typescript/src/templates/meteor/api/resolvers.js.ts +9 -9
  182. package/bundle/typescript/src/templates/meteor/api/typeDefs.js +6 -6
  183. package/bundle/typescript/src/templates/meteor/api/typeDefs.js.ts +6 -6
  184. package/bundle/typescript/src/templates/meteor/app/client/body.html +3 -3
  185. package/bundle/typescript/src/templates/meteor/app/client/head.html +12 -12
  186. package/bundle/typescript/src/templates/meteor/app/client/main.js +15 -15
  187. package/bundle/typescript/src/templates/meteor/app/client/main.js.jsx +15 -15
  188. package/bundle/typescript/src/templates/meteor/app/client/main.js.ts +17 -17
  189. package/bundle/typescript/src/templates/meteor/app/client/main.js.tsx +17 -17
  190. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js +20 -20
  191. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.jsx +107 -107
  192. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.ts +20 -20
  193. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.tsx +108 -108
  194. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js +39 -39
  195. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.jsx +33 -33
  196. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.ts +24 -24
  197. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.tsx +33 -33
  198. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js +9 -9
  199. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.jsx +9 -9
  200. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.ts +9 -9
  201. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.tsx +9 -9
  202. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js +1 -1
  203. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.jsx +20 -20
  204. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.ts +1 -1
  205. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.tsx +20 -20
  206. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/routes.js.jsx +28 -28
  207. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/routes.js.tsx +28 -28
  208. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js +1 -1
  209. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js.jsx +95 -95
  210. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js.tsx +98 -98
  211. package/bundle/typescript/src/templates/meteor/app/imports/ui/test-helpers.js +24 -24
  212. package/bundle/typescript/src/templates/meteor/app/imports/ui/test-helpers.js.ts +24 -24
  213. package/bundle/typescript/src/templates/meteor/app/lib/main.js +3 -3
  214. package/bundle/typescript/src/templates/meteor/app/lib/main.js.jsx +3 -3
  215. package/bundle/typescript/src/templates/meteor/app/lib/main.js.ts +3 -3
  216. package/bundle/typescript/src/templates/meteor/app/lib/main.js.tsx +3 -3
  217. package/bundle/typescript/src/templates/meteor/app/maka.d.ts +533 -533
  218. package/bundle/typescript/src/templates/meteor/app/meteor.d.ts +181 -181
  219. package/bundle/typescript/src/templates/meteor/app/public/manifest.json +27 -27
  220. package/bundle/typescript/src/templates/meteor/app/public/sw.js +30 -30
  221. package/bundle/typescript/src/templates/meteor/app/public/sw.js.jsx +30 -30
  222. package/bundle/typescript/src/templates/meteor/app/public/sw.js.ts +30 -30
  223. package/bundle/typescript/src/templates/meteor/app/public/sw.js.tsx +30 -30
  224. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js +179 -179
  225. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.jsx +179 -179
  226. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.ts +179 -179
  227. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.tsx +179 -179
  228. package/bundle/typescript/src/templates/meteor/app/server/main.js +13 -13
  229. package/bundle/typescript/src/templates/meteor/app/server/main.js.jsx +13 -13
  230. package/bundle/typescript/src/templates/meteor/app/server/main.js.ts +14 -14
  231. package/bundle/typescript/src/templates/meteor/app/server/main.js.tsx +14 -14
  232. package/bundle/typescript/src/templates/meteor/app/tsconfig.json +42 -42
  233. package/bundle/typescript/src/templates/meteor/collection/collection.js +51 -51
  234. package/bundle/typescript/src/templates/meteor/collection/collection.js.ts +55 -55
  235. package/bundle/typescript/src/templates/meteor/collection/tests.js +27 -27
  236. package/bundle/typescript/src/templates/meteor/collection/tests.js.ts +27 -27
  237. package/bundle/typescript/src/templates/meteor/config/deploy.sh.template +101 -101
  238. package/bundle/typescript/src/templates/meteor/config/docker-compose.yaml +17 -17
  239. package/bundle/typescript/src/templates/meteor/config/nginx.conf.template +31 -31
  240. package/bundle/typescript/src/templates/meteor/config/pm2.config.js +27 -27
  241. package/bundle/typescript/src/templates/meteor/config/process.env +5 -5
  242. package/bundle/typescript/src/templates/meteor/config/settings.json +11 -11
  243. package/bundle/typescript/src/templates/meteor/config/ssh.json +6 -6
  244. package/bundle/typescript/src/templates/meteor/dbc/config.js +70 -70
  245. package/bundle/typescript/src/templates/meteor/dbc/config.js.ts +70 -70
  246. package/bundle/typescript/src/templates/meteor/dbc/conn.js +37 -37
  247. package/bundle/typescript/src/templates/meteor/dbc/conn.js.ts +37 -37
  248. package/bundle/typescript/src/templates/meteor/dbc/register-dbc.js +3 -3
  249. package/bundle/typescript/src/templates/meteor/dbc/register-dbc.js.ts +3 -3
  250. package/bundle/typescript/src/templates/meteor/github/workflows/deploy.yaml +150 -150
  251. package/bundle/typescript/src/templates/meteor/method/method.js +48 -48
  252. package/bundle/typescript/src/templates/meteor/method/method.js.ts +48 -48
  253. package/bundle/typescript/src/templates/meteor/package/package.js +37 -37
  254. package/bundle/typescript/src/templates/meteor/package/package.js.jsx +37 -37
  255. package/bundle/typescript/src/templates/meteor/package/package.js.ts +36 -36
  256. package/bundle/typescript/src/templates/meteor/package/package.js.tsx +37 -37
  257. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js +5 -5
  258. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.jsx +5 -5
  259. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.ts +5 -5
  260. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.tsx +5 -5
  261. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js +5 -5
  262. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.jsx +5 -5
  263. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.ts +5 -5
  264. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.tsx +5 -5
  265. package/bundle/typescript/src/templates/meteor/project/.maka/config.json +29 -29
  266. package/bundle/typescript/src/templates/meteor/project/README.md +33 -33
  267. package/bundle/typescript/src/templates/meteor/project/build/README +4 -4
  268. package/bundle/typescript/src/templates/meteor/project/gitignore +10 -10
  269. package/bundle/typescript/src/templates/meteor/project/package.json +29 -29
  270. package/bundle/typescript/src/templates/meteor/publish/publish.js +7 -7
  271. package/bundle/typescript/src/templates/meteor/publish/publish.js.ts +7 -7
  272. package/bundle/typescript/src/templates/meteor/service/logger/logger.js +27 -27
  273. package/bundle/typescript/src/templates/meteor/service/logger/logger.js.ts +27 -27
  274. package/bundle/typescript/src/templates/meteor/stylesheet/stylesheet.css +5 -5
  275. package/bundle/typescript/src/templates/meteor/stylesheet/stylesheet.css.less +5 -5
  276. package/bundle/typescript/src/templates/meteor/template/template-tests.js +1 -1
  277. package/bundle/typescript/src/templates/meteor/template/template-tests.js.jsx +55 -55
  278. package/bundle/typescript/src/templates/meteor/template/template-tests.js.ts +1 -1
  279. package/bundle/typescript/src/templates/meteor/template/template-tests.js.tsx +55 -55
  280. package/bundle/typescript/src/templates/meteor/template/template.css +3 -3
  281. package/bundle/typescript/src/templates/meteor/template/template.css.less +3 -3
  282. package/bundle/typescript/src/templates/meteor/template/template.css.scss +3 -3
  283. package/bundle/typescript/src/templates/meteor/template/template.html +5 -5
  284. package/bundle/typescript/src/templates/meteor/template/template.js +20 -20
  285. package/bundle/typescript/src/templates/meteor/template/template.js.jsx +77 -77
  286. package/bundle/typescript/src/templates/meteor/template/template.js.ts +1 -1
  287. package/bundle/typescript/src/templates/meteor/template/template.js.tsx +89 -89
  288. package/bundle/typescript/src/templates/react/component/component.css +6 -6
  289. package/bundle/typescript/src/templates/react/component/component.css.less +6 -6
  290. package/bundle/typescript/src/templates/react/component/component.css.scss +3 -3
  291. package/bundle/typescript/src/templates/react/component/component.js.jsx +59 -59
  292. package/bundle/typescript/src/templates/react/component/component.js.tsx +65 -65
  293. package/bundle/typescript/src/templates/react/hook/hook.css +3 -3
  294. package/bundle/typescript/src/templates/react/hook/hook.css.scss +3 -3
  295. package/bundle/typescript/src/templates/react/hook/hook.js.jsx +19 -19
  296. package/bundle/typescript/src/templates/react/hook/hook.js.tsx +19 -19
  297. package/bundle/typescript/src/templates/react/kit/auth/provider/authentication-provider.js.jsx +306 -306
  298. package/bundle/typescript/src/templates/react/kit/auth/provider/authentication-provider.js.tsx +350 -350
  299. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-client.js.jsx +178 -178
  300. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-client.js.tsx +178 -178
  301. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-config.js.jsx +59 -59
  302. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-config.js.tsx +67 -67
  303. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-methods.js.jsx +273 -273
  304. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-methods.js.tsx +275 -275
  305. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-validator.js.jsx +182 -182
  306. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-validator.js.tsx +199 -199
  307. package/bundle/typescript/src/templates/react/kit/auth/service/meteor-auth-service.js.jsx +138 -138
  308. package/bundle/typescript/src/templates/react/kit/auth/service/meteor-auth-service.js.tsx +153 -153
  309. package/bundle/typescript/src/templates/react/kit/esri/map/basic-map.js.jsx +29 -29
  310. package/bundle/typescript/src/templates/react/kit/esri/map/basic-map.js.tsx +32 -32
  311. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.css +63 -63
  312. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.jsx +153 -153
  313. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.tsx +164 -164
  314. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.css +105 -105
  315. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.jsx +158 -158
  316. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.tsx +166 -166
  317. package/bundle/typescript/src/templates/react/kit/mui/auth/forgot-password/basic-forgot-password-page.js.jsx +34 -34
  318. package/bundle/typescript/src/templates/react/kit/mui/auth/forgot-password/basic-forgot-password-page.js.tsx +33 -33
  319. package/bundle/typescript/src/templates/react/kit/mui/auth/login/basic-login-page.js.jsx +53 -53
  320. package/bundle/typescript/src/templates/react/kit/mui/auth/login/basic-login-page.js.tsx +53 -53
  321. package/bundle/typescript/src/templates/react/kit/mui/auth/logout/basic-logout-page.js.jsx +25 -25
  322. package/bundle/typescript/src/templates/react/kit/mui/auth/logout/basic-logout-page.js.tsx +25 -25
  323. package/bundle/typescript/src/templates/react/kit/mui/auth/password-reset/basic-password-reset-page.js.jsx +41 -41
  324. package/bundle/typescript/src/templates/react/kit/mui/auth/password-reset/basic-password-reset-page.js.tsx +34 -34
  325. package/bundle/typescript/src/templates/react/kit/mui/auth/register/basic-register-page.js.jsx +33 -33
  326. package/bundle/typescript/src/templates/react/kit/mui/auth/register/basic-register-page.js.tsx +33 -33
  327. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth-callback.js.jsx +71 -71
  328. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth-callback.js.tsx +71 -71
  329. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-account-settings.js.jsx +123 -123
  330. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-account-settings.js.tsx +123 -123
  331. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-login-button.js.jsx +56 -56
  332. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-login-button.js.tsx +74 -74
  333. package/bundle/typescript/src/templates/react/kit/mui/frame/app-bars/basic-app-bar.js.jsx +43 -43
  334. package/bundle/typescript/src/templates/react/kit/mui/frame/app-bars/basic-app-bar.js.tsx +43 -43
  335. package/bundle/typescript/src/templates/react/kit/mui/frame/drawers/basic-drawer.js.jsx +121 -121
  336. package/bundle/typescript/src/templates/react/kit/mui/frame/drawers/basic-drawer.js.tsx +117 -117
  337. package/bundle/typescript/src/templates/react/kit/mui/frame/footers/basic-sticky-footer.js.jsx +41 -41
  338. package/bundle/typescript/src/templates/react/kit/mui/frame/footers/basic-sticky-footer.js.tsx +41 -41
  339. package/bundle/typescript/src/templates/react/route/route.js +8 -8
  340. package/bundle/typescript/src/templates/react/route/route.js.jsx +5 -5
  341. package/bundle/typescript/src/templates/react/route/route.js.ts +8 -8
  342. package/bundle/typescript/src/templates/react/route/route.js.tsx +5 -5
  343. package/bundle/typescript/src/templates/react/test/test.js +1 -1
  344. package/bundle/typescript/src/templates/react/test/test.js.jsx +40 -40
  345. package/bundle/typescript/src/templates/react/test/test.js.ts +1 -1
  346. package/bundle/typescript/src/templates/react/test/test.js.tsx +40 -40
  347. package/bundle/typescript/src/templates/service/docker/Dockerfile +54 -54
  348. package/bundle/typescript/src/templates/service/eslint/babel.config.js +16 -16
  349. package/bundle/typescript/src/templates/service/eslint/config.eslint.js +69 -69
  350. package/bundle/typescript/src/templates/service/i18n/i18n.js +33 -33
  351. package/bundle/typescript/src/templates/service/i18n/i18n.js.ts +33 -33
  352. package/bundle/typescript/src/templates/service/i18n/locales.js +3 -3
  353. package/bundle/typescript/src/templates/service/i18n/locales.js.ts +3 -3
  354. package/bundle/typescript/src/templates/service/openssl/openssl.conf +22 -22
  355. package/bundle/typescript/src/templates/service/test/jest/jest.config.js +24 -24
  356. package/bundle/typescript/src/templates/service/test/jest/jest.setup.js +7 -7
  357. package/bundle/typescript/src/tools/guarded-file/guarded-file.class.d.ts +59 -0
  358. package/bundle/typescript/src/tools/guarded-file/guarded-file.class.js +120 -0
  359. package/bundle/typescript/src/tools/guarded-file/guarded-file.class.js.map +1 -0
  360. package/bundle/typescript/src/tools/mpi/mpi.class.d.ts +16 -0
  361. package/bundle/typescript/src/tools/mpi/mpi.class.js +25 -7
  362. package/bundle/typescript/src/tools/mpi/mpi.class.js.map +1 -1
  363. package/bundle/typescript/src/tools/mpi/sdk-runtime.d.ts +1 -0
  364. package/bundle/typescript/src/tools/mpi/sdk-runtime.js +29 -0
  365. package/bundle/typescript/src/tools/mpi/sdk-runtime.js.map +1 -1
  366. package/package.json +120 -120
@@ -1,51 +1,51 @@
1
- import { Mongo } from 'meteor/mongo';<% if (where === 'client') { -%>
2
- export const <%= name %> = new Mongo.Collection(null);<% } else { -%>
3
-
4
- class <%= name %>Collection extends Mongo.Collection {
5
- constructor() {
6
- super('<%= name %>');
7
-
8
- this.publicFields = {};
9
- this.privateFields = {};
10
- this.allow({
11
- insert() { return false; },
12
- update() { return false; },
13
- remove() { return false; },
14
- });
15
- }
16
-
17
- async createIndexAsync(index, options) {
18
- return await createIndexAsync(index, options);
19
- }
20
-
21
- find(selector = {}, modifier) {
22
- return super.find(selector, modifier);
23
- }
24
-
25
- async findOneAsync(selector = {}, modifier) {
26
- return await super.findOneAsync(selector, modifier);
27
- }
28
-
29
- async insertAsync(doc) {
30
- return await super.insertAsync(doc);
31
- }
32
-
33
- async updateAsync(selector, modifier) {
34
- return await super.updateAsync(selector, modifier);
35
- }
36
-
37
- async upsertAsync(selector, modifier, options) {
38
- return await super.upsertAsync(selector, modifier, options);
39
- }
40
-
41
- async remove(selector) {
42
- return await super.removeAsync(selector);
43
- }
44
- }
45
-
46
- /**
47
- * @memberof Server.<%= name %>
48
- * @member <%= name %>
49
- */
50
- const <%= name %> = new <%= name %>Collection();
51
- export default <%= name %>;<% } %>
1
+ import { Mongo } from 'meteor/mongo';<% if (where === 'client') { -%>
2
+ export const <%= name %> = new Mongo.Collection(null);<% } else { -%>
3
+
4
+ class <%= name %>Collection extends Mongo.Collection {
5
+ constructor() {
6
+ super('<%= name %>');
7
+
8
+ this.publicFields = {};
9
+ this.privateFields = {};
10
+ this.allow({
11
+ insert() { return false; },
12
+ update() { return false; },
13
+ remove() { return false; },
14
+ });
15
+ }
16
+
17
+ async createIndexAsync(index, options) {
18
+ return await createIndexAsync(index, options);
19
+ }
20
+
21
+ find(selector = {}, modifier) {
22
+ return super.find(selector, modifier);
23
+ }
24
+
25
+ async findOneAsync(selector = {}, modifier) {
26
+ return await super.findOneAsync(selector, modifier);
27
+ }
28
+
29
+ async insertAsync(doc) {
30
+ return await super.insertAsync(doc);
31
+ }
32
+
33
+ async updateAsync(selector, modifier) {
34
+ return await super.updateAsync(selector, modifier);
35
+ }
36
+
37
+ async upsertAsync(selector, modifier, options) {
38
+ return await super.upsertAsync(selector, modifier, options);
39
+ }
40
+
41
+ async remove(selector) {
42
+ return await super.removeAsync(selector);
43
+ }
44
+ }
45
+
46
+ /**
47
+ * @memberof Server.<%= name %>
48
+ * @member <%= name %>
49
+ */
50
+ const <%= name %> = new <%= name %>Collection();
51
+ export default <%= name %>;<% } %>
@@ -1,55 +1,55 @@
1
- import { Mongo } from 'meteor/mongo';<% if (where === 'client') { -%>
2
- export const <%= name %> = new Mongo.Collection(null);<% } else { %>
3
-
4
- class <%= name %>Collection extends Mongo.Collection<<%=name%>Collection> {
5
- publicFields: any;
6
- privateFields: any;
7
- allow: any = () => {};
8
-
9
- constructor() {
10
- super('<%= name %>');
11
-
12
- this.publicFields = {};
13
- this.privateFields = {};
14
- this.allow({
15
- insert() { return false; },
16
- update() { return false; },
17
- remove() { return false; },
18
- });
19
- }
20
-
21
- async createIndexAsync(index: any, options: any) {
22
- return await createIndexAsync(index, options);
23
- }
24
-
25
- find(selector = {}, modifier?: any) {
26
- return super.find(selector, modifier);
27
- }
28
-
29
- async findOneAsync(selector = {}, modifier?: any) {
30
- return super.findOneAsync(selector, modifier);
31
- }
32
-
33
- async insertAsync(doc: any) {
34
- return await super.insertAsync(doc);
35
- }
36
-
37
- async updateAsync(selector: any, modifier?: any) {
38
- return await super.updateAsync(selector, modifier);
39
- }
40
-
41
- async upsertAsync(selector: any, modifier?: any, options?: any) {
42
- return await super.upsertAsync(selector, modifier, options);
43
- }
44
-
45
- async removeAsync(selector: any) {
46
- return await super.removeAsync(selector);
47
- }
48
- }
49
-
50
- /**
51
- * @memberof Server.<%= name %>
52
- * @member <%= name %>
53
- */
54
- const <%= name %> = new <%= name %>Collection();
55
- export default <%= name %>;<% } %>
1
+ import { Mongo } from 'meteor/mongo';<% if (where === 'client') { -%>
2
+ export const <%= name %> = new Mongo.Collection(null);<% } else { %>
3
+
4
+ class <%= name %>Collection extends Mongo.Collection<<%=name%>Collection> {
5
+ publicFields: any;
6
+ privateFields: any;
7
+ allow: any = () => {};
8
+
9
+ constructor() {
10
+ super('<%= name %>');
11
+
12
+ this.publicFields = {};
13
+ this.privateFields = {};
14
+ this.allow({
15
+ insert() { return false; },
16
+ update() { return false; },
17
+ remove() { return false; },
18
+ });
19
+ }
20
+
21
+ async createIndexAsync(index: any, options: any) {
22
+ return await createIndexAsync(index, options);
23
+ }
24
+
25
+ find(selector = {}, modifier?: any) {
26
+ return super.find(selector, modifier);
27
+ }
28
+
29
+ async findOneAsync(selector = {}, modifier?: any) {
30
+ return super.findOneAsync(selector, modifier);
31
+ }
32
+
33
+ async insertAsync(doc: any) {
34
+ return await super.insertAsync(doc);
35
+ }
36
+
37
+ async updateAsync(selector: any, modifier?: any) {
38
+ return await super.updateAsync(selector, modifier);
39
+ }
40
+
41
+ async upsertAsync(selector: any, modifier?: any, options?: any) {
42
+ return await super.upsertAsync(selector, modifier, options);
43
+ }
44
+
45
+ async removeAsync(selector: any) {
46
+ return await super.removeAsync(selector);
47
+ }
48
+ }
49
+
50
+ /**
51
+ * @memberof Server.<%= name %>
52
+ * @member <%= name %>
53
+ */
54
+ const <%= name %> = new <%= name %>Collection();
55
+ export default <%= name %>;<% } %>
@@ -1,27 +1,27 @@
1
- /* eslint-env jasmine */
2
- import { Meteor } from 'meteor/meteor';
3
-
4
- if (Meteor.isServer) {
5
- const <%= name %> = require('./<%= fileName %>').default;
6
- describe('<%= name %>', () => {
7
- <% if (test === 'jasmine') { %>
8
- it('has been defined', () => {
9
- let isDefined = false;
10
- if(<%= name %>) {
11
- isDefined = true;
12
- }
13
-
14
- expect(isDefined).toBe(true);
15
-
16
- });
17
- <% } else if (test === 'mocha') { %>
18
- it('has been defined', () => {
19
- let isDefined = false;
20
- if(<%= name %>) {
21
- isDefined = true;
22
- }
23
- assert.equal(isDefined, true);
24
- });
25
- <% } %>
26
- });
27
- }
1
+ /* eslint-env jasmine */
2
+ import { Meteor } from 'meteor/meteor';
3
+
4
+ if (Meteor.isServer) {
5
+ const <%= name %> = require('./<%= fileName %>').default;
6
+ describe('<%= name %>', () => {
7
+ <% if (test === 'jasmine') { %>
8
+ it('has been defined', () => {
9
+ let isDefined = false;
10
+ if(<%= name %>) {
11
+ isDefined = true;
12
+ }
13
+
14
+ expect(isDefined).toBe(true);
15
+
16
+ });
17
+ <% } else if (test === 'mocha') { %>
18
+ it('has been defined', () => {
19
+ let isDefined = false;
20
+ if(<%= name %>) {
21
+ isDefined = true;
22
+ }
23
+ assert.equal(isDefined, true);
24
+ });
25
+ <% } %>
26
+ });
27
+ }
@@ -1,27 +1,27 @@
1
- /* eslint-env jasmine */
2
- import { Meteor } from 'meteor/meteor';
3
-
4
- if (Meteor.isServer) {
5
- const <%= name %> = require('./<%= fileName %>').default;
6
- describe('<%= name %>', () => {
7
- <% if (test === 'jasmine') { %>
8
- it('has been defined', () => {
9
- let isDefined = false;
10
- if(<%= name %>) {
11
- isDefined = true;
12
- }
13
-
14
- expect(isDefined).toBe(true);
15
-
16
- });
17
- <% } else if (test === 'mocha') { %>
18
- it('has been defined', () => {
19
- let isDefined = false;
20
- if(<%= name %>) {
21
- isDefined = true;
22
- }
23
- assert.equal(isDefined, true);
24
- });
25
- <% } %>
26
- });
27
- }
1
+ /* eslint-env jasmine */
2
+ import { Meteor } from 'meteor/meteor';
3
+
4
+ if (Meteor.isServer) {
5
+ const <%= name %> = require('./<%= fileName %>').default;
6
+ describe('<%= name %>', () => {
7
+ <% if (test === 'jasmine') { %>
8
+ it('has been defined', () => {
9
+ let isDefined = false;
10
+ if(<%= name %>) {
11
+ isDefined = true;
12
+ }
13
+
14
+ expect(isDefined).toBe(true);
15
+
16
+ });
17
+ <% } else if (test === 'mocha') { %>
18
+ it('has been defined', () => {
19
+ let isDefined = false;
20
+ if(<%= name %>) {
21
+ isDefined = true;
22
+ }
23
+ assert.equal(isDefined, true);
24
+ });
25
+ <% } %>
26
+ });
27
+ }
@@ -1,101 +1,101 @@
1
- # DATA VOLUME: if a second, bare (unpartitioned, unformatted) disk is
2
- # attached to this instance, claim it for the bundle -- the thing most
3
- # likely to blow out a small root volume on a redeploy (a staged
4
- # extract briefly holds old + new bundle at once). A disk that already
5
- # has partitions is left alone; only a genuinely blank one gets
6
- # formatted. No-op on a single-disk box.
7
- ROOT_DISK=$(lsblk -no pkname "$(findmnt -no SOURCE /)" 2>/dev/null)
8
- DATA_DEV=$(lsblk -ndo NAME,TYPE | awk -v root="$ROOT_DISK" '$2=="disk" && $1!=root {print $1; exit}')
9
- if [ -n "$DATA_DEV" ] && ! mountpoint -q /mnt/data; then
10
- sudo mkdir -p /mnt/data
11
- if [ "$(lsblk -ndo NAME "/dev/$DATA_DEV" | wc -l)" = "1" ]; then
12
- sudo blkid "/dev/$DATA_DEV" >/dev/null 2>&1 || sudo mkfs -t ext4 -L data "/dev/$DATA_DEV"
13
- UUID=$(sudo blkid -s UUID -o value "/dev/$DATA_DEV")
14
- grep -q "$UUID" /etc/fstab || echo "UUID=$UUID /mnt/data ext4 defaults,nofail 0 2" | sudo tee -a /etc/fstab
15
- sudo mount /mnt/data
16
- sudo chown "$(whoami):$(whoami)" /mnt/data
17
- else
18
- echo "/dev/$DATA_DEV has existing partitions -- not touching it automatically"
19
- fi
20
- fi
21
- BUNDLE_ROOT=$HOME
22
- mountpoint -q /mnt/data && BUNDLE_ROOT=/mnt/data
23
- sudo apt-get update
24
- # install git and nginx
25
- sudo apt install build-essential git nginx -y
26
- # setup node and npm with the proper node version using nvm
27
- git clone https://gist.github.com/c427ccd6f4377b39299b9d402f5d51fe.git ~/maka-env/nvm-install
28
- rm -rf ~/.bash_profile ~/.bashrc
29
- touch ~/.bash_profile ~/.bashrc
30
- echo "test -f ~/.bashrc && . ~/.bashrc" > ~/.bash_profile
31
- chmod +x ~/maka-env/nvm-install/nvm-install.sh && ~/maka-env/nvm-install/nvm-install.sh
32
- source ~/.bashrc
33
- nvm install <%= nodeVersion %> || nvm install <%= fallbackVersion %>
34
- [ "$(nvm current)" == "<%= nodeVersion %>" ] && nvm alias default <%= nodeVersion %> || nvm alias default <%= fallbackVersion %>
35
- npm install -g pm2@latest
36
- npm install -g @dotenvx/dotenvx@latest
37
- pm2 install pm2-logrotate
38
- pm2 set pm2-logrotate:max_size 20M
39
- pm2 set pm2-logrotate:compress true
40
- pm2 set pm2-logrotate:retain 30
41
- rm -rf ~/maka-env/nvm-install
42
- # Prepare nginx
43
- [ -d /etc/systemd/system/nginx.service.d ] && echo "nginx.service.d exists" || sudo mkdir /etc/systemd/system/nginx.service.d
44
- printf "[Service]\nExecStartPost=/bin/sleep 0.1\n" > override.conf
45
- sudo cp override.conf /etc/systemd/system/nginx.service.d/override.conf
46
- sudo systemctl daemon-reload || null
47
- sudo systemctl stop nginx
48
- sudo nginx -s stop
49
- sudo cp ~/nginx.conf /etc/nginx/sites-enabled/default
50
- sudo systemctl daemon-reload && sudo systemctl start nginx
51
- # Ensure certbot is installed and re-inject the SSL server block that
52
- # `sudo cp` above just overwrote (domain/email from letsencrypt.json).
53
- # certbot --nginx is idempotent: skips reissuing a still-valid cert but
54
- # always makes sure the nginx config has the SSL block wired in.
55
- sudo snap install core >/dev/null 2>&1
56
- sudo snap refresh core >/dev/null 2>&1
57
- sudo snap install --classic certbot >/dev/null 2>&1 || true
58
- [ -L /usr/bin/certbot ] || sudo ln -s /snap/bin/certbot /usr/bin/certbot
59
- sudo certbot --nginx --agree-tos --expand -n --domains <%= domainNames %> --email <%= emailUpdate %>
60
- # Decompress the bundle -- extracted onto BUNDLE_ROOT (the data volume
61
- # when one's attached, see above), with ~/bundle symlinked to it so
62
- # everything downstream (pm2, `cd bundle/programs/server` below) keeps
63
- # resolving relative to $HOME unchanged.
64
- echo "Attempting to decompress the bundle"
65
- if [ -f app.tar.gz ]; then
66
- echo "Bundle found, decompressing"
67
- rm -rf "$BUNDLE_ROOT/bundle"
68
- tar -xf app.tar.gz -C "$BUNDLE_ROOT"
69
- elif [ -f app.tar.gz.bk ]; then
70
- echo "No bundle found, using backup"
71
- cp app.tar.gz.bk app.tar.gz
72
- rm -rf "$BUNDLE_ROOT/bundle"
73
- tar -xf app.tar.gz -C "$BUNDLE_ROOT"
74
- else
75
- echo "Could not find app.tar.gz, exiting!"
76
- exit 1
77
- fi
78
- [ "$BUNDLE_ROOT" = "$HOME" ] || ln -sfn "$BUNDLE_ROOT/bundle" ~/bundle
79
- cd bundle/programs/server
80
- npm install
81
- npm audit fix --force
82
- cd ~
83
- # Reset pm2
84
- pm2 delete all
85
- # updating PM2 to latest
86
- pm2 update
87
- # Bring up pm2 with environment
88
- if [ -f ~/process.env ]; then
89
- dotenvx run -f ~/process.env -- pm2 start ~/pm2.config.js
90
- else
91
- pm2 start ~/pm2.config.js
92
- fi
93
- # Configure pm2 to start on boot
94
- pm2 startup
95
- sudo env PATH=$PATH:$(which npm) $(which pm2) startup systemd -u <%= ec2User %> --hp /home/<%= ec2User %>
96
- pm2 save
97
- # remove backup tar, if any
98
- # rm -f ~/app.tar.gz.bk
99
- # backup tar bundle
100
- mv ~/app.tar.gz ~/app.tar.gz.bk
101
- exit 0
1
+ # DATA VOLUME: if a second, bare (unpartitioned, unformatted) disk is
2
+ # attached to this instance, claim it for the bundle -- the thing most
3
+ # likely to blow out a small root volume on a redeploy (a staged
4
+ # extract briefly holds old + new bundle at once). A disk that already
5
+ # has partitions is left alone; only a genuinely blank one gets
6
+ # formatted. No-op on a single-disk box.
7
+ ROOT_DISK=$(lsblk -no pkname "$(findmnt -no SOURCE /)" 2>/dev/null)
8
+ DATA_DEV=$(lsblk -ndo NAME,TYPE | awk -v root="$ROOT_DISK" '$2=="disk" && $1!=root {print $1; exit}')
9
+ if [ -n "$DATA_DEV" ] && ! mountpoint -q /mnt/data; then
10
+ sudo mkdir -p /mnt/data
11
+ if [ "$(lsblk -ndo NAME "/dev/$DATA_DEV" | wc -l)" = "1" ]; then
12
+ sudo blkid "/dev/$DATA_DEV" >/dev/null 2>&1 || sudo mkfs -t ext4 -L data "/dev/$DATA_DEV"
13
+ UUID=$(sudo blkid -s UUID -o value "/dev/$DATA_DEV")
14
+ grep -q "$UUID" /etc/fstab || echo "UUID=$UUID /mnt/data ext4 defaults,nofail 0 2" | sudo tee -a /etc/fstab
15
+ sudo mount /mnt/data
16
+ sudo chown "$(whoami):$(whoami)" /mnt/data
17
+ else
18
+ echo "/dev/$DATA_DEV has existing partitions -- not touching it automatically"
19
+ fi
20
+ fi
21
+ BUNDLE_ROOT=$HOME
22
+ mountpoint -q /mnt/data && BUNDLE_ROOT=/mnt/data
23
+ sudo apt-get update
24
+ # install git and nginx
25
+ sudo apt install build-essential git nginx -y
26
+ # setup node and npm with the proper node version using nvm
27
+ git clone https://gist.github.com/c427ccd6f4377b39299b9d402f5d51fe.git ~/maka-env/nvm-install
28
+ rm -rf ~/.bash_profile ~/.bashrc
29
+ touch ~/.bash_profile ~/.bashrc
30
+ echo "test -f ~/.bashrc && . ~/.bashrc" > ~/.bash_profile
31
+ chmod +x ~/maka-env/nvm-install/nvm-install.sh && ~/maka-env/nvm-install/nvm-install.sh
32
+ source ~/.bashrc
33
+ nvm install <%= nodeVersion %> || nvm install <%= fallbackVersion %>
34
+ [ "$(nvm current)" == "<%= nodeVersion %>" ] && nvm alias default <%= nodeVersion %> || nvm alias default <%= fallbackVersion %>
35
+ npm install -g pm2@latest
36
+ npm install -g @dotenvx/dotenvx@latest
37
+ pm2 install pm2-logrotate
38
+ pm2 set pm2-logrotate:max_size 20M
39
+ pm2 set pm2-logrotate:compress true
40
+ pm2 set pm2-logrotate:retain 30
41
+ rm -rf ~/maka-env/nvm-install
42
+ # Prepare nginx
43
+ [ -d /etc/systemd/system/nginx.service.d ] && echo "nginx.service.d exists" || sudo mkdir /etc/systemd/system/nginx.service.d
44
+ printf "[Service]\nExecStartPost=/bin/sleep 0.1\n" > override.conf
45
+ sudo cp override.conf /etc/systemd/system/nginx.service.d/override.conf
46
+ sudo systemctl daemon-reload || null
47
+ sudo systemctl stop nginx
48
+ sudo nginx -s stop
49
+ sudo cp ~/nginx.conf /etc/nginx/sites-enabled/default
50
+ sudo systemctl daemon-reload && sudo systemctl start nginx
51
+ # Ensure certbot is installed and re-inject the SSL server block that
52
+ # `sudo cp` above just overwrote (domain/email from letsencrypt.json).
53
+ # certbot --nginx is idempotent: skips reissuing a still-valid cert but
54
+ # always makes sure the nginx config has the SSL block wired in.
55
+ sudo snap install core >/dev/null 2>&1
56
+ sudo snap refresh core >/dev/null 2>&1
57
+ sudo snap install --classic certbot >/dev/null 2>&1 || true
58
+ [ -L /usr/bin/certbot ] || sudo ln -s /snap/bin/certbot /usr/bin/certbot
59
+ sudo certbot --nginx --agree-tos --expand -n --domains <%= domainNames %> --email <%= emailUpdate %>
60
+ # Decompress the bundle -- extracted onto BUNDLE_ROOT (the data volume
61
+ # when one's attached, see above), with ~/bundle symlinked to it so
62
+ # everything downstream (pm2, `cd bundle/programs/server` below) keeps
63
+ # resolving relative to $HOME unchanged.
64
+ echo "Attempting to decompress the bundle"
65
+ if [ -f app.tar.gz ]; then
66
+ echo "Bundle found, decompressing"
67
+ rm -rf "$BUNDLE_ROOT/bundle"
68
+ tar -xf app.tar.gz -C "$BUNDLE_ROOT"
69
+ elif [ -f app.tar.gz.bk ]; then
70
+ echo "No bundle found, using backup"
71
+ cp app.tar.gz.bk app.tar.gz
72
+ rm -rf "$BUNDLE_ROOT/bundle"
73
+ tar -xf app.tar.gz -C "$BUNDLE_ROOT"
74
+ else
75
+ echo "Could not find app.tar.gz, exiting!"
76
+ exit 1
77
+ fi
78
+ [ "$BUNDLE_ROOT" = "$HOME" ] || ln -sfn "$BUNDLE_ROOT/bundle" ~/bundle
79
+ cd bundle/programs/server
80
+ npm install
81
+ npm audit fix --force
82
+ cd ~
83
+ # Reset pm2
84
+ pm2 delete all
85
+ # updating PM2 to latest
86
+ pm2 update
87
+ # Bring up pm2 with environment
88
+ if [ -f ~/process.env ]; then
89
+ dotenvx run -f ~/process.env -- pm2 start ~/pm2.config.js
90
+ else
91
+ pm2 start ~/pm2.config.js
92
+ fi
93
+ # Configure pm2 to start on boot
94
+ pm2 startup
95
+ sudo env PATH=$PATH:$(which npm) $(which pm2) startup systemd -u <%= ec2User %> --hp /home/<%= ec2User %>
96
+ pm2 save
97
+ # remove backup tar, if any
98
+ # rm -f ~/app.tar.gz.bk
99
+ # backup tar bundle
100
+ mv ~/app.tar.gz ~/app.tar.gz.bk
101
+ exit 0
@@ -1,17 +1,17 @@
1
- version: "3.7"
2
- services:
3
- <%= app %>:
4
- image: "<%= appFileCase %>:latest"
5
- ports:
6
- - 80:3000
7
- volumes:
8
- - ./pm2.config.js:/home/ubuntu/pm2.config.js
9
- - ./settings.json:/home/ubuntu/settings.json
10
-
11
- mongo:
12
- image: "mongo"
13
- ports:
14
- - 27017:27017
15
-
16
- networks:
17
- default:
1
+ version: "3.7"
2
+ services:
3
+ <%= app %>:
4
+ image: "<%= appFileCase %>:latest"
5
+ ports:
6
+ - 80:3000
7
+ volumes:
8
+ - ./pm2.config.js:/home/ubuntu/pm2.config.js
9
+ - ./settings.json:/home/ubuntu/settings.json
10
+
11
+ mongo:
12
+ image: "mongo"
13
+ ports:
14
+ - 27017:27017
15
+
16
+ networks:
17
+ default:
@@ -1,31 +1,31 @@
1
- server_tokens off;
2
- map $http_upgrade $connection_upgrade {
3
- default upgrade;
4
- '' close;
5
- }
6
-
7
- server {
8
- listen 80 default_server;
9
- listen [::]:80 default_server ipv6only=on;
10
- <% if (domainNames) { -%>
11
- server_name <%= domainNames.split(',').map(function(d) { return d.trim(); }).join(' ') %>;
12
- <% } -%>
13
- if ($http_user_agent ~ "MSIE" ) {
14
- return 303 https://browser-update.org/update.html;
15
- }
16
- location = /favicon.ico {
17
- alias /home/<%= ec2User %>/bundle/programs/web.browser/app;
18
- }
19
-
20
- location / {
21
- proxy_pass http://0.0.0.0:3000;
22
- proxy_http_version 1.1;
23
- proxy_set_header Upgrade $http_upgrade;
24
- proxy_set_header Connection "upgrade";
25
- proxy_set_header X-Forwarded-For $remote_addr;
26
- proxy_set_header Host $host;
27
- if ($uri != '/') {
28
- expires 30d;
29
- }
30
- }
31
- }
1
+ server_tokens off;
2
+ map $http_upgrade $connection_upgrade {
3
+ default upgrade;
4
+ '' close;
5
+ }
6
+
7
+ server {
8
+ listen 80 default_server;
9
+ listen [::]:80 default_server ipv6only=on;
10
+ <% if (domainNames) { -%>
11
+ server_name <%= domainNames.split(',').map(function(d) { return d.trim(); }).join(' ') %>;
12
+ <% } -%>
13
+ if ($http_user_agent ~ "MSIE" ) {
14
+ return 303 https://browser-update.org/update.html;
15
+ }
16
+ location = /favicon.ico {
17
+ alias /home/<%= ec2User %>/bundle/programs/web.browser/app;
18
+ }
19
+
20
+ location / {
21
+ proxy_pass http://0.0.0.0:3000;
22
+ proxy_http_version 1.1;
23
+ proxy_set_header Upgrade $http_upgrade;
24
+ proxy_set_header Connection "upgrade";
25
+ proxy_set_header X-Forwarded-For $remote_addr;
26
+ proxy_set_header Host $host;
27
+ if ($uri != '/') {
28
+ expires 30d;
29
+ }
30
+ }
31
+ }