gina 0.1.1-alpha.19 → 0.1.1-alpha.191
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.
- package/AUTHORS +2 -1
- package/LICENSE +1 -1
- package/README-4Contributors.md +30 -0
- package/README.md +208 -32
- package/bin/cli +165 -68
- package/bin/cli-debug +49 -18
- package/bin/cmd +40 -18
- package/bin/gina +48 -37
- package/framework/{v0.1.1-alpha.19/lib/inherits → v0.1.1-alpha.191}/LICENSE +1 -1
- package/framework/v0.1.1-alpha.191/VERSION +1 -0
- package/framework/{v0.1.1-alpha.19/core/asset/js/plugin/readme.md → v0.1.1-alpha.191/core/asset/plugin/README.md} +31 -9
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/css/gina.min.css +1 -0
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/html/toolbar.html +251 -0
- package/framework/{v0.1.1-alpha.19/core/asset/js/plugin/dist → v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/js}/gina.js +4364 -3175
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/js/gina.min.js +764 -0
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +5 -0
- package/framework/v0.1.1-alpha.191/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/config.js +172 -79
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/connectors/couchbase/index.js +373 -259
- package/framework/v0.1.1-alpha.191/core/connectors/couchbase/lib/connector.js +22 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/connectors/couchbase/lib/connector.v2.js +51 -51
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/connectors/couchbase/lib/connector.v3.js +51 -51
- package/framework/v0.1.1-alpha.191/core/connectors/couchbase/lib/connector.v4.js +384 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/connectors/couchbase/lib/n1ql.js +3 -2
- package/framework/v0.1.1-alpha.191/core/connectors/couchbase/lib/session-store.js +22 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/connectors/couchbase/lib/session-store.v3.js +12 -12
- package/framework/v0.1.1-alpha.191/core/connectors/couchbase/lib/session-store.v4.js +361 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/controller/controller.js +921 -773
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/dev/index.js +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/dev/lib/class.js +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/dev/lib/factory.js +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/gna.js +13 -9
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/README.md +5 -0
- package/framework/v0.1.1-alpha.191/core/locales/dist/region/en.json +5727 -0
- package/framework/v0.1.1-alpha.191/core/locales/dist/region/fr.json +11452 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/index.js +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/src/make.js +39 -41
- package/framework/v0.1.1-alpha.191/core/locales/src/resources/region.mapping.json +43 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/model/entity.js +87 -67
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/model/index.js +16 -16
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/model/template/entityFactory.js +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/model/template/index.js +17 -15
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/index.js +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/file/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/intl/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/intl/src/main.js +5 -5
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/storage/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/storage/src/main.js +6 -5
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/validator/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/validator/src/form-validator.js +403 -300
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/validator/src/main.js +1368 -1314
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/router.js +99 -90
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/server.isaac.js +203 -180
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/server.js +439 -238
- package/framework/v0.1.1-alpha.191/core/template/boilerplate/bundle/config/settings.json +12 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/config/settings.server.json +4 -4
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/config/templates.json +4 -4
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/controllers/controller.content.js +1 -1
- package/framework/v0.1.1-alpha.191/core/template/boilerplate/bundle/controllers/setup.js +111 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/index.js +13 -1
- package/framework/v0.1.1-alpha.191/core/template/boilerplate/bundle_templates/html/content/homepage.html +8 -0
- package/framework/v0.1.1-alpha.191/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +11 -0
- package/framework/v0.1.1-alpha.191/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +8 -0
- package/framework/{v0.1.1-alpha.19/core/template/boilerplate/bundle_templates/html/layout → v0.1.1-alpha.191/core/template/boilerplate/bundle_templates/html/layouts}/main.html +10 -3
- package/framework/v0.1.1-alpha.191/core/template/command/gina.bat.tpl +8 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/command/gina.tpl +4 -4
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/conf/env.json +11 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/conf/package.json +1 -1
- package/framework/v0.1.1-alpha.191/core/template/conf/statics.json +12 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/conf/templates.json +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/console.js +3 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/context.js +148 -7
- package/framework/v0.1.1-alpha.191/helpers/data/LICENSE +9 -0
- package/framework/v0.1.1-alpha.191/helpers/data/README.md +12 -0
- package/framework/v0.1.1-alpha.191/helpers/data/package.json +20 -0
- package/framework/v0.1.1-alpha.191/helpers/data/src/main.js +295 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/dateFormat.js +9 -7
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/index.js +13 -8
- package/framework/v0.1.1-alpha.191/helpers/json/LICENSE +9 -0
- package/framework/v0.1.1-alpha.191/helpers/json/README.md +12 -0
- package/framework/{v0.1.1-alpha.19/helpers/plugins → v0.1.1-alpha.191/helpers/json}/package.json +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/json/src/main.js +28 -26
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/path.js +176 -96
- package/framework/{v0.1.1-alpha.19/helpers/json → v0.1.1-alpha.191/helpers/plugins}/package.json +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/plugins/src/api-error.js +23 -23
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/plugins/src/main.js +3 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/prototypes.js +46 -38
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/task.js +21 -14
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/text.js +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/archiver/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/archiver/src/dep/jszip.min.js +3 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/archiver/src/main.js +168 -168
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/aliases.json +4 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/add.js +84 -27
- package/framework/v0.1.1-alpha.191/lib/cmd/bundle/arguments.json +7 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/help.txt +4 -2
- package/framework/v0.1.1-alpha.191/lib/cmd/bundle/list.js +176 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/remove.js +36 -27
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/start.js +264 -46
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/stop.js +93 -74
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/add.js +44 -43
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/list.js +23 -4
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/remove.js +19 -19
- package/framework/{v0.1.1-alpha.19/lib/cmd/scope → v0.1.1-alpha.191/lib/cmd/env}/use.js +21 -1
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/build.js +88 -0
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/init.js +798 -0
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/link-node-modules.js +116 -0
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/link.js +114 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/open.js +22 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/restart.js +61 -26
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/set.js +276 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/start.js +46 -20
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/status.js +141 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/stop.js +47 -28
- package/framework/v0.1.1-alpha.191/lib/cmd/framework/tail.js +302 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/version.js +15 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/helper.js +131 -18
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/index.js +23 -23
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/port/inc/scan.js +32 -16
- package/framework/v0.1.1-alpha.191/lib/cmd/port/list.js +462 -0
- package/framework/v0.1.1-alpha.191/lib/cmd/port/reset.js +429 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/add.js +147 -122
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/arguments.json +2 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/build.js +28 -28
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/list.js +19 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/remove.js +19 -17
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/rename.js +11 -11
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/protocol/set.js +256 -209
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/list.js +27 -8
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/remove.js +19 -19
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/view/add.js +35 -10
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/collection/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/collection/src/main.js +243 -242
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/config.js +31 -30
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cron/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cron/src/main.js +10 -9
- package/framework/v0.1.1-alpha.191/lib/domain/LICENSE +9 -0
- package/framework/v0.1.1-alpha.191/lib/domain/README.md +46 -0
- package/framework/v0.1.1-alpha.191/lib/domain/dist/public_suffix_list.dat +14186 -0
- package/framework/v0.1.1-alpha.191/lib/domain/package.json +20 -0
- package/framework/v0.1.1-alpha.191/lib/domain/src/main.js +442 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/generator/index.js +4 -4
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/index.js +3 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191/lib/inherits}/LICENSE +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/README.md +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/package.json +3 -4
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/src/main.js +3 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/package.json +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/default/index.js +13 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/file/index.js +109 -14
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/mq/index.js +12 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/mq/listener.js +16 -14
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/mq/speaker.js +32 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/helper.js +21 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/main.js +36 -9
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/math/index.js +9 -9
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/merge/README.md +2 -2
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/merge/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/merge/src/main.js +118 -91
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/model.js +10 -10
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/proc.js +87 -49
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/routing/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/routing/src/main.js +313 -285
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/session-store.js +6 -6
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/shell.js +3 -3
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/swig-filters/package.json +1 -1
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/swig-filters/src/main.js +140 -119
- package/framework/v0.1.1-alpha.191/lib/url/README.md +0 -0
- package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/validator.js +2 -2
- package/framework/v0.1.1-alpha.191/package.json +14 -0
- package/package.json +33 -24
- package/resources/home/main.json +53 -4
- package/resources/home/settings.json +9 -0
- package/resources/home/user/extensions/logger/default/config.json +1 -1
- package/resources/package.json.template +29 -18
- package/script/post_install.js +409 -124
- package/script/post_publish.js +186 -0
- package/script/pre_install.js +425 -77
- package/script/prepare_version.js +275 -98
- package/services/.gna/67fdf1b224a2ed5597e63d4b64283834468e05e3.txt +0 -0
- package/services/.gna/arch +1 -0
- package/services/.gna/locals.json +14 -0
- package/services/.gna/platform +1 -0
- package/services/configure +6 -0
- package/services/env.json +18 -0
- package/services/manifest.json +30 -0
- package/services/package.json +11 -0
- package/services/src/proxy/config/app.json +6 -0
- package/services/src/proxy/config/routing.json +11 -0
- package/services/src/proxy/config/settings.json +9 -0
- package/services/src/proxy/config/settings.server.json +31 -0
- package/services/src/proxy/config/statics.json +3 -0
- package/services/src/proxy/controllers/controller.content.js +58 -0
- package/services/src/proxy/controllers/controller.js +30 -0
- package/{framework/v0.1.1-alpha.19/core/template/boilerplate/bundle → services/src/proxy}/controllers/setup.js +14 -14
- package/services/src/proxy/index.js +31 -0
- package/services/src/proxy/lib/domain/README.md +48 -0
- package/services/src/proxy/lib/domain/src/config/public_suffix_list.dat +14186 -0
- package/services/src/toolbar/config/app.json +6 -0
- package/services/src/toolbar/config/routing.json +11 -0
- package/{framework/v0.1.1-alpha.19/core/template/boilerplate/bundle → services/src/toolbar}/config/settings.json +0 -0
- package/services/src/toolbar/config/settings.server.json +30 -0
- package/services/src/toolbar/controllers/controller.content.js +39 -0
- package/services/src/toolbar/controllers/controller.js +30 -0
- package/services/src/toolbar/controllers/setup.js +111 -0
- package/services/src/toolbar/index.js +43 -0
- package/utils/helper.js +236 -185
- package/utils/prototypes.js +9 -9
- package/utils/prototypes.json_clone.js +70 -37
- package/doc/framework/cli/doc.json +0 -9
- package/doc/framework/index.md +0 -60
- package/framework/v0.1.1-alpha.19/VERSION +0 -1
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.js.map +0 -56
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.min.css +0 -1
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.min.css.map +0 -1
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.min.js +0 -736
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.min.js.map +0 -56
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.onload.min.js +0 -5
- package/framework/v0.1.1-alpha.19/core/asset/js/plugin/dist/gina.onload.min.js.map +0 -8
- package/framework/v0.1.1-alpha.19/core/connectors/couchbase/lib/connector.js +0 -20
- package/framework/v0.1.1-alpha.19/core/connectors/couchbase/lib/session-store.js +0 -21
- package/framework/v0.1.1-alpha.19/core/locales/dist/region/en.json +0 -9492
- package/framework/v0.1.1-alpha.19/core/locales/dist/region/fr.json +0 -9492
- package/framework/v0.1.1-alpha.19/core/locales/src/resources/region.mapping.json +0 -28
- package/framework/v0.1.1-alpha.19/core/template/boilerplate/bundle_templates/html/homepage.html +0 -4
- package/framework/v0.1.1-alpha.19/core/template/conf/statics.json +0 -10
- package/framework/v0.1.1-alpha.19/lib/cmd/bundle/arguments.json +0 -4
- package/framework/v0.1.1-alpha.19/lib/cmd/bundle/list.js +0 -129
- package/framework/v0.1.1-alpha.19/lib/cmd/framework/init.js +0 -514
- package/framework/v0.1.1-alpha.19/lib/cmd/framework/set.js +0 -161
- package/framework/v0.1.1-alpha.19/lib/cmd/framework/status.js +0 -72
- package/framework/v0.1.1-alpha.19/lib/cmd/framework/tail.js +0 -183
- package/framework/v0.1.1-alpha.19/lib/cmd/port/list.js +0 -176
- package/framework/v0.1.1-alpha.19/package.json +0 -14
- /package/{framework/v0.1.1-alpha.19/core/template/command/gina.bat.tpl → bin/gina.bat} +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/AUTHORS +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/html/nolayout.html +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/html/static.html +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/img/android-chrome-192x192.png +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/img/android-chrome-512x512.png +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/img/apple-touch-icon.png +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/img/favicon-16x16.png +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/img/favicon-32x32.png +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/asset/img/favicon.ico +0 -0
- /package/framework/{v0.1.1-alpha.19/core/asset/js → v0.1.1-alpha.191/core/asset}/plugin/uuid.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/controller/controller.framework.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/controller/index.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/.travis.yml +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/LICENSE +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/deps/encoding/encoding.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/lib/main.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/lib/types/multipart.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/lib/types/urlencoded.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/lib/utils.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/busboy/package.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/dev/lib/tools.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/currency.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/dist/language/en.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/dist/language/fr.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/src/resources/currency.csv +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/locales/src/resources/region.csv +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/mime.types +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/file/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/file/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/intl/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/intl/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/storage/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/storage/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/validator/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/plugins/lib/validator/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/server.express.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/status.codes +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/config/app.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/config/routing.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_public/readme.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/conf/manifest.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/conf/settings.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/error/client/json/401.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/error/client/json/403.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/error/client/json/404.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/error/server/html/50x.html +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/error/server/json/500.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/error/server/json/503.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/core/template/extensions/logger/config.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/helpers/plugins/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19/helpers/json → v0.1.1-alpha.191/lib/archiver}/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/archiver/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/copy.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/cp.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/rename.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/restart.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/rm.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/bundle/status.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/get.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/help.txt +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/link-dev.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/rm.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/set.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/env/unset.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/dot.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/get.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/help.txt +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/msg.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/framework/update.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/gina-dev.1.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/gina-framework.1.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/gina.1.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/msg.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/port/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/port/help.txt +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/port/set.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/help.txt +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/import.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/move.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/restart.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/rm.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/start.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/status.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/project/stop.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/protocol/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/protocol/help.txt +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/protocol/list.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/help.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/help.txt +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/link-local.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/rm.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/set.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cmd/scope/unset.js +0 -0
- /package/framework/{v0.1.1-alpha.19/lib/cmd/env → v0.1.1-alpha.191/lib/cmd/scope}/use.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/collection/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/collection/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/cron/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19/lib/archiver/README.md → v0.1.1-alpha.191/lib/domain/exemples/backend.js} +0 -0
- /package/framework/{v0.1.1-alpha.19/lib/routing/README.md → v0.1.1-alpha.191/lib/domain/exemples/frontend.html} +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/example/inheriting_eventemitter.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/example/protected_inheritance.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/example/simple_inheritance.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/merge/example/merge.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/merge/example/merge_2_literal objects.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/merge/example/merge_and_preserve_first.js +0 -0
- /package/framework/{v0.1.1-alpha.19/lib/swig-filters → v0.1.1-alpha.191/lib/routing}/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/routing/build.json +0 -0
- /package/framework/{v0.1.1-alpha.19/lib/url → v0.1.1-alpha.191/lib/swig-filters}/README.md +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/url/index.js +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/url/mocks.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/url/routing.json +0 -0
- /package/framework/{v0.1.1-alpha.19 → v0.1.1-alpha.191}/lib/url/test.js +0 -0
package/script/post_install.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* This file is part of the gina package.
|
|
3
|
-
* Copyright (c)
|
|
3
|
+
* Copyright (c) 2009-2023 Rhinostone <contact@gina.io>
|
|
4
4
|
*
|
|
5
5
|
* For the full copyright and license information, please view the LICENSE
|
|
6
6
|
* file that was distributed with this source code.
|
|
@@ -8,10 +8,68 @@
|
|
|
8
8
|
|
|
9
9
|
//Imports
|
|
10
10
|
var fs = require('fs');
|
|
11
|
+
var os = require("os");
|
|
11
12
|
var util = require('util');
|
|
12
13
|
var promisify = util.promisify;
|
|
13
14
|
const { execSync } = require('child_process');
|
|
14
15
|
|
|
16
|
+
var isWin32 = function() {
|
|
17
|
+
return (process.platform === 'win32') ? true : false;
|
|
18
|
+
};
|
|
19
|
+
var isWritableSync = function(path) {
|
|
20
|
+
var canWrite = false;
|
|
21
|
+
if ( fs.accessSync && typeof(fs.accessSync) != 'undefined' ) {
|
|
22
|
+
try {
|
|
23
|
+
fs.accessSync(path, fs.constants.W_OK);
|
|
24
|
+
canWrite = true;
|
|
25
|
+
} catch (err) {
|
|
26
|
+
canWrite = false;
|
|
27
|
+
}
|
|
28
|
+
} else { // support for old version of nodejs
|
|
29
|
+
|
|
30
|
+
try {
|
|
31
|
+
canWrite = (fs.statSync(path).mode & (fs.constants.S_IRUSR | fs.constants.S_IRGRP | fs.constants.S_IROTH));
|
|
32
|
+
} catch (err) {
|
|
33
|
+
canWrite = false
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
return canWrite
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
var getUserHome = function() {
|
|
41
|
+
var home = os.homedir ? os.homedir : function() {
|
|
42
|
+
var homeDir = process.env[(isWin32()) ? 'USERPROFILE' : 'HOME'];
|
|
43
|
+
|
|
44
|
+
if ( !homeDir || homeDir == '' ) {
|
|
45
|
+
throw new Error('Home directory not defined or not found !');
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
if ( !isWritableSync(homeDir) ) {
|
|
49
|
+
throw new Error('Home directory found but not writable: need permissions for `'+ homeDir +'`');
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
return homeDir;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
return home()
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
// just in case `post_install` is called by hand
|
|
59
|
+
var initialDir = process.cwd();
|
|
60
|
+
var frameworkPath = __dirname +'/..';
|
|
61
|
+
if ( !fs.existsSync(frameworkPath +'/node_modules/colors') ) {
|
|
62
|
+
process.chdir(frameworkPath);
|
|
63
|
+
|
|
64
|
+
var oldConfigGlobal = process.env.npm_config_global;
|
|
65
|
+
process.env.npm_config_global=false;
|
|
66
|
+
var cmd = ( isWin32() ) ? 'npm.cmd install colors@1.4.0' : 'npm install colors@1.4.0';
|
|
67
|
+
execSync(cmd);
|
|
68
|
+
process.env.npm_config_global=oldConfigGlobal;
|
|
69
|
+
|
|
70
|
+
process.chdir(initialDir);
|
|
71
|
+
}
|
|
72
|
+
|
|
15
73
|
var lib = require('./lib');
|
|
16
74
|
var console = lib.logger;
|
|
17
75
|
|
|
@@ -20,6 +78,7 @@ var ginaPath = (scriptPath.replace(/\\/g, '/')).replace('/script', '');
|
|
|
20
78
|
var help = require(ginaPath + '/utils/helper.js');
|
|
21
79
|
var pack = ginaPath + '/package.json';
|
|
22
80
|
pack = (isWin32()) ? pack.replace(/\//g, '\\') : pack;
|
|
81
|
+
var helpers = null;
|
|
23
82
|
|
|
24
83
|
|
|
25
84
|
/**
|
|
@@ -28,47 +87,156 @@ pack = (isWin32()) ? pack.replace(/\//g, '\\') : pack;
|
|
|
28
87
|
* */
|
|
29
88
|
function PostInstall() {
|
|
30
89
|
|
|
31
|
-
var self = {}
|
|
90
|
+
var self = {};
|
|
32
91
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
self.isGlobalInstall = false;
|
|
40
|
-
self.prefix = execSync('npm config get prefix');
|
|
41
|
-
self.isCustomPrefix = false;
|
|
92
|
+
var configure = function() {
|
|
93
|
+
|
|
94
|
+
// TODO - handle windows case
|
|
95
|
+
if ( /^true$/i.test(isWin32()) ) {
|
|
96
|
+
throw new Error('Windows in not yet fully supported. Thank you for your patience');
|
|
97
|
+
}
|
|
42
98
|
|
|
99
|
+
self.isWin32 = isWin32();
|
|
100
|
+
self.isGlobalInstall = process.env.npm_config_global || false;
|
|
101
|
+
self.isResetNeeded = process.env.npm_config_reset || false;
|
|
102
|
+
self.defaultPrefix = execSync('npm config get prefix').toString().replace(/\n$/g, '');
|
|
103
|
+
// var pkg = null;
|
|
104
|
+
// try {
|
|
105
|
+
// if (self.isGlobalInstall) {
|
|
106
|
+
// pkg = execSync('npm list -g gina --long --json').toString().replace(/\n$/g, '');
|
|
107
|
+
// } else {
|
|
108
|
+
// pkg = execSync('npm list gina --long --json').toString().replace(/\n$/g, '');
|
|
109
|
+
// }
|
|
110
|
+
// } catch(err) {
|
|
111
|
+
// throw err
|
|
112
|
+
// }
|
|
113
|
+
// self.optionalPrefix = JSON.parse(pkg).dependencies.gina.config.optionalPrefix.replace(/^\~/, getUserHome());
|
|
114
|
+
|
|
115
|
+
// `process.env.npm_config_prefix` is only retrieved on `npm install gina`
|
|
116
|
+
// and it should always be equal to `self.defaultPrefix`
|
|
117
|
+
self.prefix = process.env.npm_config_prefix || self.defaultPrefix;
|
|
118
|
+
self.isCustomPrefix = false;
|
|
119
|
+
self.isGinaInstalled = false;
|
|
120
|
+
|
|
121
|
+
// Overriding thru passed arguments
|
|
43
122
|
var args = process.argv, i = 0, len = args.length;
|
|
44
123
|
for (; i < len; ++i) {
|
|
45
|
-
if (args[i]
|
|
124
|
+
if ( /^(\-g|\-\-global)$/.test(args[i]) ) {
|
|
46
125
|
self.isGlobalInstall = true;
|
|
47
126
|
continue;
|
|
48
127
|
}
|
|
49
|
-
|
|
128
|
+
|
|
129
|
+
if ( /^\-\-reset$/.test(args[i]) ) {
|
|
130
|
+
self.isResetNeeded = true;
|
|
131
|
+
continue;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
if ( /^\-\-prefix\=/.test(args[i] ) ) {
|
|
50
135
|
self.isCustomPrefix = true;
|
|
51
136
|
self.prefix = args[i].split(/\=/)[1];
|
|
137
|
+
self.prefix = self.prefix.replace(/^\~/, getUserHome());
|
|
52
138
|
continue;
|
|
53
139
|
}
|
|
140
|
+
|
|
141
|
+
if ( /^\-\-log-level\=/.test(args[i]) ) {
|
|
142
|
+
var logLevel = args[i].split(/\=/)[1];
|
|
143
|
+
console.setLevel(logLevel, 'gina');
|
|
144
|
+
process.env.LOG_LEVEL=logLevel;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
if (self.prefix != self.defaultPrefix) {
|
|
149
|
+
self.isCustomPrefix = true;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
// For local install
|
|
153
|
+
console.debug('self.isGlobalInstall => '+ self.isGlobalInstall);
|
|
154
|
+
if ( !self.isGlobalInstall ) {
|
|
155
|
+
console.warn('Local installation is not fully supported at the moment.');
|
|
156
|
+
console.warn('You are encouraged to use `npm install -g gina`\nor, if you are trying to link gina to your project, use `npm link gina` if Gina has already been installed globally\n');
|
|
157
|
+
// Just in case someone is trying to run pre_install from the `gina` module
|
|
158
|
+
if (!/node\_modules(\\\\|\/)gina$/.test(process.env.INIT_CWD)) {
|
|
159
|
+
self.prefix = process.env.INIT_CWD;//process.cwd();
|
|
160
|
+
}
|
|
54
161
|
}
|
|
55
162
|
|
|
56
|
-
|
|
163
|
+
// checking permission
|
|
164
|
+
var hasPermissionsForBin = isWritableSync(self.prefix + ( isWin32() ? '\\' : '/' ) + 'bin');
|
|
165
|
+
var hasPermissionsForLib = isWritableSync(self.prefix + ( isWin32() ? '\\' : '/' ) + 'lib');
|
|
166
|
+
var hasPermissionsForVar = isWritableSync(self.prefix + ( isWin32() ? '\\' : '/' ) + 'var');
|
|
167
|
+
if ( !hasPermissionsForBin || !hasPermissionsForLib || !hasPermissionsForVar) {
|
|
168
|
+
if (!hasPermissionsForBin) {
|
|
169
|
+
console.warn('Path not accessible or missing: '+ self.prefix + ( isWin32() ? '\\' : '/' ) + 'bin')
|
|
170
|
+
}
|
|
171
|
+
if (!hasPermissionsForLib) {
|
|
172
|
+
console.warn('Path not accessible or missing: '+ self.prefix + ( isWin32() ? '\\' : '/' ) + 'lib')
|
|
173
|
+
}
|
|
174
|
+
if (!hasPermissionsForVar) {
|
|
175
|
+
console.warn('Path not accessible or missing: '+ self.prefix + ( isWin32() ? '\\' : '/' ) + 'var')
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
// console.warn('You do not have sufficient permissions. Switching to `--prefix='+ self.optionalPrefix +'`');
|
|
179
|
+
// process.env.npm_config_prefix = self.prefix = self.optionalPrefix;
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
var pkg = null, pkgObj = null, cmd = null;
|
|
183
|
+
try {
|
|
184
|
+
cmd = 'npm list gina --long --json --prefix='+ self.prefix;
|
|
185
|
+
if (self.isGlobalInstall) {
|
|
186
|
+
cmd += ' -g';
|
|
187
|
+
}
|
|
188
|
+
pkg = execSync(cmd).toString().replace(/\n$/g, '');
|
|
189
|
+
self.optionalPrefix = JSON.parse(pkg).dependencies.gina.config.optionalPrefix.replace(/^\~/, getUserHome());
|
|
190
|
+
|
|
191
|
+
} catch(err) {
|
|
192
|
+
throw err
|
|
193
|
+
}
|
|
194
|
+
pkgObj = JSON.parse(pkg);
|
|
195
|
+
self.optionalPrefix = pkgObj.dependencies.gina.config.optionalPrefix.replace(/^\~/, getUserHome());
|
|
57
196
|
|
|
58
|
-
console.debug('Is this for Windows ? ' + self.isWin32);
|
|
59
197
|
|
|
60
|
-
if (
|
|
61
|
-
self.
|
|
62
|
-
console.error('local installation is not supported for this version at the moment.');
|
|
63
|
-
console.info('please use `npm install -g gina`');
|
|
64
|
-
process.exit(1);
|
|
198
|
+
if ( self.prefix != self.defaultPrefix ) {
|
|
199
|
+
self.isCustomPrefix = true;
|
|
65
200
|
}
|
|
66
201
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
202
|
+
self.gina = __dirname +'/..';
|
|
203
|
+
// tying to figure out if gina is already install the given prefix
|
|
204
|
+
var hasFoundGina = pkg;
|
|
205
|
+
try {
|
|
206
|
+
hasFoundGina = JSON.parse(hasFoundGina);
|
|
207
|
+
if ( hasFoundGina.dependencies && typeof(hasFoundGina.dependencies.gina) != 'undefined' ) {
|
|
208
|
+
self.isGinaInstalled = true;
|
|
209
|
+
self.versionPath = self.gina;
|
|
210
|
+
self.versionPath += (isWin32()) ? '\\framework\\' : '/framework/';
|
|
211
|
+
self.version = hasFoundGina.dependencies.gina.version;
|
|
212
|
+
self.versionPath += 'v'+ self.version;
|
|
213
|
+
|
|
214
|
+
self.shortVersion = self.version.split('.');
|
|
215
|
+
self.shortVersion.splice(2);
|
|
216
|
+
self.shortVersion = self.shortVersion.join('.');
|
|
217
|
+
|
|
218
|
+
console.debug('Install path => '+ hasFoundGina.dependencies.gina.path);
|
|
219
|
+
|
|
220
|
+
// OK ... found installed gina but on a different prefix
|
|
221
|
+
// In this case, let's assume that it is not really installed
|
|
222
|
+
if ( !new RegExp('^'+ self.prefix).test(hasFoundGina.dependencies.gina.path) ) {
|
|
223
|
+
self.isGinaInstalled = false;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
} catch (err) {}
|
|
227
|
+
|
|
228
|
+
console.debug('self.defaultPrefix => '+ self.defaultPrefix);
|
|
229
|
+
console.debug('self.optionalPrefix => '+ self.optionalPrefix );
|
|
230
|
+
console.debug('self.prefix => '+ self.prefix);
|
|
231
|
+
console.debug('self.isCustomPrefix => ', self.isCustomPrefix);
|
|
232
|
+
// only available when running the script with NPM
|
|
233
|
+
console.debug('process.env.npm_config_prefix => '+ process.env.npm_config_prefix);
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
//Initialize post installation scripts.
|
|
237
|
+
var init = function() {
|
|
238
|
+
configure();
|
|
239
|
+
helpers = require(self.versionPath+ '/helpers');
|
|
72
240
|
|
|
73
241
|
begin(0);
|
|
74
242
|
}
|
|
@@ -95,7 +263,7 @@ function PostInstall() {
|
|
|
95
263
|
|
|
96
264
|
// to handle sync vs async to allow execution in order of declaration
|
|
97
265
|
if (funct) {
|
|
98
|
-
eval('async function on'+functName+'(){ await promisify('+ funct + ')().catch(function(e){ console.error(e.toString()); process.exit(
|
|
266
|
+
eval('async function on'+functName+'(){ await promisify('+ funct + ')().catch(function(e){ console.error(e.toString()); process.exit(1);}).then(function(){ begin('+(i+1)+')});}; on'+functName+'();'); // jshint ignore:line
|
|
99
267
|
} else {
|
|
100
268
|
process.exit(0);
|
|
101
269
|
}
|
|
@@ -153,10 +321,10 @@ function PostInstall() {
|
|
|
153
321
|
|
|
154
322
|
|
|
155
323
|
self.createVersionFile = function(done) {
|
|
156
|
-
var version =
|
|
324
|
+
var version = self.version;
|
|
157
325
|
console.debug('writting version number: '+ version);
|
|
158
326
|
|
|
159
|
-
var target = _(self.
|
|
327
|
+
var target = _(self.versionPath + '/VERSION');
|
|
160
328
|
try {
|
|
161
329
|
if ( fs.existsSync(target) ) {
|
|
162
330
|
fs.unlinkSync(target)
|
|
@@ -169,13 +337,20 @@ function PostInstall() {
|
|
|
169
337
|
done();
|
|
170
338
|
}
|
|
171
339
|
|
|
340
|
+
// TODO - Remove this part
|
|
172
341
|
var configureGina = function() {
|
|
173
342
|
// link to ./bin/cli to binaries dir
|
|
174
343
|
if (!self.isWin32) {
|
|
175
|
-
var binPath =
|
|
176
|
-
|
|
344
|
+
var binPath = null;
|
|
345
|
+
if ( !self.isGlobalInstall() ) {
|
|
346
|
+
binPath = new _(self.prefix+'/node_modules/.bin', true).existsSync() ? _(self.prefix+'/node_modules/.bin', true) : '';
|
|
347
|
+
} else {
|
|
348
|
+
binPath = new _(self.prefix+'/lib/node_modules/gina/bin', true)
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
var cli = _(binPath +'/gina', true);
|
|
177
352
|
// TODO - remove this part for the next version
|
|
178
|
-
var cliDebug = _(binPath +'/gina-debug');
|
|
353
|
+
var cliDebug = _(binPath +'/gina-debug', true);
|
|
179
354
|
|
|
180
355
|
if ( fs.existsSync(cli) ) {
|
|
181
356
|
fs.unlinkSync(cli)
|
|
@@ -185,24 +360,33 @@ function PostInstall() {
|
|
|
185
360
|
fs.unlinkSync(cliDebug)
|
|
186
361
|
}
|
|
187
362
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
363
|
+
|
|
364
|
+
if ( !self.isGlobalInstall() ) {
|
|
365
|
+
new _(cli, true).symlinkSync( _(self.prefix +'/gina', true) )
|
|
366
|
+
}
|
|
367
|
+
// else {
|
|
368
|
+
// new _(cli, true).symlinkSync( _(self.prefix +'/bin/', true) )
|
|
369
|
+
// }
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
// var cmd = 'ln -s '+ self.gina +'/bin/gina '+ binPath;
|
|
373
|
+
// console.debug('running: '+ cmd);
|
|
374
|
+
// run(cmd, { cwd: _(self.versionPath), tmp: _(self.root +'/tmp'), outToProcessSTD: true })
|
|
375
|
+
// .onData(function(data){
|
|
376
|
+
// console.info(data)
|
|
377
|
+
// })
|
|
378
|
+
// .onComplete( function onDone(err, data){
|
|
379
|
+
// if (err) {
|
|
380
|
+
// console.error(err);
|
|
381
|
+
// console.warn('try to run : sudo ' + cmd);
|
|
382
|
+
// }
|
|
383
|
+
// });
|
|
200
384
|
// To debug, you just need to run:
|
|
201
385
|
// gina <topic>:<task> --inspect-gina
|
|
202
386
|
//
|
|
203
387
|
// TODO - remove this part for the next version
|
|
204
388
|
// cmd = 'ln -s '+ self.gina +'/bin/cli-debug '+ binPath +'/gina-debug';
|
|
205
|
-
// run(cmd, { cwd: _(self.
|
|
389
|
+
// run(cmd, { cwd: _(self.versionPath), tmp: _(self.root +'/tmp'), outToProcessSTD: true })
|
|
206
390
|
// .onData(function(data){
|
|
207
391
|
// console.info(data)
|
|
208
392
|
// })
|
|
@@ -219,52 +403,57 @@ function PostInstall() {
|
|
|
219
403
|
}
|
|
220
404
|
|
|
221
405
|
//Creating framework command line file for nix.
|
|
222
|
-
var createGinaFile = function(
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
if ( typeof(win32Name) != 'undefined') {
|
|
228
|
-
target = _(appPath +'/'+ win32Name)
|
|
229
|
-
}
|
|
230
|
-
//Will override.
|
|
231
|
-
console.info('linking to binaries dir ... ');
|
|
232
|
-
if ( typeof(callback) != 'undefined') {
|
|
233
|
-
if ( !self.isGlobalInstall ) { // local install only
|
|
234
|
-
lib.generator.createFileFromTemplate(source, target, function onGinaFileCreated(err) {
|
|
235
|
-
callback(err)
|
|
406
|
+
var createGinaFile = function(callback) {
|
|
407
|
+
// local install only
|
|
408
|
+
if (self.isGlobalInstall) {
|
|
409
|
+
return callback(false);
|
|
410
|
+
}
|
|
236
411
|
|
|
237
|
-
|
|
238
|
-
|
|
412
|
+
console.info('Current prefix: '+ self.prefix );
|
|
413
|
+
console.info('Current package.json: '+ _(self.gina + '/package.json', true) );
|
|
414
|
+
|
|
415
|
+
console.info('Creating framework command line:');
|
|
416
|
+
var appPath = process.env.INIT_CWD;
|
|
417
|
+
console.debug('App path: '+ appPath);
|
|
418
|
+
var source = _(appPath + '/node_modules/.bin/gina', true);
|
|
419
|
+
var target = _(appPath +'/gina', true);
|
|
420
|
+
if ( isWin32() ) {
|
|
421
|
+
source = _(appPath + '/node_modules/.bin/gina.bat', true)
|
|
422
|
+
target = _(appPath +'/gina.bat', true)
|
|
423
|
+
}
|
|
424
|
+
console.debug('Source: '+ source);
|
|
425
|
+
console.debug('Target: '+ target);
|
|
239
426
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
427
|
+
if ( callback && typeof(callback) != 'undefined') {
|
|
428
|
+
console.info('linking to binaries dir: '+ source +' -> '+ target);
|
|
429
|
+
try {
|
|
430
|
+
if ( fs.existsSync(target) ) {
|
|
431
|
+
fs.unlinkSync(target)
|
|
432
|
+
}
|
|
433
|
+
new _(source).symlinkSync(target)
|
|
434
|
+
} catch (err) {
|
|
435
|
+
return callback(err)
|
|
246
436
|
}
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
// }
|
|
437
|
+
|
|
438
|
+
return callback(false);
|
|
250
439
|
}
|
|
251
440
|
}
|
|
252
441
|
|
|
253
442
|
self.createGinaFileForPlatform = async function(done) {
|
|
254
443
|
console.info('Creating platform file');
|
|
255
|
-
var name = require( _(self.
|
|
444
|
+
// var name = require( _(self.versionPath + '/package.json') ).name;
|
|
256
445
|
|
|
257
|
-
var filename = ( (self.isWin32) ? '.' : '' ) + name;
|
|
446
|
+
// var filename = ( (self.isWin32) ? '.' : '' ) + name;
|
|
258
447
|
|
|
259
|
-
var keepGoing = function(
|
|
448
|
+
var keepGoing = function() {
|
|
260
449
|
|
|
261
|
-
createGinaFile(
|
|
450
|
+
createGinaFile(function onFileCreated(err) {
|
|
262
451
|
if (err) {
|
|
263
452
|
return done(err)
|
|
264
453
|
}
|
|
265
454
|
|
|
266
455
|
// this is done to allow multiple calls of post_install.js
|
|
267
|
-
var filename = _(self.
|
|
456
|
+
var filename = _(self.versionPath + '/SUCCESS');
|
|
268
457
|
var installed = fs.existsSync( filename );
|
|
269
458
|
if (installed) {
|
|
270
459
|
fs.unlinkSync( filename );
|
|
@@ -286,7 +475,7 @@ function PostInstall() {
|
|
|
286
475
|
if ( !hasNodeModulesSync() ) {
|
|
287
476
|
return npmInstall(done)
|
|
288
477
|
} else {
|
|
289
|
-
var target = new _(self.
|
|
478
|
+
var target = new _(self.versionPath + '/node_modules');
|
|
290
479
|
console.debug('replacing: ', target.toString() );
|
|
291
480
|
return target
|
|
292
481
|
.rm( function onRemove(err) {
|
|
@@ -301,54 +490,55 @@ function PostInstall() {
|
|
|
301
490
|
})
|
|
302
491
|
}
|
|
303
492
|
|
|
304
|
-
if (self.isWin32) {
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
493
|
+
// if (self.isWin32) {
|
|
494
|
+
// // var appPath = _( self.versionPath.substring(0, (self.versionPath.length - ("node_modules/" + name + '/').length)) );
|
|
495
|
+
// var appPath = process.cwd()
|
|
496
|
+
// var source = _(self.versionPath + '/core/template/command/gina.bat.tpl');
|
|
497
|
+
// var target = _(appPath +'/'+ name + '.bat');
|
|
498
|
+
// if ( fs.existsSync(target) ) {
|
|
499
|
+
// fs.unlinkSync(target);
|
|
500
|
+
// // have to wait for windows to complete this
|
|
501
|
+
// setTimeout( async function(){
|
|
502
|
+
// lib.generator.createFileFromTemplate(source, target);
|
|
503
|
+
// await keepGoing(filename)
|
|
504
|
+
// }, 1000)
|
|
505
|
+
// } else {
|
|
506
|
+
// lib.generator.createFileFromTemplate(source, target);
|
|
507
|
+
// await keepGoing(filename)
|
|
508
|
+
// }
|
|
509
|
+
|
|
510
|
+
// } else {
|
|
511
|
+
await keepGoing()
|
|
512
|
+
// }
|
|
323
513
|
}
|
|
324
514
|
|
|
325
515
|
|
|
326
516
|
var hasNodeModulesSync = function() {
|
|
327
|
-
return fs.existsSync( _(self.
|
|
517
|
+
return fs.existsSync( _(self.versionPath + '/node_modules') )
|
|
328
518
|
}
|
|
329
519
|
|
|
330
520
|
|
|
331
521
|
var npmInstall = function(done) {
|
|
332
|
-
|
|
522
|
+
|
|
523
|
+
console.info('Now installing modules: please, wait ...');
|
|
333
524
|
console.info('Prefix ('+ self.isCustomPrefix +'): '+ self.prefix);
|
|
334
|
-
|
|
335
|
-
|
|
525
|
+
console.info('Default prefix: '+ self.defaultPrefix);
|
|
526
|
+
var initialDir = process.cwd();
|
|
336
527
|
|
|
337
|
-
console.info('running: '+ cmd +' from '+ _(self.path) );
|
|
338
|
-
console.info('running TMP: '+ _(self.root +'/tmp') );
|
|
339
528
|
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
529
|
+
var cmd = ( isWin32() ) ? 'npm.cmd install' : 'npm install';
|
|
530
|
+
|
|
531
|
+
process.chdir( self.versionPath );
|
|
532
|
+
|
|
533
|
+
console.info('running: `'+ cmd +'` from '+ process.cwd() );
|
|
534
|
+
console.info('running using TMPDIR: '+ _(getTmpDir(), true) );
|
|
535
|
+
var oldConfigGlobal = process.env.npm_config_global;
|
|
536
|
+
process.env.npm_config_global = false;
|
|
537
|
+
execSync(cmd);
|
|
538
|
+
process.chdir(initialDir);
|
|
539
|
+
process.env.npm_config_global = oldConfigGlobal;
|
|
540
|
+
|
|
541
|
+
done()
|
|
352
542
|
}
|
|
353
543
|
|
|
354
544
|
self.cleanupIfNeeded = function(done) {
|
|
@@ -360,16 +550,24 @@ function PostInstall() {
|
|
|
360
550
|
if ( new _(frameworkPath +'/node_modules/colors', true).existsSync() ) {
|
|
361
551
|
var initialDir = process.cwd();
|
|
362
552
|
process.chdir(frameworkPath);
|
|
363
|
-
var
|
|
364
|
-
|
|
553
|
+
var oldConfigGlobal = process.env.npm_config_global;
|
|
554
|
+
process.env.npm_config_global=false;
|
|
555
|
+
|
|
556
|
+
// var cmd = self.prefix +'/bin/';
|
|
557
|
+
// cmd += ( isWin32() ) ? 'npm.cmd rm colors' : 'npm rm colors';
|
|
558
|
+
|
|
559
|
+
var cmd = ( isWin32() ) ? 'npm.cmd rm colors' : 'npm rm colors';
|
|
560
|
+
|
|
365
561
|
try {
|
|
366
562
|
execSync(cmd);
|
|
367
563
|
console.debug('Removed default `colors` module from `GINA_DIR`... This is normal ;)');
|
|
368
564
|
} catch (npmErr) {
|
|
565
|
+
process.chdir(initialDir);
|
|
369
566
|
return done(npmErr);
|
|
370
567
|
}
|
|
371
568
|
|
|
372
569
|
process.chdir(initialDir);
|
|
570
|
+
process.env.npm_config_global=oldConfigGlobal;
|
|
373
571
|
}
|
|
374
572
|
|
|
375
573
|
done()
|
|
@@ -393,6 +591,9 @@ function PostInstall() {
|
|
|
393
591
|
|
|
394
592
|
// reading default extensions
|
|
395
593
|
var ext = _(self.gina +'/resources/home/user/extensions', true);
|
|
594
|
+
// if (!self.isCustomPrefix) {
|
|
595
|
+
// ext = _( self.defaultPrefix + '/lib/node_modules/gina/bin/gina')
|
|
596
|
+
// }
|
|
396
597
|
var folders = [];
|
|
397
598
|
try {
|
|
398
599
|
console.debug('Reading : '+ ext + ' - isDirectory ? '+ fs.lstatSync( ext ).isDirectory() );
|
|
@@ -427,7 +628,6 @@ function PostInstall() {
|
|
|
427
628
|
|
|
428
629
|
let files = []
|
|
429
630
|
, extDir = _(ext +'/'+ dir, true)
|
|
430
|
-
, extDirObj = new _(extDir)
|
|
431
631
|
;
|
|
432
632
|
try {
|
|
433
633
|
|
|
@@ -464,7 +664,7 @@ function PostInstall() {
|
|
|
464
664
|
});
|
|
465
665
|
|
|
466
666
|
if (err) {
|
|
467
|
-
|
|
667
|
+
return done(err);
|
|
468
668
|
}
|
|
469
669
|
}
|
|
470
670
|
}
|
|
@@ -474,6 +674,64 @@ function PostInstall() {
|
|
|
474
674
|
done()
|
|
475
675
|
}
|
|
476
676
|
|
|
677
|
+
/**
|
|
678
|
+
* Updated user's profile
|
|
679
|
+
* Will edit ~/.profile, check and add if needed path to Gina binary
|
|
680
|
+
*
|
|
681
|
+
*/
|
|
682
|
+
self.updateUserProfile = async function(done) {
|
|
683
|
+
|
|
684
|
+
if ( !self.isGlobalInstall || isWin32() ) {
|
|
685
|
+
return done()
|
|
686
|
+
}
|
|
687
|
+
if (!self.isCustomPrefix || self.prefix == self.defaultPrefix) {
|
|
688
|
+
return done()
|
|
689
|
+
}
|
|
690
|
+
|
|
691
|
+
var profilePath = getUserHome() + '/.profile';
|
|
692
|
+
var profilePathObj = new _(profilePath);
|
|
693
|
+
if ( !profilePathObj.existsSync() ) {
|
|
694
|
+
cmd = 'touch '+ profilePath;
|
|
695
|
+
await promisify(run)(cmd, { cwd: _(self.versionPath), tmp: _(getTmpDir(), true), outToProcessSTD: true, shell: "/bin/bash"})
|
|
696
|
+
.catch(function onError(err){
|
|
697
|
+
if (err) {
|
|
698
|
+
console.warn('try to run: sudo ' + cmd);
|
|
699
|
+
return done(err);
|
|
700
|
+
}
|
|
701
|
+
});
|
|
702
|
+
}
|
|
703
|
+
|
|
704
|
+
var inFile = null;
|
|
705
|
+
var patt = _(self.prefix.replace( new RegExp( '^' +getUserHome() ), '(.*)[$]HOME') + '/bin', true);
|
|
706
|
+
try {
|
|
707
|
+
inFile = execSync("cat ~/.profile | grep -Eo '" + patt +"'", {shell: "/bin/bash"}).toString();
|
|
708
|
+
} catch (err) {
|
|
709
|
+
// nothing to do
|
|
710
|
+
}
|
|
711
|
+
|
|
712
|
+
if (!inFile) {
|
|
713
|
+
patt = patt.replace('(.*)[$]', '$');
|
|
714
|
+
inFile = '\nif [ -d "'+ patt +'" ]; then';
|
|
715
|
+
inFile += '\n PATH="'+ patt +':$PATH"';
|
|
716
|
+
inFile += '\nfi\n';
|
|
717
|
+
try {
|
|
718
|
+
fs.appendFileSync( getUserHome()+'/.profile', inFile );
|
|
719
|
+
} catch (err) {
|
|
720
|
+
return done(err);
|
|
721
|
+
}
|
|
722
|
+
inFile = null;
|
|
723
|
+
|
|
724
|
+
// we need to source/update ~/.profile
|
|
725
|
+
try {
|
|
726
|
+
execSync("source "+ profilePath, {shell: "/bin/bash"});
|
|
727
|
+
} catch (err) {
|
|
728
|
+
return done(err)
|
|
729
|
+
}
|
|
730
|
+
}
|
|
731
|
+
|
|
732
|
+
done()
|
|
733
|
+
}
|
|
734
|
+
|
|
477
735
|
var restoreSymlinks = function() {
|
|
478
736
|
var archivesPath = _(getUserHome() + '/.gina/archives/framework', true);
|
|
479
737
|
var frameworkPath = _(self.gina +'/framework', true);
|
|
@@ -497,15 +755,17 @@ function PostInstall() {
|
|
|
497
755
|
// intercept & remove existing symlinks or old versions dir
|
|
498
756
|
try {
|
|
499
757
|
if ( fs.lstatSync( _(frameworkPath +'/'+ dir, true) ).isSymbolicLink() ) {
|
|
500
|
-
|
|
501
|
-
|
|
758
|
+
console.debug('Removing Symlink: '+ _(frameworkPath +'/'+ dir, true) );
|
|
759
|
+
// new _(frameworkPath +'/'+ dir, true).rmSync();
|
|
760
|
+
fs.unlinkSync(_(frameworkPath +'/'+ dir, true));
|
|
502
761
|
continue;
|
|
503
762
|
}
|
|
504
|
-
|
|
763
|
+
|
|
764
|
+
if (
|
|
505
765
|
dir != currentVersion
|
|
506
766
|
&& fs.lstatSync( _(frameworkPath +'/'+ dir, true) ).isDirectory()
|
|
507
767
|
) {
|
|
508
|
-
console.debug('Removing old version: '+ dir);
|
|
768
|
+
console.debug('Removing old version: '+ _(frameworkPath +'/'+ dir, true));
|
|
509
769
|
new _(frameworkPath +'/'+ dir, true).rmSync()
|
|
510
770
|
}
|
|
511
771
|
} catch (e) {
|
|
@@ -537,15 +797,34 @@ function PostInstall() {
|
|
|
537
797
|
}
|
|
538
798
|
}
|
|
539
799
|
|
|
800
|
+
|
|
540
801
|
self.end = function(done) {
|
|
541
802
|
|
|
542
803
|
restoreSymlinks();
|
|
543
804
|
|
|
805
|
+
// configuring Gina
|
|
806
|
+
var ginaBinanry = _(self.gina + '/bin/gina', true);
|
|
807
|
+
if (!self.isCustomPrefix && self.isGlobalInstall) {
|
|
808
|
+
ginaBinanry = _( self.defaultPrefix + '/lib/node_modules/gina/bin/gina')
|
|
809
|
+
}
|
|
810
|
+
|
|
811
|
+
if ( !fs.existsSync(ginaBinanry) ) {
|
|
812
|
+
console.error('`'+ ginaBinanry +'` not found !');
|
|
813
|
+
}
|
|
814
|
+
|
|
815
|
+
try {
|
|
816
|
+
execSync(ginaBinanry + ' framework:set --global-mode='+ self.isGlobalInstall);
|
|
817
|
+
execSync(ginaBinanry + ' framework:set --prefix='+ self.prefix);
|
|
818
|
+
} catch (err) {
|
|
819
|
+
return done(err)
|
|
820
|
+
}
|
|
821
|
+
|
|
822
|
+
|
|
544
823
|
// Update middleware file
|
|
545
|
-
var filename = _(self.
|
|
824
|
+
var filename = _(self.versionPath) + '/MIDDLEWARE';
|
|
546
825
|
var msg = "Gina's command line tool has been installed.";
|
|
547
826
|
|
|
548
|
-
var deps = require(_(self.
|
|
827
|
+
var deps = require(_(self.versionPath) + '/package.json').dependecies;
|
|
549
828
|
|
|
550
829
|
var version = require( _(self.gina + '/package.json') ).version;
|
|
551
830
|
var middleware = 'isaac@'+version; // by default
|
|
@@ -556,11 +835,12 @@ function PostInstall() {
|
|
|
556
835
|
}
|
|
557
836
|
}
|
|
558
837
|
|
|
559
|
-
var expressPackage = _(self.
|
|
838
|
+
var expressPackage = _(self.versionPath + '/node_modules/express/package.json');
|
|
560
839
|
if ( typeof(middleware) == 'undefined' && fs.existsSync(expressPackage) ) {
|
|
561
840
|
middleware = require(expressPackage).version;
|
|
562
841
|
middleware = 'express@' + middleware;
|
|
563
|
-
}
|
|
842
|
+
}
|
|
843
|
+
else if (typeof(middleware) == 'undefined') {
|
|
564
844
|
return done( new Error('No middleware found !!') );
|
|
565
845
|
}
|
|
566
846
|
|
|
@@ -572,6 +852,8 @@ function PostInstall() {
|
|
|
572
852
|
if (err) {
|
|
573
853
|
return done(err)
|
|
574
854
|
}
|
|
855
|
+
console.debug('Updated: def !== middleware case');
|
|
856
|
+
// execSync(self.prefix +'/bin/gina framework:set --prefix='+ self.prefix);
|
|
575
857
|
console.info(msg);
|
|
576
858
|
done()
|
|
577
859
|
})
|
|
@@ -581,12 +863,15 @@ function PostInstall() {
|
|
|
581
863
|
if (err) {
|
|
582
864
|
return done(err)
|
|
583
865
|
}
|
|
866
|
+
console.info('File created case');
|
|
867
|
+
|
|
584
868
|
console.info(msg);
|
|
585
869
|
done()
|
|
586
870
|
})
|
|
587
871
|
}
|
|
588
872
|
}
|
|
589
873
|
|
|
874
|
+
|
|
590
875
|
init()
|
|
591
876
|
}
|
|
592
877
|
new PostInstall()
|