@maka/maka-cli 5.123.0 → 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 (254) 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 +2 -2
  20. package/bundle/typescript/src/commands/env/env.command.js +8 -8
  21. package/bundle/typescript/src/commands/env/set.sub.cmd.js +11 -11
  22. package/bundle/typescript/src/commands/game/sideQuest/commands/go.js +1 -1
  23. package/bundle/typescript/src/commands/game/sideQuest/commands/search.js +9 -9
  24. package/bundle/typescript/src/commands/game/sideQuest/commands/source.js +7 -7
  25. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-chunks.js +443 -443
  26. package/bundle/typescript/src/commands/game/sideQuest/factories/scene-factory.js +6 -6
  27. package/bundle/typescript/src/commands/game/sideQuest/game.js +1 -1
  28. package/bundle/typescript/src/commands/game/sideQuest/models/npc.js +206 -206
  29. package/bundle/typescript/src/commands/game/sideQuest/models/room.js +9 -9
  30. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene1.json +556 -556
  31. package/bundle/typescript/src/commands/game/sideQuest/scenes/scene2.json +1447 -1447
  32. package/bundle/typescript/src/commands/game/sideQuest/utilities/ephemeral.js +14 -14
  33. package/bundle/typescript/src/commands/game/sideQuest-backlog.sub.cmd.js +2 -2
  34. package/bundle/typescript/src/commands/game/sideQuest.sub.cmd.js +2 -2
  35. package/bundle/typescript/src/commands/generate.js +2 -2
  36. package/bundle/typescript/src/commands/lint.js +10 -10
  37. package/bundle/typescript/src/commands/maka.cmd.js +26 -26
  38. package/bundle/typescript/src/commands/murder.js +14 -14
  39. package/bundle/typescript/src/commands/proxy.js +13 -13
  40. package/bundle/typescript/src/commands/remote/reconfig.sub.cmd.js +6 -6
  41. package/bundle/typescript/src/commands/run/docker.sub.cmd.js +11 -11
  42. package/bundle/typescript/src/commands/run/run.command.js +24 -24
  43. package/bundle/typescript/src/commands/set/global.sub.cmd.js +8 -8
  44. package/bundle/typescript/src/commands/set/local.sub.cmd.js +2 -2
  45. package/bundle/typescript/src/commands/set/set.command.js +3 -3
  46. package/bundle/typescript/src/commands/testCmd/test.command.js +2 -2
  47. package/bundle/typescript/src/exec.js +0 -0
  48. package/bundle/typescript/src/generators/api.js +11 -11
  49. package/bundle/typescript/src/generators/collection.js +6 -6
  50. package/bundle/typescript/src/generators/hook.js +10 -10
  51. package/bundle/typescript/src/generators/kits/auth/auth.generator.js +2 -2
  52. package/bundle/typescript/src/generators/kits/auth/auth0-meteor.auth.gen.js +612 -612
  53. package/bundle/typescript/src/generators/kits/auth/basic-meteor.auth.gen.js +48 -48
  54. package/bundle/typescript/src/generators/kits/auth/provider.auth.gen.js +12 -12
  55. package/bundle/typescript/src/generators/kits/esri/esri.generator.js +3 -3
  56. package/bundle/typescript/src/generators/kits/esri/map.esri.gen.js +7 -7
  57. package/bundle/typescript/src/generators/kits/frames/frames.generator.js +16 -16
  58. package/bundle/typescript/src/generators/kits/mui/auth.mui.gen.js +2 -2
  59. package/bundle/typescript/src/generators/kits/mui/auth0.mui.gen.js +5 -5
  60. package/bundle/typescript/src/generators/kits/mui/frame.mui.gen.js +4 -4
  61. package/bundle/typescript/src/generators/kits/mui/mui.generator.js +22 -22
  62. package/bundle/typescript/src/generators/services/translation.js +5 -5
  63. package/bundle/typescript/src/templates/aws/cloudformation/create-ec2-instance.template +14 -14
  64. package/bundle/typescript/src/templates/meteor/api/api.js +20 -20
  65. package/bundle/typescript/src/templates/meteor/api/api.js.ts +20 -20
  66. package/bundle/typescript/src/templates/meteor/api/apollo-gateway.js +50 -50
  67. package/bundle/typescript/src/templates/meteor/api/apollo-gateway.js.ts +55 -55
  68. package/bundle/typescript/src/templates/meteor/api/graphql-api.js +63 -63
  69. package/bundle/typescript/src/templates/meteor/api/graphql-api.js.ts +69 -69
  70. package/bundle/typescript/src/templates/meteor/api/methods.js +39 -39
  71. package/bundle/typescript/src/templates/meteor/api/methods.js.ts +40 -40
  72. package/bundle/typescript/src/templates/meteor/api/register-api.js +3 -3
  73. package/bundle/typescript/src/templates/meteor/api/register-api.js.ts +3 -3
  74. package/bundle/typescript/src/templates/meteor/api/resolvers.js +9 -9
  75. package/bundle/typescript/src/templates/meteor/api/resolvers.js.ts +9 -9
  76. package/bundle/typescript/src/templates/meteor/api/typeDefs.js +6 -6
  77. package/bundle/typescript/src/templates/meteor/api/typeDefs.js.ts +6 -6
  78. package/bundle/typescript/src/templates/meteor/app/client/body.html +3 -3
  79. package/bundle/typescript/src/templates/meteor/app/client/head.html +12 -12
  80. package/bundle/typescript/src/templates/meteor/app/client/main.js +15 -15
  81. package/bundle/typescript/src/templates/meteor/app/client/main.js.jsx +15 -15
  82. package/bundle/typescript/src/templates/meteor/app/client/main.js.ts +17 -17
  83. package/bundle/typescript/src/templates/meteor/app/client/main.js.tsx +17 -17
  84. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js +20 -20
  85. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.jsx +107 -107
  86. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.ts +20 -20
  87. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/index.js.tsx +108 -108
  88. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js +39 -39
  89. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.jsx +33 -33
  90. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.ts +24 -24
  91. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/routes.js.tsx +33 -33
  92. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js +9 -9
  93. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.jsx +9 -9
  94. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.ts +9 -9
  95. package/bundle/typescript/src/templates/meteor/app/imports/startup/client/templates.js.tsx +9 -9
  96. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js +1 -1
  97. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.jsx +20 -20
  98. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.ts +1 -1
  99. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/index.js.tsx +20 -20
  100. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/routes.js.jsx +28 -28
  101. package/bundle/typescript/src/templates/meteor/app/imports/startup/lib/routes.js.tsx +28 -28
  102. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js +1 -1
  103. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js.jsx +95 -95
  104. package/bundle/typescript/src/templates/meteor/app/imports/startup/server/index.js.tsx +98 -98
  105. package/bundle/typescript/src/templates/meteor/app/imports/ui/test-helpers.js +24 -24
  106. package/bundle/typescript/src/templates/meteor/app/imports/ui/test-helpers.js.ts +24 -24
  107. package/bundle/typescript/src/templates/meteor/app/lib/main.js +3 -3
  108. package/bundle/typescript/src/templates/meteor/app/lib/main.js.jsx +3 -3
  109. package/bundle/typescript/src/templates/meteor/app/lib/main.js.ts +3 -3
  110. package/bundle/typescript/src/templates/meteor/app/lib/main.js.tsx +3 -3
  111. package/bundle/typescript/src/templates/meteor/app/maka.d.ts +533 -533
  112. package/bundle/typescript/src/templates/meteor/app/meteor.d.ts +181 -181
  113. package/bundle/typescript/src/templates/meteor/app/public/manifest.json +27 -27
  114. package/bundle/typescript/src/templates/meteor/app/public/sw.js +30 -30
  115. package/bundle/typescript/src/templates/meteor/app/public/sw.js.jsx +30 -30
  116. package/bundle/typescript/src/templates/meteor/app/public/sw.js.ts +30 -30
  117. package/bundle/typescript/src/templates/meteor/app/public/sw.js.tsx +30 -30
  118. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js +179 -179
  119. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.jsx +179 -179
  120. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.ts +179 -179
  121. package/bundle/typescript/src/templates/meteor/app/server/helmet-csp.js.tsx +179 -179
  122. package/bundle/typescript/src/templates/meteor/app/server/main.js +13 -13
  123. package/bundle/typescript/src/templates/meteor/app/server/main.js.jsx +13 -13
  124. package/bundle/typescript/src/templates/meteor/app/server/main.js.ts +14 -14
  125. package/bundle/typescript/src/templates/meteor/app/server/main.js.tsx +14 -14
  126. package/bundle/typescript/src/templates/meteor/app/tsconfig.json +42 -42
  127. package/bundle/typescript/src/templates/meteor/collection/collection.js +51 -51
  128. package/bundle/typescript/src/templates/meteor/collection/collection.js.ts +55 -55
  129. package/bundle/typescript/src/templates/meteor/collection/tests.js +27 -27
  130. package/bundle/typescript/src/templates/meteor/collection/tests.js.ts +27 -27
  131. package/bundle/typescript/src/templates/meteor/config/deploy.sh.template +101 -101
  132. package/bundle/typescript/src/templates/meteor/config/docker-compose.yaml +17 -17
  133. package/bundle/typescript/src/templates/meteor/config/nginx.conf.template +31 -31
  134. package/bundle/typescript/src/templates/meteor/config/pm2.config.js +27 -27
  135. package/bundle/typescript/src/templates/meteor/config/process.env +5 -5
  136. package/bundle/typescript/src/templates/meteor/config/settings.json +11 -11
  137. package/bundle/typescript/src/templates/meteor/config/ssh.json +6 -6
  138. package/bundle/typescript/src/templates/meteor/dbc/config.js +70 -70
  139. package/bundle/typescript/src/templates/meteor/dbc/config.js.ts +70 -70
  140. package/bundle/typescript/src/templates/meteor/dbc/conn.js +37 -37
  141. package/bundle/typescript/src/templates/meteor/dbc/conn.js.ts +37 -37
  142. package/bundle/typescript/src/templates/meteor/dbc/register-dbc.js +3 -3
  143. package/bundle/typescript/src/templates/meteor/dbc/register-dbc.js.ts +3 -3
  144. package/bundle/typescript/src/templates/meteor/github/workflows/deploy.yaml +150 -150
  145. package/bundle/typescript/src/templates/meteor/method/method.js +48 -48
  146. package/bundle/typescript/src/templates/meteor/method/method.js.ts +48 -48
  147. package/bundle/typescript/src/templates/meteor/package/package.js +37 -37
  148. package/bundle/typescript/src/templates/meteor/package/package.js.jsx +37 -37
  149. package/bundle/typescript/src/templates/meteor/package/package.js.ts +36 -36
  150. package/bundle/typescript/src/templates/meteor/package/package.js.tsx +37 -37
  151. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js +5 -5
  152. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.jsx +5 -5
  153. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.ts +5 -5
  154. package/bundle/typescript/src/templates/meteor/package/tests/client/package.js.tsx +5 -5
  155. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js +5 -5
  156. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.jsx +5 -5
  157. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.ts +5 -5
  158. package/bundle/typescript/src/templates/meteor/package/tests/server/package.js.tsx +5 -5
  159. package/bundle/typescript/src/templates/meteor/project/.maka/config.json +29 -29
  160. package/bundle/typescript/src/templates/meteor/project/README.md +33 -33
  161. package/bundle/typescript/src/templates/meteor/project/build/README +4 -4
  162. package/bundle/typescript/src/templates/meteor/project/gitignore +10 -10
  163. package/bundle/typescript/src/templates/meteor/project/package.json +29 -29
  164. package/bundle/typescript/src/templates/meteor/publish/publish.js +7 -7
  165. package/bundle/typescript/src/templates/meteor/publish/publish.js.ts +7 -7
  166. package/bundle/typescript/src/templates/meteor/service/logger/logger.js +27 -27
  167. package/bundle/typescript/src/templates/meteor/service/logger/logger.js.ts +27 -27
  168. package/bundle/typescript/src/templates/meteor/stylesheet/stylesheet.css +5 -5
  169. package/bundle/typescript/src/templates/meteor/stylesheet/stylesheet.css.less +5 -5
  170. package/bundle/typescript/src/templates/meteor/template/template-tests.js +1 -1
  171. package/bundle/typescript/src/templates/meteor/template/template-tests.js.jsx +55 -55
  172. package/bundle/typescript/src/templates/meteor/template/template-tests.js.ts +1 -1
  173. package/bundle/typescript/src/templates/meteor/template/template-tests.js.tsx +55 -55
  174. package/bundle/typescript/src/templates/meteor/template/template.css +3 -3
  175. package/bundle/typescript/src/templates/meteor/template/template.css.less +3 -3
  176. package/bundle/typescript/src/templates/meteor/template/template.css.scss +3 -3
  177. package/bundle/typescript/src/templates/meteor/template/template.html +5 -5
  178. package/bundle/typescript/src/templates/meteor/template/template.js +20 -20
  179. package/bundle/typescript/src/templates/meteor/template/template.js.jsx +77 -77
  180. package/bundle/typescript/src/templates/meteor/template/template.js.ts +1 -1
  181. package/bundle/typescript/src/templates/meteor/template/template.js.tsx +89 -89
  182. package/bundle/typescript/src/templates/react/component/component.css +6 -6
  183. package/bundle/typescript/src/templates/react/component/component.css.less +6 -6
  184. package/bundle/typescript/src/templates/react/component/component.css.scss +3 -3
  185. package/bundle/typescript/src/templates/react/component/component.js.jsx +59 -59
  186. package/bundle/typescript/src/templates/react/component/component.js.tsx +65 -65
  187. package/bundle/typescript/src/templates/react/hook/hook.css +3 -3
  188. package/bundle/typescript/src/templates/react/hook/hook.css.scss +3 -3
  189. package/bundle/typescript/src/templates/react/hook/hook.js.jsx +19 -19
  190. package/bundle/typescript/src/templates/react/hook/hook.js.tsx +19 -19
  191. package/bundle/typescript/src/templates/react/kit/auth/provider/authentication-provider.js.jsx +306 -306
  192. package/bundle/typescript/src/templates/react/kit/auth/provider/authentication-provider.js.tsx +350 -350
  193. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-client.js.jsx +178 -178
  194. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-client.js.tsx +178 -178
  195. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-config.js.jsx +59 -59
  196. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-config.js.tsx +67 -67
  197. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-methods.js.jsx +273 -273
  198. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-methods.js.tsx +275 -275
  199. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-validator.js.jsx +182 -182
  200. package/bundle/typescript/src/templates/react/kit/auth/service/auth0-validator.js.tsx +199 -199
  201. package/bundle/typescript/src/templates/react/kit/auth/service/meteor-auth-service.js.jsx +138 -138
  202. package/bundle/typescript/src/templates/react/kit/auth/service/meteor-auth-service.js.tsx +153 -153
  203. package/bundle/typescript/src/templates/react/kit/esri/map/basic-map.js.jsx +29 -29
  204. package/bundle/typescript/src/templates/react/kit/esri/map/basic-map.js.tsx +32 -32
  205. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.css +63 -63
  206. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.jsx +153 -153
  207. package/bundle/typescript/src/templates/react/kit/frames/frames-demo.tsx +164 -164
  208. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.css +105 -105
  209. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.jsx +158 -158
  210. package/bundle/typescript/src/templates/react/kit/frames/workspace-manager.tsx +166 -166
  211. package/bundle/typescript/src/templates/react/kit/mui/auth/forgot-password/basic-forgot-password-page.js.jsx +34 -34
  212. package/bundle/typescript/src/templates/react/kit/mui/auth/forgot-password/basic-forgot-password-page.js.tsx +33 -33
  213. package/bundle/typescript/src/templates/react/kit/mui/auth/login/basic-login-page.js.jsx +53 -53
  214. package/bundle/typescript/src/templates/react/kit/mui/auth/login/basic-login-page.js.tsx +53 -53
  215. package/bundle/typescript/src/templates/react/kit/mui/auth/logout/basic-logout-page.js.jsx +25 -25
  216. package/bundle/typescript/src/templates/react/kit/mui/auth/logout/basic-logout-page.js.tsx +25 -25
  217. package/bundle/typescript/src/templates/react/kit/mui/auth/password-reset/basic-password-reset-page.js.jsx +41 -41
  218. package/bundle/typescript/src/templates/react/kit/mui/auth/password-reset/basic-password-reset-page.js.tsx +34 -34
  219. package/bundle/typescript/src/templates/react/kit/mui/auth/register/basic-register-page.js.jsx +33 -33
  220. package/bundle/typescript/src/templates/react/kit/mui/auth/register/basic-register-page.js.tsx +33 -33
  221. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth-callback.js.jsx +71 -71
  222. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth-callback.js.tsx +71 -71
  223. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-account-settings.js.jsx +123 -123
  224. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-account-settings.js.tsx +123 -123
  225. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-login-button.js.jsx +56 -56
  226. package/bundle/typescript/src/templates/react/kit/mui/auth0/auth0-login-button.js.tsx +74 -74
  227. package/bundle/typescript/src/templates/react/kit/mui/frame/app-bars/basic-app-bar.js.jsx +43 -43
  228. package/bundle/typescript/src/templates/react/kit/mui/frame/app-bars/basic-app-bar.js.tsx +43 -43
  229. package/bundle/typescript/src/templates/react/kit/mui/frame/drawers/basic-drawer.js.jsx +121 -121
  230. package/bundle/typescript/src/templates/react/kit/mui/frame/drawers/basic-drawer.js.tsx +117 -117
  231. package/bundle/typescript/src/templates/react/kit/mui/frame/footers/basic-sticky-footer.js.jsx +41 -41
  232. package/bundle/typescript/src/templates/react/kit/mui/frame/footers/basic-sticky-footer.js.tsx +41 -41
  233. package/bundle/typescript/src/templates/react/route/route.js +8 -8
  234. package/bundle/typescript/src/templates/react/route/route.js.jsx +5 -5
  235. package/bundle/typescript/src/templates/react/route/route.js.ts +8 -8
  236. package/bundle/typescript/src/templates/react/route/route.js.tsx +5 -5
  237. package/bundle/typescript/src/templates/react/test/test.js +1 -1
  238. package/bundle/typescript/src/templates/react/test/test.js.jsx +40 -40
  239. package/bundle/typescript/src/templates/react/test/test.js.ts +1 -1
  240. package/bundle/typescript/src/templates/react/test/test.js.tsx +40 -40
  241. package/bundle/typescript/src/templates/service/docker/Dockerfile +54 -54
  242. package/bundle/typescript/src/templates/service/eslint/babel.config.js +16 -16
  243. package/bundle/typescript/src/templates/service/eslint/config.eslint.js +69 -69
  244. package/bundle/typescript/src/templates/service/i18n/i18n.js +33 -33
  245. package/bundle/typescript/src/templates/service/i18n/i18n.js.ts +33 -33
  246. package/bundle/typescript/src/templates/service/i18n/locales.js +3 -3
  247. package/bundle/typescript/src/templates/service/i18n/locales.js.ts +3 -3
  248. package/bundle/typescript/src/templates/service/openssl/openssl.conf +22 -22
  249. package/bundle/typescript/src/templates/service/test/jest/jest.config.js +24 -24
  250. package/bundle/typescript/src/templates/service/test/jest/jest.setup.js +7 -7
  251. package/bundle/typescript/src/tools/mpi/sdk-runtime.d.ts +1 -0
  252. package/bundle/typescript/src/tools/mpi/sdk-runtime.js +29 -0
  253. package/bundle/typescript/src/tools/mpi/sdk-runtime.js.map +1 -1
  254. package/package.json +120 -120
@@ -1,150 +1,150 @@
1
- name: Deploy to EC2
2
-
3
- on:
4
- push:
5
- branches: [<%= branch %>]
6
- workflow_dispatch:
7
-
8
- concurrency:
9
- group: deploy-<%= envName %>
10
- cancel-in-progress: false
11
-
12
- permissions:
13
- contents: read
14
-
15
- jobs:
16
- deploy:
17
- runs-on: ubuntu-latest
18
- environment: <%= envName %>
19
- env:
20
- EC2_HOST: <%= ec2Host %>
21
- EC2_USER: <%= ec2User %>
22
- steps:
23
- - uses: actions/checkout@v4
24
-
25
- - uses: actions/setup-node@v4
26
- with:
27
- node-version: "<%= nodeVersion %>"
28
-
29
- - name: Cache root node_modules
30
- id: cache-root-node-modules
31
- uses: actions/cache@v4
32
- with:
33
- path: node_modules
34
- key: root-npm-${{ hashFiles('package-lock.json') }}
35
-
36
- - name: Install root dependencies (maka-cli)
37
- # maka builds through @maka/meteor-sdk (installed by this npm ci),
38
- # so no separate Meteor download/install is needed.
39
- if: steps.cache-root-node-modules.outputs.cache-hit != 'true'
40
- run: npm ci
41
-
42
- # A lockfile change (an engine pin or any other dependency bump)
43
- # rotates this key, but the tree from the PREVIOUS lockfile is
44
- # still almost entirely correct -- the prefix restore-key hands a
45
- # miss that tree instead of nothing. `npm install` below (not
46
- # `ci` -- ci wipes node_modules by design, which would make the
47
- # restore pointless) reconciles it to the new lockfile, so only
48
- # the packages that actually changed get touched. The drift guard
49
- # keeps the property `npm ci` used to give for free: if npm had
50
- # to rewrite the lockfile to satisfy it, fail loudly instead of
51
- # silently drifting from what's committed.
52
- - name: Cache app node_modules
53
- id: cache-app-node-modules
54
- uses: actions/cache@v4
55
- with:
56
- path: app/node_modules
57
- key: app-npm-${{ hashFiles('app/package-lock.json') }}
58
- restore-keys: |
59
- app-npm-
60
-
61
- # npm's own content cache: even a true-cold node_modules (first
62
- # run, or a cache eviction) then pays extraction only, not
63
- # downloads. Same evolving-key pattern as the Meteor npm-deps
64
- # cache below.
65
- - name: Cache npm content cache (~/.npm)
66
- uses: actions/cache@v4
67
- with:
68
- path: ~/.npm
69
- key: npm-content-${{ runner.os }}-${{ github.run_id }}
70
- restore-keys: |
71
- npm-content-${{ runner.os }}-
72
-
73
- - name: Install app dependencies
74
- if: steps.cache-app-node-modules.outputs.cache-hit != 'true'
75
- run: |
76
- npm install
77
- git diff --exit-code -- package.json package-lock.json
78
- working-directory: app
79
-
80
- # Meteor's isopack/bundler/plugin caches -- without this, every
81
- # deploy recompiles all isopacks from scratch (minutes of work).
82
- # The run-unique key never hits exactly; restore-keys pulls the
83
- # closest prior cache so Meteor's content-hash compiler cache only
84
- # redoes what changed, and a fresh entry is saved each run.
85
- - name: Cache Meteor build cache (app/.meteor/local)
86
- uses: actions/cache@v4
87
- with:
88
- path: app/.meteor/local
89
- key: meteor-local-${{ hashFiles('app/.meteor/release', 'app/.meteor/versions') }}-${{ github.run_id }}
90
- restore-keys: |
91
- meteor-local-${{ hashFiles('app/.meteor/release', 'app/.meteor/versions') }}-
92
- meteor-local-
93
-
94
- # @maka/meteor-sdk >= 0.2.8 keeps a per-user cache of core-package
95
- # npm dependency trees at ~/.meteor-npm-cache. Without this step,
96
- # any maka version bump (new root-npm key -> fresh SDK install)
97
- # re-downloads and reinstalls every core package's npm deps during
98
- # the build. Same evolving-cache key pattern as above.
99
- - name: Cache Meteor npm deps (~/.meteor-npm-cache)
100
- uses: actions/cache@v4
101
- with:
102
- path: ~/.meteor-npm-cache
103
- key: meteor-npm-cache-${{ runner.os }}-${{ github.run_id }}
104
- restore-keys: |
105
- meteor-npm-cache-${{ runner.os }}-
106
-
107
- - name: Build production bundle
108
- run: node_modules/.bin/maka build --force
109
-
110
- - name: Configure SSH
111
- env:
112
- EC2_PEM_KEY: ${{ secrets.EC2_<%= envUpper %>_PEM }}
113
- run: |
114
- install -m 700 -d ~/.ssh
115
- install -m 600 /dev/null ~/.ssh/deploy_key
116
- printf '%s\n' "$EC2_PEM_KEY" > ~/.ssh/deploy_key
117
- ssh-keyscan -H "$EC2_HOST" >> ~/.ssh/known_hosts
118
-
119
- - name: Write dotenvx decryption key
120
- env:
121
- DOTENV_PRIVATE_KEY_<%= dotenvKeyName %>: ${{ secrets.DOTENV_PRIVATE_KEY_<%= dotenvKeyName %> }}
122
- run: |
123
- install -m 600 /dev/null /tmp/.env.keys
124
- echo "DOTENV_PRIVATE_KEY_<%= dotenvKeyName %>=$DOTENV_PRIVATE_KEY_<%= dotenvKeyName %>" > /tmp/.env.keys
125
-
126
- - name: Upload bundle and config
127
- run: |
128
- scp -i ~/.ssh/deploy_key build/app.tar.gz "$EC2_USER@$EC2_HOST:~/app.tar.gz"
129
- scp -i ~/.ssh/deploy_key config/<%= envName %>/pm2.config.js "$EC2_USER@$EC2_HOST:~/pm2.config.js"
130
- scp -i ~/.ssh/deploy_key config/<%= envName %>/settings.json "$EC2_USER@$EC2_HOST:~/settings.json"
131
- scp -i ~/.ssh/deploy_key config/<%= envName %>/nginx.conf "$EC2_USER@$EC2_HOST:~/nginx.conf"
132
- scp -i ~/.ssh/deploy_key config/<%= envName %>/deploy.sh "$EC2_USER@$EC2_HOST:~/deploy.sh"
133
- scp -i ~/.ssh/deploy_key config/<%= envName %>/process.env "$EC2_USER@$EC2_HOST:~/process.env"
134
- scp -i ~/.ssh/deploy_key /tmp/.env.keys "$EC2_USER@$EC2_HOST:~/.env.keys"
135
- rm -f /tmp/.env.keys
136
-
137
- - name: Release
138
- run: ssh -i ~/.ssh/deploy_key "$EC2_USER@$EC2_HOST" "chmod 600 ~/process.env ~/.env.keys && chmod +x ~/deploy.sh && ~/deploy.sh"
139
-
140
- - name: Post-deploy health check
141
- if: always()
142
- run: |
143
- ssh -i ~/.ssh/deploy_key "$EC2_USER@$EC2_HOST" '
144
- echo "--- pm2 status ---"
145
- pm2 status
146
- echo "--- pm2 logs (last 60 lines) ---"
147
- pm2 logs --lines 60 --nostream
148
- echo "--- localhost:3000 ---"
149
- curl -sS -o /dev/null -w "HTTP %{http_code}\n" http://localhost:3000/ || true
150
- '
1
+ name: Deploy to EC2
2
+
3
+ on:
4
+ push:
5
+ branches: [<%= branch %>]
6
+ workflow_dispatch:
7
+
8
+ concurrency:
9
+ group: deploy-<%= envName %>
10
+ cancel-in-progress: false
11
+
12
+ permissions:
13
+ contents: read
14
+
15
+ jobs:
16
+ deploy:
17
+ runs-on: ubuntu-latest
18
+ environment: <%= envName %>
19
+ env:
20
+ EC2_HOST: <%= ec2Host %>
21
+ EC2_USER: <%= ec2User %>
22
+ steps:
23
+ - uses: actions/checkout@v4
24
+
25
+ - uses: actions/setup-node@v4
26
+ with:
27
+ node-version: "<%= nodeVersion %>"
28
+
29
+ - name: Cache root node_modules
30
+ id: cache-root-node-modules
31
+ uses: actions/cache@v4
32
+ with:
33
+ path: node_modules
34
+ key: root-npm-${{ hashFiles('package-lock.json') }}
35
+
36
+ - name: Install root dependencies (maka-cli)
37
+ # maka builds through @maka/meteor-sdk (installed by this npm ci),
38
+ # so no separate Meteor download/install is needed.
39
+ if: steps.cache-root-node-modules.outputs.cache-hit != 'true'
40
+ run: npm ci
41
+
42
+ # A lockfile change (an engine pin or any other dependency bump)
43
+ # rotates this key, but the tree from the PREVIOUS lockfile is
44
+ # still almost entirely correct -- the prefix restore-key hands a
45
+ # miss that tree instead of nothing. `npm install` below (not
46
+ # `ci` -- ci wipes node_modules by design, which would make the
47
+ # restore pointless) reconciles it to the new lockfile, so only
48
+ # the packages that actually changed get touched. The drift guard
49
+ # keeps the property `npm ci` used to give for free: if npm had
50
+ # to rewrite the lockfile to satisfy it, fail loudly instead of
51
+ # silently drifting from what's committed.
52
+ - name: Cache app node_modules
53
+ id: cache-app-node-modules
54
+ uses: actions/cache@v4
55
+ with:
56
+ path: app/node_modules
57
+ key: app-npm-${{ hashFiles('app/package-lock.json') }}
58
+ restore-keys: |
59
+ app-npm-
60
+
61
+ # npm's own content cache: even a true-cold node_modules (first
62
+ # run, or a cache eviction) then pays extraction only, not
63
+ # downloads. Same evolving-key pattern as the Meteor npm-deps
64
+ # cache below.
65
+ - name: Cache npm content cache (~/.npm)
66
+ uses: actions/cache@v4
67
+ with:
68
+ path: ~/.npm
69
+ key: npm-content-${{ runner.os }}-${{ github.run_id }}
70
+ restore-keys: |
71
+ npm-content-${{ runner.os }}-
72
+
73
+ - name: Install app dependencies
74
+ if: steps.cache-app-node-modules.outputs.cache-hit != 'true'
75
+ run: |
76
+ npm install
77
+ git diff --exit-code -- package.json package-lock.json
78
+ working-directory: app
79
+
80
+ # Meteor's isopack/bundler/plugin caches -- without this, every
81
+ # deploy recompiles all isopacks from scratch (minutes of work).
82
+ # The run-unique key never hits exactly; restore-keys pulls the
83
+ # closest prior cache so Meteor's content-hash compiler cache only
84
+ # redoes what changed, and a fresh entry is saved each run.
85
+ - name: Cache Meteor build cache (app/.meteor/local)
86
+ uses: actions/cache@v4
87
+ with:
88
+ path: app/.meteor/local
89
+ key: meteor-local-${{ hashFiles('app/.meteor/release', 'app/.meteor/versions') }}-${{ github.run_id }}
90
+ restore-keys: |
91
+ meteor-local-${{ hashFiles('app/.meteor/release', 'app/.meteor/versions') }}-
92
+ meteor-local-
93
+
94
+ # @maka/meteor-sdk >= 0.2.8 keeps a per-user cache of core-package
95
+ # npm dependency trees at ~/.meteor-npm-cache. Without this step,
96
+ # any maka version bump (new root-npm key -> fresh SDK install)
97
+ # re-downloads and reinstalls every core package's npm deps during
98
+ # the build. Same evolving-cache key pattern as above.
99
+ - name: Cache Meteor npm deps (~/.meteor-npm-cache)
100
+ uses: actions/cache@v4
101
+ with:
102
+ path: ~/.meteor-npm-cache
103
+ key: meteor-npm-cache-${{ runner.os }}-${{ github.run_id }}
104
+ restore-keys: |
105
+ meteor-npm-cache-${{ runner.os }}-
106
+
107
+ - name: Build production bundle
108
+ run: node_modules/.bin/maka build --force
109
+
110
+ - name: Configure SSH
111
+ env:
112
+ EC2_PEM_KEY: ${{ secrets.EC2_<%= envUpper %>_PEM }}
113
+ run: |
114
+ install -m 700 -d ~/.ssh
115
+ install -m 600 /dev/null ~/.ssh/deploy_key
116
+ printf '%s\n' "$EC2_PEM_KEY" > ~/.ssh/deploy_key
117
+ ssh-keyscan -H "$EC2_HOST" >> ~/.ssh/known_hosts
118
+
119
+ - name: Write dotenvx decryption key
120
+ env:
121
+ DOTENV_PRIVATE_KEY_<%= dotenvKeyName %>: ${{ secrets.DOTENV_PRIVATE_KEY_<%= dotenvKeyName %> }}
122
+ run: |
123
+ install -m 600 /dev/null /tmp/.env.keys
124
+ echo "DOTENV_PRIVATE_KEY_<%= dotenvKeyName %>=$DOTENV_PRIVATE_KEY_<%= dotenvKeyName %>" > /tmp/.env.keys
125
+
126
+ - name: Upload bundle and config
127
+ run: |
128
+ scp -i ~/.ssh/deploy_key build/app.tar.gz "$EC2_USER@$EC2_HOST:~/app.tar.gz"
129
+ scp -i ~/.ssh/deploy_key config/<%= envName %>/pm2.config.js "$EC2_USER@$EC2_HOST:~/pm2.config.js"
130
+ scp -i ~/.ssh/deploy_key config/<%= envName %>/settings.json "$EC2_USER@$EC2_HOST:~/settings.json"
131
+ scp -i ~/.ssh/deploy_key config/<%= envName %>/nginx.conf "$EC2_USER@$EC2_HOST:~/nginx.conf"
132
+ scp -i ~/.ssh/deploy_key config/<%= envName %>/deploy.sh "$EC2_USER@$EC2_HOST:~/deploy.sh"
133
+ scp -i ~/.ssh/deploy_key config/<%= envName %>/process.env "$EC2_USER@$EC2_HOST:~/process.env"
134
+ scp -i ~/.ssh/deploy_key /tmp/.env.keys "$EC2_USER@$EC2_HOST:~/.env.keys"
135
+ rm -f /tmp/.env.keys
136
+
137
+ - name: Release
138
+ run: ssh -i ~/.ssh/deploy_key "$EC2_USER@$EC2_HOST" "chmod 600 ~/process.env ~/.env.keys && chmod +x ~/deploy.sh && ~/deploy.sh"
139
+
140
+ - name: Post-deploy health check
141
+ if: always()
142
+ run: |
143
+ ssh -i ~/.ssh/deploy_key "$EC2_USER@$EC2_HOST" '
144
+ echo "--- pm2 status ---"
145
+ pm2 status
146
+ echo "--- pm2 logs (last 60 lines) ---"
147
+ pm2 logs --lines 60 --nostream
148
+ echo "--- localhost:3000 ---"
149
+ curl -sS -o /dev/null -w "HTTP %{http_code}\n" http://localhost:3000/ || true
150
+ '
@@ -1,48 +1,48 @@
1
- import { Meteor } from 'meteor/meteor';
2
- import { ValidatedMethod } from 'meteor/mdg:validated-method';
3
- import { DDPRateLimiter } from 'meteor/ddp-rate-limiter';
4
- import { check, Match } from 'meteor/check';
5
-
6
- /**
7
- * Using ValidatedMethod (maintained by MDG) is the best
8
- * practice by Meteor Development Group (MDG),
9
- * and as such is used here to validate that method
10
- * calls from the client are properly handled.
11
- *
12
- */
13
-
14
- /**
15
- * @memberof Server.<%= name %>
16
- * @method
17
- * @property { string } name String that defines the method.
18
- * @property { function } validate Is run before the main execution.
19
- * @property { function } run The main action that is executed.
20
- */
21
- const <%= className %> = new ValidatedMethod({
22
- name: '<%= fileName %>.server',
23
- validate() {
24
- //check(this.userId, String);
25
- },
26
- run() {
27
- // insert code to run.
28
- return false;
29
- },
30
- });
31
-
32
- const RATE_LIMITED_METHODS = [
33
- <%= className %>,
34
- ].map(value => value['name']);
35
-
36
- if (Meteor.isServer) {
37
- const OPERATIONS = 5;
38
- const PER_SECOND = 1 * 1000; // milliseconds
39
- // Only allow 5 list operations per connection per second.
40
- DDPRateLimiter.addRule({
41
- name(name) {
42
- return RATE_LIMITED_METHODS.includes(name);
43
- },
44
-
45
- // Rate limit per connection ID.
46
- connectionId() { return true; },
47
- }, OPERATIONS, PER_SECOND);
48
- }
1
+ import { Meteor } from 'meteor/meteor';
2
+ import { ValidatedMethod } from 'meteor/mdg:validated-method';
3
+ import { DDPRateLimiter } from 'meteor/ddp-rate-limiter';
4
+ import { check, Match } from 'meteor/check';
5
+
6
+ /**
7
+ * Using ValidatedMethod (maintained by MDG) is the best
8
+ * practice by Meteor Development Group (MDG),
9
+ * and as such is used here to validate that method
10
+ * calls from the client are properly handled.
11
+ *
12
+ */
13
+
14
+ /**
15
+ * @memberof Server.<%= name %>
16
+ * @method
17
+ * @property { string } name String that defines the method.
18
+ * @property { function } validate Is run before the main execution.
19
+ * @property { function } run The main action that is executed.
20
+ */
21
+ const <%= className %> = new ValidatedMethod({
22
+ name: '<%= fileName %>.server',
23
+ validate() {
24
+ //check(this.userId, String);
25
+ },
26
+ run() {
27
+ // insert code to run.
28
+ return false;
29
+ },
30
+ });
31
+
32
+ const RATE_LIMITED_METHODS = [
33
+ <%= className %>,
34
+ ].map(value => value['name']);
35
+
36
+ if (Meteor.isServer) {
37
+ const OPERATIONS = 5;
38
+ const PER_SECOND = 1 * 1000; // milliseconds
39
+ // Only allow 5 list operations per connection per second.
40
+ DDPRateLimiter.addRule({
41
+ name(name) {
42
+ return RATE_LIMITED_METHODS.includes(name);
43
+ },
44
+
45
+ // Rate limit per connection ID.
46
+ connectionId() { return true; },
47
+ }, OPERATIONS, PER_SECOND);
48
+ }
@@ -1,48 +1,48 @@
1
- import { Meteor } from 'meteor/meteor';
2
- import { ValidatedMethod } from 'meteor/mdg:validated-method';
3
- import { DDPRateLimiter } from 'meteor/ddp-rate-limiter';
4
- import { check, Match } from 'meteor/check';
5
-
6
- /**
7
- * Using ValidatedMethod (maintained by MDG) is the best
8
- * practice by Meteor Development Group (MDG),
9
- * and as such is used here to validate that method
10
- * calls from the client are properly handled.
11
- *
12
- */
13
-
14
- /**
15
- * @memberof Server.<%= name %>
16
- * @method
17
- * @property { string } name String that defines the method.
18
- * @property { function } validate Is run before the main execution.
19
- * @property { function } run The main action that is executed.
20
- */
21
- const <%= className %> = new ValidatedMethod({
22
- name: '<%= fileName %>.server',
23
- validate() {
24
- //check(this.userId, String);
25
- },
26
- run() {
27
- // insert code to run.
28
- return false;
29
- },
30
- });
31
-
32
- const RATE_LIMITED_METHODS = [
33
- <%= className %>,
34
- ].map(value => value['name']);
35
-
36
- if (Meteor.isServer) {
37
- const OPERATIONS = 5;
38
- const PER_SECOND = 1 * 1000; // milliseconds
39
- // Only allow 5 list operations per connection per second.
40
- DDPRateLimiter.addRule({
41
- name(name) {
42
- return RATE_LIMITED_METHODS.includes(name);
43
- },
44
-
45
- // Rate limit per connection ID.
46
- connectionId() { return true; },
47
- }, OPERATIONS, PER_SECOND);
48
- }
1
+ import { Meteor } from 'meteor/meteor';
2
+ import { ValidatedMethod } from 'meteor/mdg:validated-method';
3
+ import { DDPRateLimiter } from 'meteor/ddp-rate-limiter';
4
+ import { check, Match } from 'meteor/check';
5
+
6
+ /**
7
+ * Using ValidatedMethod (maintained by MDG) is the best
8
+ * practice by Meteor Development Group (MDG),
9
+ * and as such is used here to validate that method
10
+ * calls from the client are properly handled.
11
+ *
12
+ */
13
+
14
+ /**
15
+ * @memberof Server.<%= name %>
16
+ * @method
17
+ * @property { string } name String that defines the method.
18
+ * @property { function } validate Is run before the main execution.
19
+ * @property { function } run The main action that is executed.
20
+ */
21
+ const <%= className %> = new ValidatedMethod({
22
+ name: '<%= fileName %>.server',
23
+ validate() {
24
+ //check(this.userId, String);
25
+ },
26
+ run() {
27
+ // insert code to run.
28
+ return false;
29
+ },
30
+ });
31
+
32
+ const RATE_LIMITED_METHODS = [
33
+ <%= className %>,
34
+ ].map(value => value['name']);
35
+
36
+ if (Meteor.isServer) {
37
+ const OPERATIONS = 5;
38
+ const PER_SECOND = 1 * 1000; // milliseconds
39
+ // Only allow 5 list operations per connection per second.
40
+ DDPRateLimiter.addRule({
41
+ name(name) {
42
+ return RATE_LIMITED_METHODS.includes(name);
43
+ },
44
+
45
+ // Rate limit per connection ID.
46
+ connectionId() { return true; },
47
+ }, OPERATIONS, PER_SECOND);
48
+ }
@@ -1,37 +1,37 @@
1
- Package.describe({
2
- name: "<%= name %>",
3
- summary: "What this does",
4
- version: "0.0.1",
5
- git: "https://github.com/<username>/<%= fileName %>.git",
6
- });
7
-
8
- //Npm.depends({});
9
-
10
- Package.onUse(function(api) {
11
- api.versionsFrom('1.8');
12
-
13
- <% if (client === 'vanilla') { %>api.use(['ecmascript, jquery, static-html']);<% } else { %>
14
- api.use(['ecmascript', 'templating', 'modules']);<% } %>
15
-
16
- const packages = [
17
- ];
18
-
19
- api.use(packages);
20
- api.imply(packages);
21
-
22
- api.mainModule('server/<%= fileName %>.js', 'server');
23
- api.mainModule('client/<%= fileName %>.js', 'client');
24
-
25
- api.addFiles('lib/<%= fileName %>.js', ['client', 'server']);
26
-
27
- api.export('<%= className %>');
28
- });
29
-
30
- Package.onTest(function(api) {
31
- api.use('<%= name %>');
32
- api.use('ecmascript');
33
- api.use('sanjo:jasmine@1.0.0');
34
- api.use('velocity:html-reporter@0.10.0');
35
- api.addFiles('tests/server/<%= fileName %>.js', 'server');
36
- api.addFiles('tests/client/<%= fileName %>.js', 'client');
37
- });
1
+ Package.describe({
2
+ name: "<%= name %>",
3
+ summary: "What this does",
4
+ version: "0.0.1",
5
+ git: "https://github.com/<username>/<%= fileName %>.git",
6
+ });
7
+
8
+ //Npm.depends({});
9
+
10
+ Package.onUse(function(api) {
11
+ api.versionsFrom('1.8');
12
+
13
+ <% if (client === 'vanilla') { %>api.use(['ecmascript, jquery, static-html']);<% } else { %>
14
+ api.use(['ecmascript', 'templating', 'modules']);<% } %>
15
+
16
+ const packages = [
17
+ ];
18
+
19
+ api.use(packages);
20
+ api.imply(packages);
21
+
22
+ api.mainModule('server/<%= fileName %>.js', 'server');
23
+ api.mainModule('client/<%= fileName %>.js', 'client');
24
+
25
+ api.addFiles('lib/<%= fileName %>.js', ['client', 'server']);
26
+
27
+ api.export('<%= className %>');
28
+ });
29
+
30
+ Package.onTest(function(api) {
31
+ api.use('<%= name %>');
32
+ api.use('ecmascript');
33
+ api.use('sanjo:jasmine@1.0.0');
34
+ api.use('velocity:html-reporter@0.10.0');
35
+ api.addFiles('tests/server/<%= fileName %>.js', 'server');
36
+ api.addFiles('tests/client/<%= fileName %>.js', 'client');
37
+ });
@@ -1,37 +1,37 @@
1
- Package.describe({
2
- name: "<%= name %>",
3
- summary: "What this does",
4
- version: "0.0.1",
5
- git: "https://github.com/<username>/<%= fileName %>.git",
6
- });
7
-
8
- Npm.depends({
9
- });
10
-
11
- Package.onUse(function(api) {
12
- api.versionsFrom('1.8');
13
-
14
- api.use(['ecmascript', 'templating', 'modules']);
15
-
16
- var packages = [
17
- ];
18
-
19
- api.use(packages);
20
- api.imply(packages);
21
-
22
- api.mainModule('server/<%= fileName %>.jsx', 'server');
23
- api.mainModule('client/<%= fileName %>.jsx', 'client');
24
-
25
- api.addFiles('lib/<%= fileName %>.jsx', ['client', 'server']);
26
-
27
- api.export('<%= className %>');
28
- });
29
-
30
- Package.onTest(function(api) {
31
- api.use('<%= name %>');
32
- api.use('ecmascript');
33
- api.use('sanjo:jasmine@1.0.0');
34
- api.use('velocity:html-reporter@0.10.0');
35
- api.addFiles('tests/server/<%= fileName %>.jsx', 'server');
36
- api.addFiles('tests/client/<%= fileName %>.jsx', 'client');
37
- });
1
+ Package.describe({
2
+ name: "<%= name %>",
3
+ summary: "What this does",
4
+ version: "0.0.1",
5
+ git: "https://github.com/<username>/<%= fileName %>.git",
6
+ });
7
+
8
+ Npm.depends({
9
+ });
10
+
11
+ Package.onUse(function(api) {
12
+ api.versionsFrom('1.8');
13
+
14
+ api.use(['ecmascript', 'templating', 'modules']);
15
+
16
+ var packages = [
17
+ ];
18
+
19
+ api.use(packages);
20
+ api.imply(packages);
21
+
22
+ api.mainModule('server/<%= fileName %>.jsx', 'server');
23
+ api.mainModule('client/<%= fileName %>.jsx', 'client');
24
+
25
+ api.addFiles('lib/<%= fileName %>.jsx', ['client', 'server']);
26
+
27
+ api.export('<%= className %>');
28
+ });
29
+
30
+ Package.onTest(function(api) {
31
+ api.use('<%= name %>');
32
+ api.use('ecmascript');
33
+ api.use('sanjo:jasmine@1.0.0');
34
+ api.use('velocity:html-reporter@0.10.0');
35
+ api.addFiles('tests/server/<%= fileName %>.jsx', 'server');
36
+ api.addFiles('tests/client/<%= fileName %>.jsx', 'client');
37
+ });