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