gina 0.1.1-alpha.17 → 0.1.1-alpha.171
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 +202 -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.17/core/template/command/gina.bat.tpl → bin/gina.bat} +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/AUTHORS +0 -0
- package/framework/{v0.1.1-alpha.17/lib/inherits → v0.1.1-alpha.171}/LICENSE +1 -1
- package/framework/v0.1.1-alpha.171/VERSION +1 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/html/nolayout.html +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/html/static.html +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/android-chrome-192x192.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/android-chrome-512x512.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/apple-touch-icon.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/favicon-16x16.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/favicon-32x32.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/favicon.ico +0 -0
- package/framework/{v0.1.1-alpha.17/core/asset/js/plugin/readme.md → v0.1.1-alpha.171/core/asset/plugin/README.md} +31 -9
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/css/gina.min.css +1 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/html/toolbar.html +251 -0
- package/framework/{v0.1.1-alpha.17/core/asset/js/plugin/dist → v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js}/gina.js +3786 -3007
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.min.js +756 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +5 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
- package/framework/{v0.1.1-alpha.17/core/asset/js → v0.1.1-alpha.171/core/asset}/plugin/uuid.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/config.js +95 -39
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/index.js +332 -223
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/connector.js +22 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/connector.v2.js +51 -51
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/connector.v3.js +51 -51
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/connector.v4.js +384 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/n1ql.js +3 -2
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/session-store.js +22 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/session-store.v3.js +12 -12
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/session-store.v4.js +361 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/controller/controller.framework.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/controller/controller.js +787 -743
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/controller/index.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/.travis.yml +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/LICENSE +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/deps/encoding/encoding.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/main.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/types/multipart.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/types/urlencoded.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/utils.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/package.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/index.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/lib/class.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/lib/factory.js +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/lib/tools.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/gna.js +13 -9
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/README.md +5 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/currency.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/dist/language/en.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/dist/language/fr.json +0 -0
- package/framework/v0.1.1-alpha.171/core/locales/dist/region/en.json +5727 -0
- package/framework/v0.1.1-alpha.171/core/locales/dist/region/fr.json +11452 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/index.js +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/src/make.js +39 -41
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/src/resources/currency.csv +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/src/resources/region.csv +0 -0
- package/framework/v0.1.1-alpha.171/core/locales/src/resources/region.mapping.json +43 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/mime.types +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/entity.js +87 -67
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/index.js +16 -16
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/template/entityFactory.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/template/index.js +15 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/index.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/file/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/file/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/file/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/src/main.js +5 -5
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/src/main.js +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/src/form-validator.js +397 -296
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/src/main.js +1279 -1256
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/router.js +95 -79
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/server.express.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/server.isaac.js +118 -109
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/server.js +230 -57
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/status.codes +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/app.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/routing.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/settings.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/settings.server.json +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/templates.json +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/controllers/controller.content.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle/controllers/setup.js +111 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/index.js +13 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/readme.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/content/homepage.html +8 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +11 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +8 -0
- package/framework/{v0.1.1-alpha.17/core/template/boilerplate/bundle_templates/html/layout → v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/layouts}/main.html +10 -3
- package/framework/v0.1.1-alpha.171/core/template/command/gina.bat.tpl +8 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/command/gina.tpl +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/env.json +11 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/manifest.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/settings.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/statics.json +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/templates.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/client/json/401.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/client/json/403.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/client/json/404.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/server/html/50x.html +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/server/json/500.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/server/json/503.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/extensions/logger/config.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/console.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/context.js +146 -6
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/dateFormat.js +9 -7
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/index.js +13 -8
- package/framework/v0.1.1-alpha.171/helpers/json/LICENSE +9 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/json/README.md +0 -0
- package/framework/{v0.1.1-alpha.17/helpers/plugins → v0.1.1-alpha.171/helpers/json}/package.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/json/src/main.js +25 -25
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/path.js +163 -96
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/plugins/README.md +0 -0
- package/framework/{v0.1.1-alpha.17/helpers/json → v0.1.1-alpha.171/helpers/plugins}/package.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/plugins/src/api-error.js +23 -23
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/plugins/src/main.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/prototypes.js +46 -38
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/task.js +21 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/text.js +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/src/dep/jszip.min.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/src/main.js +168 -168
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/aliases.json +4 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/add.js +43 -17
- package/framework/v0.1.1-alpha.171/lib/cmd/bundle/arguments.json +6 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/copy.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/cp.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/help.txt +2 -2
- package/framework/v0.1.1-alpha.171/lib/cmd/bundle/list.js +176 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/remove.js +22 -22
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/rename.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/restart.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/start.js +264 -46
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/status.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/stop.js +93 -74
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/add.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/get.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/link-dev.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/list.js +20 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/remove.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/set.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/unset.js +0 -0
- package/framework/{v0.1.1-alpha.17/lib/cmd/scope → v0.1.1-alpha.171/lib/cmd/env}/use.js +21 -1
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/build.js +85 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/dot.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/get.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/help.txt +0 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/init.js +798 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/link-node-modules.js +86 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/link.js +110 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/msg.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/open.js +15 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/restart.js +58 -26
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/set.js +264 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/start.js +43 -20
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/status.js +138 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/stop.js +44 -28
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/tail.js +299 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/update.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/version.js +12 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/gina-dev.1.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/gina-framework.1.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/gina.1.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/helper.js +74 -5
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/index.js +23 -23
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/msg.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/inc/scan.js +32 -17
- package/framework/v0.1.1-alpha.171/lib/cmd/port/list.js +459 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/port/reset.js +426 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/set.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/add.js +146 -122
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/arguments.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/build.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/import.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/list.js +16 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/move.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/remove.js +17 -17
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/rename.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/restart.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/start.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/status.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/stop.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/list.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/set.js +239 -201
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/link-local.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/list.js +24 -8
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/remove.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/set.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/unset.js +0 -0
- package/framework/{v0.1.1-alpha.17/lib/cmd/env → v0.1.1-alpha.171/lib/cmd/scope}/use.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/view/add.js +34 -9
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/src/main.js +241 -241
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/config.js +31 -30
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cron/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cron/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cron/src/main.js +10 -9
- package/framework/v0.1.1-alpha.171/lib/domain/LICENSE +9 -0
- package/framework/v0.1.1-alpha.171/lib/domain/README.md +46 -0
- package/framework/v0.1.1-alpha.171/lib/domain/dist/public_suffix_list.dat +14186 -0
- package/framework/{v0.1.1-alpha.17/lib/routing/README.md → v0.1.1-alpha.171/lib/domain/exemples/backend.js} +0 -0
- package/framework/{v0.1.1-alpha.17/lib/routing/build.json → v0.1.1-alpha.171/lib/domain/exemples/frontend.html} +0 -0
- package/framework/v0.1.1-alpha.171/lib/domain/package.json +20 -0
- package/framework/v0.1.1-alpha.171/lib/domain/src/main.js +442 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/generator/index.js +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/index.js +3 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171/lib/inherits}/LICENSE +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/README.md +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/inheriting_eventemitter.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/protected_inheritance.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/simple_inheritance.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/package.json +3 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/src/main.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/package.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/default/index.js +13 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/file/index.js +105 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/mq/index.js +7 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/mq/listener.js +16 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/mq/speaker.js +32 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/helper.js +21 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/main.js +27 -7
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/math/index.js +9 -9
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/README.md +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/example/merge.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/example/merge_2_literal objects.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/example/merge_and_preserve_first.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/src/main.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/model.js +10 -10
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/proc.js +87 -49
- package/framework/{v0.1.1-alpha.17/lib/swig-filters → v0.1.1-alpha.171/lib/routing}/README.md +0 -0
- package/framework/{v0.1.1-alpha.17/lib/url/README.md → v0.1.1-alpha.171/lib/routing/build.json} +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/routing/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/routing/src/main.js +270 -264
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/session-store.js +6 -6
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/shell.js +3 -3
- package/framework/v0.1.1-alpha.171/lib/swig-filters/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/swig-filters/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/swig-filters/src/main.js +55 -52
- package/framework/v0.1.1-alpha.171/lib/url/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/index.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/mocks.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/routing.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/test.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/validator.js +2 -2
- package/framework/v0.1.1-alpha.171/package.json +14 -0
- package/package.json +33 -24
- package/resources/home/main.json +44 -1
- package/resources/home/settings.json +7 -0
- package/resources/home/user/extensions/logger/default/config.json +1 -1
- package/resources/package.json.template +29 -18
- package/script/post_install.js +411 -123
- 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 +10 -0
- package/services/manifest.json +18 -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.17/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/utils/helper.js +236 -185
- package/utils/prototypes.js +9 -9
- package/utils/prototypes.json_clone.js +36 -35
- package/doc/framework/cli/doc.json +0 -9
- package/doc/framework/index.md +0 -60
- package/framework/v0.1.1-alpha.17/VERSION +0 -1
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.js.map +0 -56
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.css +0 -1
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.css.map +0 -1
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.js +0 -736
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.js.map +0 -56
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.onload.min.js +0 -5
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.onload.min.js.map +0 -8
- package/framework/v0.1.1-alpha.17/core/connectors/couchbase/lib/connector.js +0 -20
- package/framework/v0.1.1-alpha.17/core/connectors/couchbase/lib/session-store.js +0 -21
- package/framework/v0.1.1-alpha.17/core/locales/dist/region/en.json +0 -9492
- package/framework/v0.1.1-alpha.17/core/locales/dist/region/fr.json +0 -9492
- package/framework/v0.1.1-alpha.17/core/locales/src/resources/region.mapping.json +0 -28
- package/framework/v0.1.1-alpha.17/core/template/boilerplate/bundle_templates/html/homepage.html +0 -4
- package/framework/v0.1.1-alpha.17/lib/cmd/bundle/arguments.json +0 -4
- package/framework/v0.1.1-alpha.17/lib/cmd/bundle/list.js +0 -129
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/init.js +0 -514
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/set.js +0 -161
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/status.js +0 -72
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/tail.js +0 -183
- package/framework/v0.1.1-alpha.17/lib/cmd/port/list.js +0 -176
- package/framework/v0.1.1-alpha.17/package.json +0 -14
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
|
-
var init = function() {
|
|
35
|
-
self.isWin32 = isWin32();//getEnvVar('GINA_IS_WIN32');
|
|
36
|
-
self.path = getEnvVar('GINA_FRAMEWORK');
|
|
37
|
-
self.gina = getEnvVar('GINA_DIR');
|
|
38
|
-
self.root = self.gina; // by default
|
|
39
|
-
self.isGlobalInstall = false;
|
|
40
|
-
self.prefix = execSync('npm config get prefix');
|
|
41
|
-
self.isCustomPrefix = false;
|
|
92
|
+
var configure = function() {
|
|
42
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
|
+
}
|
|
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
|
+
}
|
|
54
146
|
}
|
|
55
147
|
|
|
56
|
-
self.prefix
|
|
148
|
+
if (self.prefix != self.defaultPrefix) {
|
|
149
|
+
self.isCustomPrefix = true;
|
|
150
|
+
}
|
|
57
151
|
|
|
58
|
-
|
|
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
|
+
}
|
|
161
|
+
}
|
|
59
162
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
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());
|
|
196
|
+
|
|
197
|
+
|
|
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,51 +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
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
525
|
+
console.info('Default prefix: '+ self.defaultPrefix);
|
|
526
|
+
var initialDir = process.cwd();
|
|
527
|
+
|
|
528
|
+
|
|
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()
|
|
349
542
|
}
|
|
350
543
|
|
|
351
544
|
self.cleanupIfNeeded = function(done) {
|
|
@@ -357,16 +550,24 @@ function PostInstall() {
|
|
|
357
550
|
if ( new _(frameworkPath +'/node_modules/colors', true).existsSync() ) {
|
|
358
551
|
var initialDir = process.cwd();
|
|
359
552
|
process.chdir(frameworkPath);
|
|
360
|
-
var
|
|
361
|
-
|
|
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
|
+
|
|
362
561
|
try {
|
|
363
562
|
execSync(cmd);
|
|
364
563
|
console.debug('Removed default `colors` module from `GINA_DIR`... This is normal ;)');
|
|
365
564
|
} catch (npmErr) {
|
|
565
|
+
process.chdir(initialDir);
|
|
366
566
|
return done(npmErr);
|
|
367
567
|
}
|
|
368
568
|
|
|
369
569
|
process.chdir(initialDir);
|
|
570
|
+
process.env.npm_config_global=oldConfigGlobal;
|
|
370
571
|
}
|
|
371
572
|
|
|
372
573
|
done()
|
|
@@ -390,6 +591,9 @@ function PostInstall() {
|
|
|
390
591
|
|
|
391
592
|
// reading default extensions
|
|
392
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
|
+
// }
|
|
393
597
|
var folders = [];
|
|
394
598
|
try {
|
|
395
599
|
console.debug('Reading : '+ ext + ' - isDirectory ? '+ fs.lstatSync( ext ).isDirectory() );
|
|
@@ -424,7 +628,6 @@ function PostInstall() {
|
|
|
424
628
|
|
|
425
629
|
let files = []
|
|
426
630
|
, extDir = _(ext +'/'+ dir, true)
|
|
427
|
-
, extDirObj = new _(extDir)
|
|
428
631
|
;
|
|
429
632
|
try {
|
|
430
633
|
|
|
@@ -461,7 +664,7 @@ function PostInstall() {
|
|
|
461
664
|
});
|
|
462
665
|
|
|
463
666
|
if (err) {
|
|
464
|
-
|
|
667
|
+
return done(err);
|
|
465
668
|
}
|
|
466
669
|
}
|
|
467
670
|
}
|
|
@@ -471,6 +674,64 @@ function PostInstall() {
|
|
|
471
674
|
done()
|
|
472
675
|
}
|
|
473
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
|
+
|
|
474
735
|
var restoreSymlinks = function() {
|
|
475
736
|
var archivesPath = _(getUserHome() + '/.gina/archives/framework', true);
|
|
476
737
|
var frameworkPath = _(self.gina +'/framework', true);
|
|
@@ -494,15 +755,17 @@ function PostInstall() {
|
|
|
494
755
|
// intercept & remove existing symlinks or old versions dir
|
|
495
756
|
try {
|
|
496
757
|
if ( fs.lstatSync( _(frameworkPath +'/'+ dir, true) ).isSymbolicLink() ) {
|
|
497
|
-
|
|
498
|
-
|
|
758
|
+
console.debug('Removing Symlink: '+ _(frameworkPath +'/'+ dir, true) );
|
|
759
|
+
// new _(frameworkPath +'/'+ dir, true).rmSync();
|
|
760
|
+
fs.unlinkSync(_(frameworkPath +'/'+ dir, true));
|
|
499
761
|
continue;
|
|
500
762
|
}
|
|
501
|
-
|
|
763
|
+
|
|
764
|
+
if (
|
|
502
765
|
dir != currentVersion
|
|
503
766
|
&& fs.lstatSync( _(frameworkPath +'/'+ dir, true) ).isDirectory()
|
|
504
767
|
) {
|
|
505
|
-
console.debug('Removing old version: '+ dir);
|
|
768
|
+
console.debug('Removing old version: '+ _(frameworkPath +'/'+ dir, true));
|
|
506
769
|
new _(frameworkPath +'/'+ dir, true).rmSync()
|
|
507
770
|
}
|
|
508
771
|
} catch (e) {
|
|
@@ -534,15 +797,34 @@ function PostInstall() {
|
|
|
534
797
|
}
|
|
535
798
|
}
|
|
536
799
|
|
|
800
|
+
|
|
537
801
|
self.end = function(done) {
|
|
538
802
|
|
|
539
803
|
restoreSymlinks();
|
|
540
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
|
+
|
|
541
823
|
// Update middleware file
|
|
542
|
-
var filename = _(self.
|
|
824
|
+
var filename = _(self.versionPath) + '/MIDDLEWARE';
|
|
543
825
|
var msg = "Gina's command line tool has been installed.";
|
|
544
826
|
|
|
545
|
-
var deps = require(_(self.
|
|
827
|
+
var deps = require(_(self.versionPath) + '/package.json').dependecies;
|
|
546
828
|
|
|
547
829
|
var version = require( _(self.gina + '/package.json') ).version;
|
|
548
830
|
var middleware = 'isaac@'+version; // by default
|
|
@@ -553,11 +835,12 @@ function PostInstall() {
|
|
|
553
835
|
}
|
|
554
836
|
}
|
|
555
837
|
|
|
556
|
-
var expressPackage = _(self.
|
|
838
|
+
var expressPackage = _(self.versionPath + '/node_modules/express/package.json');
|
|
557
839
|
if ( typeof(middleware) == 'undefined' && fs.existsSync(expressPackage) ) {
|
|
558
840
|
middleware = require(expressPackage).version;
|
|
559
841
|
middleware = 'express@' + middleware;
|
|
560
|
-
}
|
|
842
|
+
}
|
|
843
|
+
else if (typeof(middleware) == 'undefined') {
|
|
561
844
|
return done( new Error('No middleware found !!') );
|
|
562
845
|
}
|
|
563
846
|
|
|
@@ -569,6 +852,8 @@ function PostInstall() {
|
|
|
569
852
|
if (err) {
|
|
570
853
|
return done(err)
|
|
571
854
|
}
|
|
855
|
+
console.debug('Updated: def !== middleware case');
|
|
856
|
+
// execSync(self.prefix +'/bin/gina framework:set --prefix='+ self.prefix);
|
|
572
857
|
console.info(msg);
|
|
573
858
|
done()
|
|
574
859
|
})
|
|
@@ -578,12 +863,15 @@ function PostInstall() {
|
|
|
578
863
|
if (err) {
|
|
579
864
|
return done(err)
|
|
580
865
|
}
|
|
866
|
+
console.info('File created case');
|
|
867
|
+
|
|
581
868
|
console.info(msg);
|
|
582
869
|
done()
|
|
583
870
|
})
|
|
584
871
|
}
|
|
585
872
|
}
|
|
586
873
|
|
|
874
|
+
|
|
587
875
|
init()
|
|
588
876
|
}
|
|
589
877
|
new PostInstall()
|