@joystick.js/cli-canary 0.0.0-canary.172 → 0.0.0-canary.1721
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/.build/getFilesToBuild.js +1 -1
- package/.build/index.js +5 -3
- package/LICENSE.md +59 -0
- package/README.md +45 -4
- package/dist/cli.js +2 -76
- package/dist/cli.js.map +7 -0
- package/dist/commands/build/definition.js +2 -0
- package/dist/commands/build/definition.js.map +7 -0
- package/dist/commands/build/index.js +2 -0
- package/dist/commands/build/index.js.map +7 -0
- package/dist/commands/create/build_package_json.js +2 -0
- package/dist/commands/create/build_package_json.js.map +7 -0
- package/dist/commands/create/definition.js +2 -0
- package/dist/commands/create/definition.js.map +7 -0
- package/dist/commands/create/index.js +3 -0
- package/dist/commands/create/index.js.map +7 -0
- package/dist/commands/create/template/api/index.js +6 -0
- package/dist/commands/create/template/email/base.css +9 -0
- package/dist/commands/create/template/email/base.html +10 -0
- package/dist/commands/create/template/email/reset_password.js +20 -0
- package/dist/commands/create/template/i18n/en-US.js +14 -0
- package/dist/commands/create/template/index.client.js +1 -0
- package/dist/commands/create/template/index.css +34 -0
- package/dist/{functions/create/templates → commands/create/template}/index.html +2 -3
- package/dist/{functions/create/templates → commands/create/template}/index.server.js +6 -6
- package/dist/commands/create/template/public/apple-touch-icon-152x152.png +0 -0
- package/dist/commands/create/template/public/favicon.ico +0 -0
- package/dist/commands/create/template/public/joystick_logo.webp +0 -0
- package/dist/{functions/create/templates → commands/create/template}/public/manifest.json +4 -4
- package/dist/commands/create/template/public/splash-screen-1024x1024.png +0 -0
- package/{src/functions/create/templates → dist/commands/create/template}/ui/components/button/index.js +14 -6
- package/{src/functions/create/templates → dist/commands/create/template}/ui/layouts/app/index.js +2 -2
- package/dist/commands/create/template/ui/pages/error/index.js +50 -0
- package/dist/commands/create/template/ui/pages/index/index.js +121 -0
- package/dist/commands/help/definition.js +2 -0
- package/dist/commands/help/definition.js.map +7 -0
- package/dist/commands/help/index.js +20 -0
- package/dist/commands/help/index.js.map +7 -0
- package/dist/commands/index.js +2 -0
- package/dist/commands/index.js.map +7 -0
- package/dist/commands/logout/definition.js +2 -0
- package/dist/commands/logout/definition.js.map +7 -0
- package/dist/commands/logout/index.js +4 -0
- package/dist/commands/logout/index.js.map +7 -0
- package/dist/commands/push/cdn_mirrors.js +2 -0
- package/dist/commands/push/cdn_mirrors.js.map +7 -0
- package/dist/commands/push/check_if_settings_valid.js +2 -0
- package/dist/commands/push/check_if_settings_valid.js.map +7 -0
- package/dist/commands/push/create_version.js +2 -0
- package/dist/commands/push/create_version.js.map +7 -0
- package/dist/commands/push/definition.js +2 -0
- package/dist/commands/push/definition.js.map +7 -0
- package/dist/commands/push/get_app_domain.js +2 -0
- package/dist/commands/push/get_app_domain.js.map +7 -0
- package/dist/commands/push/get_deployment.js +2 -0
- package/dist/commands/push/get_deployment.js.map +7 -0
- package/dist/commands/push/get_provision_domain.js +2 -0
- package/dist/commands/push/get_provision_domain.js.map +7 -0
- package/dist/commands/push/get_session_token.js +2 -0
- package/dist/commands/push/get_session_token.js.map +7 -0
- package/dist/commands/push/get_settings_file.js +2 -0
- package/dist/commands/push/get_settings_file.js.map +7 -0
- package/dist/commands/push/handle_initial_deployment.js +2 -0
- package/dist/commands/push/handle_initial_deployment.js.map +7 -0
- package/dist/commands/push/handle_version_deployment.js +2 -0
- package/dist/commands/push/handle_version_deployment.js.map +7 -0
- package/dist/commands/push/index.js +9 -0
- package/dist/commands/push/index.js.map +7 -0
- package/dist/commands/push/prompts/confirm_deployment.js +18 -0
- package/dist/commands/push/prompts/confirm_deployment.js.map +7 -0
- package/dist/commands/push/prompts/session_token.js +6 -0
- package/dist/commands/push/prompts/session_token.js.map +7 -0
- package/dist/commands/push/upload_build_to_cdn.js +2 -0
- package/dist/commands/push/upload_build_to_cdn.js.map +7 -0
- package/dist/commands/push/validate_deployment.js +2 -0
- package/dist/commands/push/validate_deployment.js.map +7 -0
- package/dist/commands/push/validate_push_config.js +2 -0
- package/dist/commands/push/validate_push_config.js.map +7 -0
- package/dist/commands/push_v2/Dockerfile +47 -0
- package/dist/commands/push_v2/build_docker_image.js +2 -0
- package/dist/commands/push_v2/build_docker_image.js.map +7 -0
- package/dist/commands/push_v2/cdn_mirrors.js +2 -0
- package/dist/commands/push_v2/cdn_mirrors.js.map +7 -0
- package/dist/commands/push_v2/check_if_settings_valid.js +2 -0
- package/dist/commands/push_v2/check_if_settings_valid.js.map +7 -0
- package/dist/commands/push_v2/create_version.js +2 -0
- package/dist/commands/push_v2/create_version.js.map +7 -0
- package/dist/commands/push_v2/definition.js +2 -0
- package/dist/commands/push_v2/definition.js.map +7 -0
- package/dist/commands/push_v2/get_app_domain.js +2 -0
- package/dist/commands/push_v2/get_app_domain.js.map +7 -0
- package/dist/commands/push_v2/get_deployment.js +2 -0
- package/dist/commands/push_v2/get_deployment.js.map +7 -0
- package/dist/commands/push_v2/get_deployment_token.js +2 -0
- package/dist/commands/push_v2/get_deployment_token.js.map +7 -0
- package/dist/commands/push_v2/get_push_domain.js +2 -0
- package/dist/commands/push_v2/get_push_domain.js.map +7 -0
- package/dist/commands/push_v2/get_settings_file.js +2 -0
- package/dist/commands/push_v2/get_settings_file.js.map +7 -0
- package/dist/commands/push_v2/handle_initial_deployment.js +2 -0
- package/dist/commands/push_v2/handle_initial_deployment.js.map +7 -0
- package/dist/commands/push_v2/handle_version_deployment.js +2 -0
- package/dist/commands/push_v2/handle_version_deployment.js.map +7 -0
- package/dist/commands/push_v2/index.js +6 -0
- package/dist/commands/push_v2/index.js.map +7 -0
- package/dist/commands/push_v2/prompts/confirm_deployment.js +18 -0
- package/dist/commands/push_v2/prompts/confirm_deployment.js.map +7 -0
- package/dist/commands/push_v2/prompts/session_token.js +6 -0
- package/dist/commands/push_v2/prompts/session_token.js.map +7 -0
- package/dist/commands/push_v2/upload_build_to_push.js +2 -0
- package/dist/commands/push_v2/upload_build_to_push.js.map +7 -0
- package/dist/commands/push_v2/validate_deployment.js +2 -0
- package/dist/commands/push_v2/validate_deployment.js.map +7 -0
- package/dist/commands/push_v2/validate_push_config.js +2 -0
- package/dist/commands/push_v2/validate_push_config.js.map +7 -0
- package/dist/commands/start/definition.js +2 -0
- package/dist/commands/start/definition.js.map +7 -0
- package/dist/commands/start/index.js +2 -0
- package/dist/commands/start/index.js.map +7 -0
- package/dist/commands/test/definition.js +2 -0
- package/dist/commands/test/definition.js.map +7 -0
- package/dist/commands/test/index.js +2 -0
- package/dist/commands/test/index.js.map +7 -0
- package/dist/commands/update/definition.js +2 -0
- package/dist/commands/update/definition.js.map +7 -0
- package/dist/commands/update/index.js +2 -0
- package/dist/commands/update/index.js.map +7 -0
- package/dist/commands/use/definition.js +2 -0
- package/dist/commands/use/definition.js.map +7 -0
- package/dist/commands/use/index.js +2 -0
- package/dist/commands/use/index.js.map +7 -0
- package/dist/index.js +2 -7
- package/dist/index.js.map +7 -0
- package/dist/lib/build/browser_path_exclusions.js +2 -0
- package/dist/lib/build/browser_path_exclusions.js.map +7 -0
- package/dist/lib/build/browser_paths.js +2 -0
- package/dist/lib/build/browser_paths.js.map +7 -0
- package/dist/lib/build/build_files.js +4 -0
- package/dist/lib/build/build_files.js.map +7 -0
- package/dist/lib/build/copy_paths.js +2 -0
- package/dist/lib/build/copy_paths.js.map +7 -0
- package/dist/lib/build/get_code_frame.js +2 -0
- package/dist/lib/build/get_code_frame.js.map +7 -0
- package/dist/lib/build/get_file_operation.js +2 -0
- package/dist/lib/build/get_file_operation.js.map +7 -0
- package/dist/lib/build/get_files_to_build.js +2 -0
- package/dist/lib/build/get_files_to_build.js.map +7 -0
- package/dist/lib/build/get_path_platform.js +2 -0
- package/dist/lib/build/get_path_platform.js.map +7 -0
- package/dist/lib/build/get_platform_safe_path.js +2 -0
- package/dist/lib/build/get_platform_safe_path.js.map +7 -0
- package/dist/lib/build/get_tar_ignore_list.js +3 -0
- package/dist/lib/build/get_tar_ignore_list.js.map +7 -0
- package/dist/lib/build/index.js +4 -0
- package/dist/lib/build/index.js.map +7 -0
- package/dist/lib/build/master_ignore_list.js +2 -0
- package/dist/lib/build/master_ignore_list.js.map +7 -0
- package/dist/lib/build/minify_file.js +2 -0
- package/dist/lib/build/minify_file.js.map +7 -0
- package/dist/lib/build/node_paths.js +2 -0
- package/dist/lib/build/node_paths.js.map +7 -0
- package/dist/lib/build/on_warn.js +11 -0
- package/dist/lib/build/on_warn.js.map +7 -0
- package/dist/lib/build/plugins/bootstrap_component.js +34 -0
- package/dist/lib/build/plugins/bootstrap_component.js.map +7 -0
- package/dist/lib/build/plugins/generate_file_dependency_map.js +2 -0
- package/dist/lib/build/plugins/generate_file_dependency_map.js.map +7 -0
- package/dist/lib/build/plugins/index.js +2 -0
- package/dist/lib/build/plugins/index.js.map +7 -0
- package/dist/lib/build/plugins/set_component_id.js +3 -0
- package/dist/lib/build/plugins/set_component_id.js.map +7 -0
- package/dist/lib/build/plugins/update_file_map.js +2 -0
- package/dist/lib/build/plugins/update_file_map.js.map +7 -0
- package/dist/lib/build/plugins/warn_node_environment.js +4 -0
- package/dist/lib/build/plugins/warn_node_environment.js.map +7 -0
- package/dist/lib/cli_log.js +14 -0
- package/dist/lib/cli_log.js.map +7 -0
- package/dist/lib/color_log.js +2 -0
- package/dist/lib/color_log.js.map +7 -0
- package/dist/lib/command_exists.js +2 -0
- package/dist/lib/command_exists.js.map +7 -0
- package/dist/lib/constants.js +2 -4
- package/dist/lib/constants.js.map +7 -0
- package/dist/lib/debounce.js +2 -0
- package/dist/lib/debounce.js.map +7 -0
- package/dist/lib/decrypt_buffer.js +2 -0
- package/dist/lib/decrypt_buffer.js.map +7 -0
- package/dist/lib/development_server/ava_config.js +2 -0
- package/dist/lib/development_server/ava_config.js.map +7 -0
- package/dist/lib/development_server/check_if_port_occupied.js +2 -0
- package/dist/lib/development_server/check_if_port_occupied.js.map +7 -0
- package/dist/lib/development_server/cleanup.js +2 -0
- package/dist/lib/development_server/cleanup.js.map +7 -0
- package/dist/lib/development_server/databases/download_database_binary.js +2 -0
- package/dist/lib/development_server/databases/download_database_binary.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/available_query_parameters.js +2 -0
- package/dist/lib/development_server/databases/mongodb/available_query_parameters.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/build_connection_string.js +2 -0
- package/dist/lib/development_server/databases/mongodb/build_connection_string.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/build_query_parameters.js +2 -0
- package/dist/lib/development_server/databases/mongodb/build_query_parameters.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/check_connection.js +3 -0
- package/dist/lib/development_server/databases/mongodb/check_connection.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/connect.js +2 -0
- package/dist/lib/development_server/databases/mongodb/connect.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/index.js +2 -0
- package/dist/lib/development_server/databases/mongodb/index.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/installers/linux.js +2 -0
- package/dist/lib/development_server/databases/mongodb/installers/linux.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/installers/macos.js +2 -0
- package/dist/lib/development_server/databases/mongodb/installers/macos.js.map +7 -0
- package/dist/lib/development_server/databases/mongodb/installers/windows.js +2 -0
- package/dist/lib/development_server/databases/mongodb/installers/windows.js.map +7 -0
- package/dist/lib/development_server/databases/postgresql/check_connection.js +3 -0
- package/dist/lib/development_server/databases/postgresql/check_connection.js.map +7 -0
- package/dist/lib/development_server/databases/postgresql/connect.js +2 -0
- package/dist/lib/development_server/databases/postgresql/connect.js.map +7 -0
- package/dist/lib/development_server/databases/postgresql/index.js +3 -0
- package/dist/lib/development_server/databases/postgresql/index.js.map +7 -0
- package/dist/lib/development_server/databases/postgresql/installers/linux.js +2 -0
- package/dist/lib/development_server/databases/postgresql/installers/linux.js.map +7 -0
- package/dist/lib/development_server/databases/postgresql/installers/macos.js +2 -0
- package/dist/lib/development_server/databases/postgresql/installers/macos.js.map +7 -0
- package/dist/lib/development_server/databases/postgresql/installers/windows.js +2 -0
- package/dist/lib/development_server/databases/postgresql/installers/windows.js.map +7 -0
- package/dist/lib/development_server/databases/provider_map.js +2 -0
- package/dist/lib/development_server/databases/provider_map.js.map +7 -0
- package/dist/lib/development_server/get_database_process_ids.js +2 -0
- package/dist/lib/development_server/get_database_process_ids.js.map +7 -0
- package/dist/lib/development_server/get_translations.js +2 -0
- package/dist/lib/development_server/get_translations.js.map +7 -0
- package/dist/lib/development_server/hmr_server.js +2 -0
- package/dist/lib/development_server/hmr_server.js.map +7 -0
- package/dist/lib/development_server/index.js +11 -0
- package/dist/lib/development_server/index.js.map +7 -0
- package/dist/lib/development_server/kill_process_ids.js +2 -0
- package/dist/lib/development_server/kill_process_ids.js.map +7 -0
- package/dist/lib/development_server/run_tests.js +3 -0
- package/dist/lib/development_server/run_tests.js.map +7 -0
- package/dist/lib/development_server/start_app_server.js +2 -0
- package/dist/lib/development_server/start_app_server.js.map +7 -0
- package/dist/lib/development_server/start_databases.js +2 -0
- package/dist/lib/development_server/start_databases.js.map +7 -0
- package/dist/lib/development_server/start_hmr_server.js +2 -0
- package/dist/lib/development_server/start_hmr_server.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/browser_path_exclusions.js +2 -0
- package/dist/lib/development_server/watch_for_changes/browser_path_exclusions.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/browser_paths.js +2 -0
- package/dist/lib/development_server/watch_for_changes/browser_paths.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/get_after_run_tasks.js +2 -0
- package/dist/lib/development_server/watch_for_changes/get_after_run_tasks.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/get_file_codependencies.js +2 -0
- package/dist/lib/development_server/watch_for_changes/get_file_codependencies.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/get_platform_safe_path.js +2 -0
- package/dist/lib/development_server/watch_for_changes/get_platform_safe_path.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/index.js +2 -0
- package/dist/lib/development_server/watch_for_changes/index.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/node_paths.js +2 -0
- package/dist/lib/development_server/watch_for_changes/node_paths.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/read_file_dependency_map.js +2 -0
- package/dist/lib/development_server/watch_for_changes/read_file_dependency_map.js.map +7 -0
- package/dist/lib/development_server/watch_for_changes/watch_paths.js +2 -0
- package/dist/lib/development_server/watch_for_changes/watch_paths.js.map +7 -0
- package/dist/lib/dynamic_import.js +2 -0
- package/dist/lib/dynamic_import.js.map +7 -0
- package/dist/lib/encrypt_buffer.js +2 -0
- package/dist/lib/encrypt_buffer.js.map +7 -0
- package/dist/lib/generate_id.js +2 -0
- package/dist/lib/generate_id.js.map +7 -0
- package/dist/lib/get_files_in_path.js +2 -0
- package/dist/lib/get_files_in_path.js.map +7 -0
- package/dist/lib/get_platform_safe_path.js +2 -0
- package/dist/lib/get_platform_safe_path.js.map +7 -0
- package/dist/lib/get_process_id_from_port.js +3 -0
- package/dist/lib/get_process_id_from_port.js.map +7 -0
- package/dist/lib/is_valid_json_string.js +2 -0
- package/dist/lib/is_valid_json_string.js.map +7 -0
- package/dist/lib/kill_port_process.js +2 -0
- package/dist/lib/kill_port_process.js.map +7 -0
- package/dist/lib/kill_process_id.js +2 -0
- package/dist/lib/kill_process_id.js.map +7 -0
- package/dist/lib/load_settings.js +2 -0
- package/dist/lib/load_settings.js.map +7 -0
- package/dist/lib/loader.js +3 -82
- package/dist/lib/loader.js.map +7 -0
- package/dist/lib/log_bars.js +2 -0
- package/dist/lib/log_bars.js.map +7 -0
- package/dist/lib/node_path_polyfills.js +2 -0
- package/dist/lib/node_path_polyfills.js.map +7 -0
- package/dist/lib/parse_args.js +2 -0
- package/dist/lib/parse_args.js.map +7 -0
- package/dist/lib/parse_options.js +2 -0
- package/dist/lib/parse_options.js.map +7 -0
- package/dist/lib/path_exists.js +2 -0
- package/dist/lib/path_exists.js.map +7 -0
- package/dist/lib/rainbow_road.js +2 -0
- package/dist/lib/rainbow_road.js.map +7 -0
- package/dist/lib/replace_in_files.js +2 -0
- package/dist/lib/replace_in_files.js.map +7 -0
- package/dist/lib/required_files.js +2 -0
- package/dist/lib/required_files.js.map +7 -0
- package/dist/lib/serialize_query_parameters.js +2 -0
- package/dist/lib/serialize_query_parameters.js.map +7 -0
- package/dist/lib/types.js +2 -6
- package/dist/lib/types.js.map +7 -0
- package/dist/lib/unique_array.js +2 -0
- package/dist/lib/unique_array.js.map +7 -0
- package/increment_version.js +3 -0
- package/package.json +19 -38
- package/src/cli.js +69 -51
- package/src/commands/build/definition.js +58 -0
- package/src/commands/build/index.js +7 -0
- package/src/commands/create/build_package_json.js +20 -0
- package/src/commands/create/definition.js +35 -0
- package/src/commands/create/index.js +71 -0
- package/src/commands/create/template/api/index.js +6 -0
- package/src/commands/create/template/email/base.css +9 -0
- package/src/commands/create/template/email/base.html +10 -0
- package/src/commands/create/template/email/reset_password.js +20 -0
- package/src/commands/create/template/i18n/en-US.js +14 -0
- package/src/commands/create/template/index.client.js +1 -0
- package/src/commands/create/template/index.css +34 -0
- package/src/{functions/create/templates → commands/create/template}/index.html +2 -3
- package/src/{functions/create/templates → commands/create/template}/index.server.js +6 -6
- package/src/commands/create/template/public/apple-touch-icon-152x152.png +0 -0
- package/src/commands/create/template/public/favicon.ico +0 -0
- package/src/commands/create/template/public/joystick_logo.webp +0 -0
- package/src/{functions/create/templates → commands/create/template}/public/manifest.json +4 -4
- package/src/commands/create/template/public/splash-screen-1024x1024.png +0 -0
- package/{dist/functions/create/templates → src/commands/create/template}/ui/components/button/index.js +14 -6
- package/{dist/functions/create/templates → src/commands/create/template}/ui/layouts/app/index.js +2 -2
- package/src/commands/create/template/ui/pages/error/index.js +50 -0
- package/src/commands/create/template/ui/pages/index/index.js +121 -0
- package/src/commands/help/definition.js +12 -0
- package/src/commands/help/index.js +48 -0
- package/src/commands/index.js +25 -0
- package/src/commands/logout/definition.js +10 -0
- package/src/commands/logout/index.js +20 -0
- package/src/commands/push/cdn_mirrors.js +7 -0
- package/src/commands/push/check_if_settings_valid.js +10 -0
- package/src/commands/push/create_version.js +20 -0
- package/src/commands/push/definition.js +43 -0
- package/src/commands/push/get_app_domain.js +11 -0
- package/src/commands/push/get_deployment.js +19 -0
- package/src/commands/push/get_provision_domain.js +9 -0
- package/src/commands/push/get_session_token.js +31 -0
- package/src/commands/push/get_settings_file.js +47 -0
- package/src/commands/push/handle_initial_deployment.js +24 -0
- package/src/commands/push/handle_version_deployment.js +23 -0
- package/src/commands/push/index.js +190 -0
- package/src/commands/push/prompts/confirm_deployment.js +73 -0
- package/src/commands/push/prompts/session_token.js +11 -0
- package/src/commands/push/upload_build_to_cdn.js +59 -0
- package/src/commands/push/validate_deployment.js +19 -0
- package/src/commands/push/validate_push_config.js +18 -0
- package/src/commands/push_v2/Dockerfile +47 -0
- package/src/commands/push_v2/build_docker_image.js +78 -0
- package/src/commands/push_v2/cdn_mirrors.js +7 -0
- package/src/commands/push_v2/check_if_settings_valid.js +10 -0
- package/src/commands/push_v2/create_version.js +20 -0
- package/src/commands/push_v2/definition.js +58 -0
- package/src/commands/push_v2/get_app_domain.js +11 -0
- package/src/commands/push_v2/get_deployment.js +19 -0
- package/src/commands/push_v2/get_deployment_token.js +30 -0
- package/src/commands/push_v2/get_push_domain.js +8 -0
- package/src/commands/push_v2/get_settings_file.js +47 -0
- package/src/commands/push_v2/handle_initial_deployment.js +24 -0
- package/src/commands/push_v2/handle_version_deployment.js +23 -0
- package/src/commands/push_v2/index.js +90 -0
- package/src/commands/push_v2/prompts/confirm_deployment.js +73 -0
- package/src/commands/push_v2/prompts/session_token.js +11 -0
- package/src/commands/push_v2/upload_build_to_push.js +37 -0
- package/src/commands/push_v2/validate_deployment.js +19 -0
- package/src/commands/push_v2/validate_push_config.js +18 -0
- package/src/commands/start/definition.js +58 -0
- package/src/commands/start/index.js +11 -0
- package/src/commands/test/definition.js +28 -0
- package/src/commands/test/index.js +12 -0
- package/src/commands/update/definition.js +28 -0
- package/src/commands/update/index.js +29 -0
- package/src/commands/use/definition.js +19 -0
- package/src/commands/use/index.js +54 -0
- package/src/index.js +0 -0
- package/src/lib/build/browser_path_exclusions.js +8 -0
- package/src/lib/build/browser_paths.js +11 -0
- package/src/lib/build/build_files.js +167 -0
- package/src/{functions/start/filesToCopy.js → lib/build/copy_paths.js} +7 -5
- package/src/lib/build/get_code_frame.js +11 -0
- package/src/lib/build/get_file_operation.js +25 -0
- package/src/lib/build/get_files_to_build.js +41 -0
- package/src/lib/build/get_path_platform.js +32 -0
- package/src/lib/build/get_platform_safe_path.js +6 -0
- package/src/lib/build/get_tar_ignore_list.js +41 -0
- package/src/lib/build/index.js +137 -0
- package/src/lib/build/master_ignore_list.js +14 -0
- package/src/lib/build/minify_file.js +22 -0
- package/src/lib/build/node_paths.js +19 -0
- package/src/lib/build/on_warn.js +70 -0
- package/src/lib/build/plugins/bootstrap_component.js +191 -0
- package/src/lib/build/plugins/generate_file_dependency_map.js +20 -0
- package/src/lib/build/plugins/index.js +26 -0
- package/src/lib/build/plugins/set_component_id.js +89 -0
- package/src/lib/build/plugins/update_file_map.js +98 -0
- package/src/lib/build/plugins/warn_node_environment.js +20 -0
- package/src/lib/{CLILog.js → cli_log.js} +12 -8
- package/src/lib/color_log.js +7 -0
- package/src/lib/command_exists.js +16 -0
- package/src/lib/constants.js +11 -1
- package/src/lib/debounce.js +9 -0
- package/src/lib/decrypt_buffer.js +12 -0
- package/src/lib/development_server/ava_config.js +14 -0
- package/src/lib/development_server/check_if_port_occupied.js +31 -0
- package/src/lib/development_server/cleanup.js +15 -0
- package/src/lib/development_server/databases/download_database_binary.js +35 -0
- package/src/lib/{dev/databases/mongodb/availableQueryParameters.js → development_server/databases/mongodb/available_query_parameters.js} +3 -1
- package/src/lib/development_server/databases/mongodb/build_connection_string.js +36 -0
- package/src/lib/development_server/databases/mongodb/build_query_parameters.js +17 -0
- package/src/lib/development_server/databases/mongodb/check_connection.js +41 -0
- package/src/lib/development_server/databases/mongodb/connect.js +27 -0
- package/src/lib/development_server/databases/mongodb/index.js +102 -0
- package/src/lib/development_server/databases/mongodb/installers/linux.js +107 -0
- package/src/lib/development_server/databases/mongodb/installers/macos.js +109 -0
- package/src/lib/development_server/databases/mongodb/installers/windows.js +90 -0
- package/src/lib/development_server/databases/postgresql/check_connection.js +56 -0
- package/src/lib/development_server/databases/postgresql/connect.js +33 -0
- package/src/lib/development_server/databases/postgresql/index.js +157 -0
- package/src/lib/development_server/databases/postgresql/installers/linux.js +80 -0
- package/src/lib/development_server/databases/postgresql/installers/macos.js +91 -0
- package/src/lib/development_server/databases/postgresql/installers/windows.js +83 -0
- package/src/lib/development_server/databases/provider_map.js +15 -0
- package/src/lib/development_server/get_database_process_ids.js +28 -0
- package/src/lib/development_server/get_translations.js +85 -0
- package/src/lib/development_server/hmr_server.js +94 -0
- package/src/lib/development_server/index.js +436 -0
- package/src/lib/development_server/kill_process_ids.js +8 -0
- package/src/lib/development_server/run_tests.js +84 -0
- package/src/lib/development_server/start_app_server.js +55 -0
- package/src/lib/development_server/start_databases.js +108 -0
- package/src/lib/development_server/start_hmr_server.js +36 -0
- package/src/lib/development_server/watch_for_changes/browser_path_exclusions.js +8 -0
- package/src/lib/development_server/watch_for_changes/browser_paths.js +11 -0
- package/src/lib/development_server/watch_for_changes/get_after_run_tasks.js +36 -0
- package/src/lib/development_server/watch_for_changes/get_file_codependencies.js +53 -0
- package/src/lib/development_server/watch_for_changes/get_platform_safe_path.js +6 -0
- package/src/lib/development_server/watch_for_changes/index.js +222 -0
- package/src/lib/development_server/watch_for_changes/node_paths.js +17 -0
- package/src/lib/development_server/watch_for_changes/read_file_dependency_map.js +18 -0
- package/src/lib/development_server/watch_for_changes/watch_paths.js +22 -0
- package/src/lib/dynamic_import.js +6 -0
- package/src/lib/encrypt_buffer.js +10 -0
- package/src/lib/generate_id.js +15 -0
- package/src/lib/get_files_in_path.js +25 -0
- package/src/lib/get_platform_safe_path.js +8 -0
- package/src/lib/get_process_id_from_port.js +26 -0
- package/src/lib/is_valid_json_string.js +10 -0
- package/src/lib/kill_port_process.js +12 -0
- package/src/lib/kill_process_id.js +19 -0
- package/src/lib/load_settings.js +43 -0
- package/src/lib/loader.js +4 -77
- package/src/lib/log_bars.js +7 -0
- package/src/lib/node_path_polyfills.js +23 -0
- package/src/lib/parse_args.js +16 -0
- package/src/lib/parse_options.js +16 -0
- package/src/lib/path_exists.js +11 -0
- package/src/lib/{rainbowRoad.js → rainbow_road.js} +4 -2
- package/src/lib/replace_in_files.js +40 -0
- package/src/lib/{dev/requiredFiles.js → required_files.js} +3 -1
- package/src/lib/serialize_query_parameters.js +7 -0
- package/src/lib/types.js +59 -2
- package/src/lib/unique_array.js +24 -0
- package/HMRNOTES.txt +0 -23
- package/_package.json +0 -56
- package/canary.js +0 -12
- package/dist/functions/build/getTarIgnoreList.js +0 -25
- package/dist/functions/build/index.js +0 -54
- package/dist/functions/create/buildPackageJSON.js +0 -20
- package/dist/functions/create/index.js +0 -193
- package/dist/functions/create/templates/api/index.js +0 -4
- package/dist/functions/create/templates/i18n/en-US.js +0 -4
- package/dist/functions/create/templates/index.client.js +0 -7
- package/dist/functions/create/templates/index.css +0 -20
- package/dist/functions/create/templates/public/apple-touch-icon-152x152.png +0 -0
- package/dist/functions/create/templates/public/favicon.ico +0 -0
- package/dist/functions/create/templates/public/splash-screen-1024x1024.png +0 -0
- package/dist/functions/create/templates/ui/pages/error/index.js +0 -31
- package/dist/functions/create/templates/ui/pages/index/index.js +0 -94
- package/dist/functions/index.js +0 -269
- package/dist/functions/logout/index.js +0 -20
- package/dist/functions/push/checkIfProvisionAvailable.js +0 -19
- package/dist/functions/push/deploy/index.js +0 -173
- package/dist/functions/push/deploy/initial.js +0 -100
- package/dist/functions/push/deploy/version.js +0 -100
- package/dist/functions/push/domains.js +0 -23
- package/dist/functions/push/getAvailableCDN.js +0 -23
- package/dist/functions/push/getDeployment.js +0 -41
- package/dist/functions/push/getDeploymentSummary.js +0 -38
- package/dist/functions/push/getInstanceSizeRegions.js +0 -37
- package/dist/functions/push/getInstanceSizesForRegion.js +0 -34
- package/dist/functions/push/getProviderInstanceSizes.js +0 -34
- package/dist/functions/push/getProviderRegions.js +0 -36
- package/dist/functions/push/getProvidersWithConnectionStatus.js +0 -20
- package/dist/functions/push/getSessionToken.js +0 -23
- package/dist/functions/push/getUserFromSessionToken.js +0 -37
- package/dist/functions/push/index.js +0 -210
- package/dist/functions/push/loginToCheatCode.js +0 -33
- package/dist/functions/push/pingProvisionAPI.js +0 -31
- package/dist/functions/push/prompts.js +0 -332
- package/dist/functions/push/providerMap.js +0 -11
- package/dist/functions/push/providers.js +0 -9
- package/dist/functions/reset/index.js +0 -0
- package/dist/functions/reset/reset.js +0 -127
- package/dist/functions/start/bootstrapLayoutComponent.js +0 -54
- package/dist/functions/start/bootstrapPageComponent.js +0 -51
- package/dist/functions/start/buildFile.js +0 -85
- package/dist/functions/start/buildFiles.js +0 -76
- package/dist/functions/start/buildPlugins.js +0 -183
- package/dist/functions/start/checkIfPortAvailable.js +0 -18
- package/dist/functions/start/cleanup/index.js +0 -18
- package/dist/functions/start/databases/mongodb/availableQueryParameters.js +0 -42
- package/dist/functions/start/databases/mongodb/buildConnectionString.js +0 -22
- package/dist/functions/start/databases/mongodb/buildQueryParameters.js +0 -14
- package/dist/functions/start/databases/mongodb/checkConnection.js +0 -35
- package/dist/functions/start/databases/mongodb/connect.js +0 -25
- package/dist/functions/start/databases/mongodb/index.js +0 -93
- package/dist/functions/start/databases/postgresql/checkConnection.js +0 -41
- package/dist/functions/start/databases/postgresql/connect.js +0 -27
- package/dist/functions/start/databases/postgresql/index.js +0 -106
- package/dist/functions/start/databases/redis.js +0 -0
- package/dist/functions/start/databases/startProvider.js +0 -16
- package/dist/functions/start/fileDependencyMapper.js +0 -22
- package/dist/functions/start/filesToCopy.js +0 -18
- package/dist/functions/start/generateId.js +0 -74
- package/dist/functions/start/getCodependenciesForFile.js +0 -64
- package/dist/functions/start/getFilesToBuild.js +0 -39
- package/dist/functions/start/getProcessIdFromPort.js +0 -60
- package/dist/functions/start/hmrServer.js +0 -66
- package/dist/functions/start/index.js +0 -11
- package/dist/functions/start/isWindows.js +0 -5
- package/dist/functions/start/minifyFile.js +0 -12
- package/dist/functions/start/onWarn.js +0 -63
- package/dist/functions/start/readFileDependencyMap.js +0 -16
- package/dist/functions/start/removeDeletedDependenciesFromMap.js +0 -18
- package/dist/functions/start/setComponentId.js +0 -46
- package/dist/functions/start/updateFileMap.js +0 -67
- package/dist/functions/test/index.js +0 -12
- package/dist/functions/update/index.js +0 -21
- package/dist/functions/use/index.js +0 -61
- package/dist/lib/CLILog.js +0 -49
- package/dist/lib/build/browserPathExclusions.js +0 -8
- package/dist/lib/build/browserPaths.js +0 -11
- package/dist/lib/build/buildFile.js +0 -84
- package/dist/lib/build/buildFiles.js +0 -242
- package/dist/lib/build/buildPlugins.js +0 -186
- package/dist/lib/build/getCodeFrame.js +0 -9
- package/dist/lib/build/minifyFile.js +0 -12
- package/dist/lib/build/nodePathExclusions.js +0 -7
- package/dist/lib/build/nodePaths.js +0 -12
- package/dist/lib/build/onWarn.js +0 -63
- package/dist/lib/build/removeDeletedDependenciesFromMap.js +0 -18
- package/dist/lib/build/setComponentId.js +0 -46
- package/dist/lib/build/updateFileMap.js +0 -67
- package/dist/lib/buildResolvePlugin.js +0 -21
- package/dist/lib/checkIfValidJSON.js +0 -11
- package/dist/lib/colorLog.js +0 -7
- package/dist/lib/dev/cleanup.js +0 -18
- package/dist/lib/dev/databases/mongodb/availableQueryParameters.js +0 -42
- package/dist/lib/dev/databases/mongodb/buildConnectionString.js +0 -22
- package/dist/lib/dev/databases/mongodb/buildQueryParameters.js +0 -14
- package/dist/lib/dev/databases/mongodb/checkConnection.js +0 -38
- package/dist/lib/dev/databases/mongodb/connect.js +0 -25
- package/dist/lib/dev/databases/mongodb/index.js +0 -93
- package/dist/lib/dev/databases/postgresql/checkConnection.js +0 -41
- package/dist/lib/dev/databases/postgresql/connect.js +0 -27
- package/dist/lib/dev/databases/postgresql/index.js +0 -106
- package/dist/lib/dev/databases/providerMap.js +0 -15
- package/dist/lib/dev/getCodependenciesForFile.js +0 -64
- package/dist/lib/dev/getFilesToBuild.js +0 -38
- package/dist/lib/dev/hmrServer.js +0 -66
- package/dist/lib/dev/index.js +0 -561
- package/dist/lib/dev/isWindows.js +0 -5
- package/dist/lib/dev/loadSettings.js +0 -79
- package/dist/lib/dev/readFileDependencyMap.js +0 -16
- package/dist/lib/dev/requiredFiles.js +0 -18
- package/dist/lib/dev/runBuild.js +0 -30
- package/dist/lib/dev/runTests.js +0 -96
- package/dist/lib/dev/startDatabases.js +0 -109
- package/dist/lib/dev/startHMR.js +0 -55
- package/dist/lib/dev/tests.config.js +0 -6
- package/dist/lib/dev/updateFileMap.js +0 -67
- package/dist/lib/dev/validateProject.js +0 -0
- package/dist/lib/dev/watchlist.js +0 -15
- package/dist/lib/filesToCopy.js +0 -18
- package/dist/lib/generateId.js +0 -74
- package/dist/lib/getArgs.js +0 -14
- package/dist/lib/getOptions.js +0 -15
- package/dist/lib/getPlatformSafePath.js +0 -7
- package/dist/lib/getProcessIdFromPort.js +0 -60
- package/dist/lib/getProvider.js +0 -8
- package/dist/lib/help.js +0 -56
- package/dist/lib/isObject.js +0 -6
- package/dist/lib/isValidJSONString.js +0 -11
- package/dist/lib/isWindows.js +0 -5
- package/dist/lib/killProcesses.js +0 -0
- package/dist/lib/loadSettings.js +0 -33
- package/dist/lib/masterIgnoreList.js +0 -16
- package/dist/lib/nodeEnvironment.js +0 -9
- package/dist/lib/nodeEnvironments.js +0 -8
- package/dist/lib/parseCookiesFromLogin.js +0 -18
- package/dist/lib/rainbowRoad.js +0 -7
- package/dist/lib/readDirectorySync.js +0 -14
- package/dist/lib/regexes.js +0 -14
- package/dist/lib/replaceBackslashesWithForwardSlashes.js +0 -8
- package/dist/lib/replaceFileProtocol.js +0 -8
- package/dist/lib/serializeQueryParameters.js +0 -8
- package/dist/lib/settings.js +0 -4
- package/dist/lib/validateDatabasesFromSettings.js +0 -34
- package/dist/lib/wait.js +0 -8
- package/release.js +0 -40
- package/src/functions/build/getTarIgnoreList.js +0 -30
- package/src/functions/build/index.js +0 -63
- package/src/functions/create/buildPackageJSON.js +0 -18
- package/src/functions/create/index.js +0 -209
- package/src/functions/create/templates/api/index.js +0 -4
- package/src/functions/create/templates/i18n/en-US.js +0 -4
- package/src/functions/create/templates/index.client.js +0 -7
- package/src/functions/create/templates/index.css +0 -20
- package/src/functions/create/templates/public/apple-touch-icon-152x152.png +0 -0
- package/src/functions/create/templates/public/favicon.ico +0 -0
- package/src/functions/create/templates/public/splash-screen-1024x1024.png +0 -0
- package/src/functions/create/templates/ui/pages/error/index.js +0 -31
- package/src/functions/create/templates/ui/pages/index/index.js +0 -94
- package/src/functions/index.js +0 -269
- package/src/functions/logout/index.js +0 -20
- package/src/functions/push/checkIfProvisionAvailable.js +0 -20
- package/src/functions/push/deploy/index.js +0 -199
- package/src/functions/push/deploy/initial.js +0 -108
- package/src/functions/push/deploy/version.js +0 -108
- package/src/functions/push/domains.js +0 -23
- package/src/functions/push/getAvailableCDN.js +0 -27
- package/src/functions/push/getDeployment.js +0 -43
- package/src/functions/push/getDeploymentSummary.js +0 -39
- package/src/functions/push/getInstanceSizeRegions.js +0 -40
- package/src/functions/push/getInstanceSizesForRegion.js +0 -35
- package/src/functions/push/getProviderInstanceSizes.js +0 -35
- package/src/functions/push/getProviderRegions.js +0 -39
- package/src/functions/push/getProvidersWithConnectionStatus.js +0 -25
- package/src/functions/push/getSessionToken.js +0 -26
- package/src/functions/push/getUserFromSessionToken.js +0 -39
- package/src/functions/push/index.js +0 -245
- package/src/functions/push/loginToCheatCode.js +0 -34
- package/src/functions/push/pingProvisionAPI.js +0 -33
- package/src/functions/push/prompts.js +0 -276
- package/src/functions/push/providerMap.js +0 -8
- package/src/functions/push/providers.js +0 -6
- package/src/functions/reset/index.js +0 -0
- package/src/functions/reset/reset.js +0 -163
- package/src/functions/start/bootstrapLayoutComponent.js +0 -57
- package/src/functions/start/bootstrapPageComponent.js +0 -54
- package/src/functions/start/buildFile.js +0 -97
- package/src/functions/start/buildFiles.js +0 -101
- package/src/functions/start/buildPlugins.js +0 -215
- package/src/functions/start/checkIfPortAvailable.js +0 -21
- package/src/functions/start/cleanup/index.js +0 -23
- package/src/functions/start/databases/mongodb/availableQueryParameters.js +0 -39
- package/src/functions/start/databases/mongodb/buildConnectionString.js +0 -28
- package/src/functions/start/databases/mongodb/buildQueryParameters.js +0 -15
- package/src/functions/start/databases/mongodb/checkConnection.js +0 -36
- package/src/functions/start/databases/mongodb/connect.js +0 -25
- package/src/functions/start/databases/mongodb/index.js +0 -108
- package/src/functions/start/databases/postgresql/checkConnection.js +0 -43
- package/src/functions/start/databases/postgresql/connect.js +0 -27
- package/src/functions/start/databases/postgresql/index.js +0 -127
- package/src/functions/start/databases/redis.js +0 -0
- package/src/functions/start/databases/startProvider.js +0 -15
- package/src/functions/start/fileDependencyMapper.js +0 -24
- package/src/functions/start/generateId.js +0 -73
- package/src/functions/start/getCodependenciesForFile.js +0 -84
- package/src/functions/start/getFilesToBuild.js +0 -49
- package/src/functions/start/getProcessIdFromPort.js +0 -92
- package/src/functions/start/hmrServer.js +0 -78
- package/src/functions/start/index.js +0 -9
- package/src/functions/start/isWindows.js +0 -3
- package/src/functions/start/minifyFile.js +0 -10
- package/src/functions/start/onWarn.js +0 -68
- package/src/functions/start/readFileDependencyMap.js +0 -19
- package/src/functions/start/removeDeletedDependenciesFromMap.js +0 -19
- package/src/functions/start/setComponentId.js +0 -58
- package/src/functions/start/updateFileMap.js +0 -100
- package/src/functions/test/index.js +0 -10
- package/src/functions/update/index.js +0 -20
- package/src/functions/use/index.js +0 -62
- package/src/lib/build/browserPathExclusions.js +0 -6
- package/src/lib/build/browserPaths.js +0 -9
- package/src/lib/build/buildFile.js +0 -91
- package/src/lib/build/buildFiles.js +0 -274
- package/src/lib/build/buildPlugins.js +0 -222
- package/src/lib/build/getCodeFrame.js +0 -7
- package/src/lib/build/minifyFile.js +0 -10
- package/src/lib/build/nodePathExclusions.js +0 -5
- package/src/lib/build/nodePaths.js +0 -10
- package/src/lib/build/onWarn.js +0 -68
- package/src/lib/build/removeDeletedDependenciesFromMap.js +0 -19
- package/src/lib/build/setComponentId.js +0 -58
- package/src/lib/build/updateFileMap.js +0 -100
- package/src/lib/buildResolvePlugin.js +0 -32
- package/src/lib/checkIfValidJSON.js +0 -8
- package/src/lib/colorLog.js +0 -5
- package/src/lib/dev/cleanup.js +0 -26
- package/src/lib/dev/databases/mongodb/buildConnectionString.js +0 -28
- package/src/lib/dev/databases/mongodb/buildQueryParameters.js +0 -15
- package/src/lib/dev/databases/mongodb/checkConnection.js +0 -40
- package/src/lib/dev/databases/mongodb/connect.js +0 -25
- package/src/lib/dev/databases/mongodb/index.js +0 -108
- package/src/lib/dev/databases/postgresql/checkConnection.js +0 -43
- package/src/lib/dev/databases/postgresql/connect.js +0 -27
- package/src/lib/dev/databases/postgresql/index.js +0 -127
- package/src/lib/dev/databases/providerMap.js +0 -13
- package/src/lib/dev/getCodependenciesForFile.js +0 -84
- package/src/lib/dev/getFilesToBuild.js +0 -47
- package/src/lib/dev/hmrServer.js +0 -78
- package/src/lib/dev/index.js +0 -686
- package/src/lib/dev/isWindows.js +0 -3
- package/src/lib/dev/loadSettings.js +0 -90
- package/src/lib/dev/readFileDependencyMap.js +0 -19
- package/src/lib/dev/runBuild.js +0 -33
- package/src/lib/dev/runTests.js +0 -122
- package/src/lib/dev/startApp.js +0 -81
- package/src/lib/dev/startDatabases.js +0 -131
- package/src/lib/dev/startHMR.js +0 -62
- package/src/lib/dev/tests.config.js +0 -3
- package/src/lib/dev/updateFileMap.js +0 -100
- package/src/lib/dev/validateProject.js +0 -0
- package/src/lib/dev/watchlist.js +0 -13
- package/src/lib/filesToCopy.js +0 -15
- package/src/lib/generateId.js +0 -73
- package/src/lib/getArgs.js +0 -14
- package/src/lib/getOptions.js +0 -12
- package/src/lib/getProcessIdFromPort.js +0 -92
- package/src/lib/getProvider.js +0 -5
- package/src/lib/help.js +0 -56
- package/src/lib/isObject.js +0 -3
- package/src/lib/isValidJSONString.js +0 -8
- package/src/lib/killProcesses.js +0 -5
- package/src/lib/loadSettings.js +0 -40
- package/src/lib/masterIgnoreList.js +0 -13
- package/src/lib/nodeEnvironment.js +0 -6
- package/src/lib/nodeEnvironments.js +0 -8
- package/src/lib/parseCookiesFromLogin.js +0 -21
- package/src/lib/readDirectorySync.js +0 -13
- package/src/lib/regexes.js +0 -7
- package/src/lib/replaceBackslashesWithForwardSlashes.js +0 -8
- package/src/lib/replaceFileProtocol.js +0 -8
- package/src/lib/serializeQueryParameters.js +0 -5
- package/src/lib/settings.js +0 -1
- package/src/lib/validateDatabasesFromSettings.js +0 -37
- package/src/lib/wait.js +0 -5
- package/storage/.verdaccio-db.json +0 -1
- /package/{src/lib → .build}/getPlatformSafePath.js +0 -0
- /package/{src/lib → .build}/isWindows.js +0 -0
- /package/dist/{functions/create/templates → commands/create/template}/public/service-worker.js +0 -0
- /package/dist/{functions/create/templates → commands/create/template}/settings.development.json +0 -0
- /package/src/{functions/create/templates → commands/create/template}/public/service-worker.js +0 -0
- /package/src/{functions/create/templates → commands/create/template}/settings.development.json +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { exec, execSync } from 'child_process';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { fileURLToPath } from 'url';
|
|
4
|
+
import fs from 'fs';
|
|
5
|
+
|
|
6
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
7
|
+
const __dirname = path.dirname(__filename);
|
|
8
|
+
|
|
9
|
+
const check_docker_installation = () => {
|
|
10
|
+
try {
|
|
11
|
+
execSync('docker --version', { stdio: 'ignore' });
|
|
12
|
+
return true;
|
|
13
|
+
} catch (error) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
const build_docker_image = (
|
|
19
|
+
image_name = '',
|
|
20
|
+
context_path = '',
|
|
21
|
+
{
|
|
22
|
+
apt_deps = [],
|
|
23
|
+
npm_deps = []
|
|
24
|
+
} = {}
|
|
25
|
+
) => {
|
|
26
|
+
return new Promise((resolve, reject) => {
|
|
27
|
+
if (!check_docker_installation()) {
|
|
28
|
+
process.loader.print("Push requires Docker to deploy your app. Please visit https://docs.docker.com/get-started/get-docker/ to download Docker for your OS.");
|
|
29
|
+
reject(new Error("Docker is not installed or not in the PATH"));
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
process.loader.print('Building Docker image for deployment...');
|
|
34
|
+
|
|
35
|
+
const dockerfile_path = path.join(__dirname, 'Dockerfile');
|
|
36
|
+
|
|
37
|
+
if (!fs.existsSync(dockerfile_path)) {
|
|
38
|
+
reject(new Error(`Dockerfile not found at ${dockerfile_path}`));
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// Ensure context_path is set and contains the .build directory
|
|
43
|
+
if (!context_path || !fs.existsSync(path.join(context_path, '.build'))) {
|
|
44
|
+
reject(new Error('Invalid context path or .build directory not found'));
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// Prepare build arguments for dependencies
|
|
49
|
+
const build_args = [
|
|
50
|
+
`CUSTOM_APT_DEPS=${apt_deps.join(' ')}`,
|
|
51
|
+
`GLOBAL_NPM_PACKAGES=${npm_deps.join(' ')}`,
|
|
52
|
+
`CACHEBUST=${Date.now()}` // Add timestamp to invalidate cache
|
|
53
|
+
].map(arg => `--build-arg ${arg}`).join(' ');
|
|
54
|
+
|
|
55
|
+
// Add --quiet flag to suppress verbose output
|
|
56
|
+
const command = `docker build --quiet ${build_args} -t ${image_name} -f "${dockerfile_path}" "${context_path}"`;
|
|
57
|
+
|
|
58
|
+
exec(command, { stdio: ['ignore', 'pipe', 'pipe'] }, (error, stdout, stderr) => {
|
|
59
|
+
if (error) {
|
|
60
|
+
console.error(`Error building Docker image: ${error.message}`);
|
|
61
|
+
reject(error);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// The --quiet flag will output only the image ID, which we can ignore
|
|
66
|
+
|
|
67
|
+
// Check if stderr contains actual error messages
|
|
68
|
+
if (stderr.trim() && !stderr.includes("Use 'docker scan' to run Snyk tests against images to find vulnerabilities and learn how to fix them")) {
|
|
69
|
+
console.error(`Docker build stderr: ${stderr}`);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
process.loader.print(`Successfully built Docker image: ${image_name}`);
|
|
73
|
+
resolve();
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export default build_docker_image;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import fetch from 'node-fetch';
|
|
2
|
+
|
|
3
|
+
const create_version = (options = {}) => {
|
|
4
|
+
return fetch(`${options?.push_provision_domain}/api/versions/${options?.domain}`, {
|
|
5
|
+
method: 'POST',
|
|
6
|
+
headers: {
|
|
7
|
+
'Content-Type': 'application/json',
|
|
8
|
+
'x-push-session-token': options?.session_token,
|
|
9
|
+
},
|
|
10
|
+
body: JSON.stringify(options?.body),
|
|
11
|
+
})?.then(async (response) => {
|
|
12
|
+
// NOTE: We only care about the response body here so parse it out and return it.
|
|
13
|
+
const data = await response.json();
|
|
14
|
+
return data?.data;
|
|
15
|
+
}).catch((error) => {
|
|
16
|
+
console.warn(error);
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export default create_version;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import push from './index.js';
|
|
2
|
+
|
|
3
|
+
const [_node, _bin, ...raw_args] = process.argv;
|
|
4
|
+
|
|
5
|
+
const definition = {
|
|
6
|
+
description: 'Deploy your Joystick app using Push.',
|
|
7
|
+
args: {},
|
|
8
|
+
options: {
|
|
9
|
+
domain: {
|
|
10
|
+
flags: {
|
|
11
|
+
'-d': {
|
|
12
|
+
set: !!raw_args.includes('-d'),
|
|
13
|
+
value: !!raw_args.includes('-d') && raw_args[raw_args.indexOf('-d') + 1],
|
|
14
|
+
parent: 'push',
|
|
15
|
+
},
|
|
16
|
+
'--domain': {
|
|
17
|
+
set: !!raw_args.includes('--domain'),
|
|
18
|
+
value: !!raw_args.includes('--domain') && raw_args[raw_args.indexOf('--domain') + 1],
|
|
19
|
+
parent: 'push',
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
description: 'The domain of the app Push should deploy to.',
|
|
23
|
+
},
|
|
24
|
+
push_server: {
|
|
25
|
+
flags: {
|
|
26
|
+
'-s': {
|
|
27
|
+
set: !!raw_args.includes('-s'),
|
|
28
|
+
value: !!raw_args.includes('-s') && raw_args[raw_args.indexOf('-s') + 1],
|
|
29
|
+
parent: 'push',
|
|
30
|
+
},
|
|
31
|
+
'--server': {
|
|
32
|
+
set: !!raw_args.includes('--server'),
|
|
33
|
+
value: !!raw_args.includes('--server') && raw_args[raw_args.indexOf('--server') + 1],
|
|
34
|
+
parent: 'push',
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
description: 'The Push provision server to target (development or production).',
|
|
38
|
+
},
|
|
39
|
+
deployment_token: {
|
|
40
|
+
flags: {
|
|
41
|
+
'-t': {
|
|
42
|
+
set: !!raw_args.includes('-t'),
|
|
43
|
+
value: !!raw_args.includes('-t') && raw_args[raw_args.indexOf('-t') + 1],
|
|
44
|
+
parent: 'push',
|
|
45
|
+
},
|
|
46
|
+
'--token': {
|
|
47
|
+
set: !!raw_args.includes('--token'),
|
|
48
|
+
value: !!raw_args.includes('--token') && raw_args[raw_args.indexOf('--token') + 1],
|
|
49
|
+
parent: 'push',
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
description: 'The deployment token for your Push user account.',
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
command: push,
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export default definition;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const get_app_domain = (provision_server = 'production') => {
|
|
2
|
+
// NOTE: Rely on provision_server CLI option flag here because that will need
|
|
3
|
+
// to be paired with the appropriate app server.
|
|
4
|
+
return {
|
|
5
|
+
development: 'http://localhost:2600',
|
|
6
|
+
staging: 'https://staging.push.cheatcode.co',
|
|
7
|
+
production: 'https://push.cheatcode.co',
|
|
8
|
+
}[provision_server];
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export default get_app_domain;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import fetch from 'node-fetch';
|
|
2
|
+
|
|
3
|
+
const get_deployment = (options = {}) => {
|
|
4
|
+
return fetch(`${options?.push_domain}/api/deployments/${options?.domain}`, {
|
|
5
|
+
method: 'GET',
|
|
6
|
+
headers: {
|
|
7
|
+
'x-push-deployment-token': options?.deployment_token,
|
|
8
|
+
Accept: 'application/json',
|
|
9
|
+
},
|
|
10
|
+
})?.then(async (response) => {
|
|
11
|
+
// NOTE: We only care about the data in the response here so just return it.
|
|
12
|
+
const data = await response.json();
|
|
13
|
+
return data;
|
|
14
|
+
}).catch((error) => {
|
|
15
|
+
console.warn(error);
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export default get_deployment;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import os from 'os';
|
|
2
|
+
import fs from 'fs';
|
|
3
|
+
import path_exists from '../../lib/path_exists.js';
|
|
4
|
+
|
|
5
|
+
const { readFile, mkdir, writeFile } = fs.promises;
|
|
6
|
+
|
|
7
|
+
const get_deployment_token = async (deployment_token = '') => {
|
|
8
|
+
const home_directory = os.homedir();
|
|
9
|
+
|
|
10
|
+
if (deployment_token) {
|
|
11
|
+
if (!(await path_exists(`${home_directory}/.push`))) {
|
|
12
|
+
await mkdir(`${home_directory}/.push`);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
await writeFile(`${home_directory}/.push/deployment_token`, deployment_token);
|
|
16
|
+
|
|
17
|
+
return deployment_token;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const deployment_token_path = `${home_directory}/.push/deployment_token`;
|
|
21
|
+
const deployment_token_exists = await path_exists(deployment_token_path);
|
|
22
|
+
|
|
23
|
+
if (deployment_token_exists) {
|
|
24
|
+
return readFile(deployment_token_path, 'utf-8');
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return null;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export default get_deployment_token;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import cli_log from '../../lib/cli_log.js';
|
|
3
|
+
import is_valid_json_string from '../../lib/is_valid_json_string.js';
|
|
4
|
+
import path_exists from '../../lib/path_exists.js';
|
|
5
|
+
|
|
6
|
+
const { readFile } = fs.promises;
|
|
7
|
+
|
|
8
|
+
const read_settings_file = async (environment = '') => {
|
|
9
|
+
const settings_file_name = `settings.${environment}.json`;
|
|
10
|
+
const settings_file_exists = await path_exists(settings_file_name);
|
|
11
|
+
|
|
12
|
+
if (!settings_file_exists) {
|
|
13
|
+
cli_log(
|
|
14
|
+
`Could not find a ${settings_file_name} in your project. Double-check this exists and try again.`,
|
|
15
|
+
{
|
|
16
|
+
level: "danger",
|
|
17
|
+
docs: "https://cheatcode.co/docs/push/config"
|
|
18
|
+
}
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
return process.exit(0);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return readFile(settings_file_name, 'utf-8');
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
const get_settings_file = async (options) => {
|
|
28
|
+
const settings_file_name = `settings.${options?.environment}.json`;
|
|
29
|
+
const raw_settings_file = await read_settings_file(options?.environment);
|
|
30
|
+
const settings_file_is_valid_json = is_valid_json_string(raw_settings_file);
|
|
31
|
+
|
|
32
|
+
if (!settings_file_is_valid_json) {
|
|
33
|
+
cli_log(
|
|
34
|
+
`${settings_file_name} contains invalid JSON. Double-check the syntax and try again.`,
|
|
35
|
+
{
|
|
36
|
+
level: "danger",
|
|
37
|
+
docs: "https://cheatcode.co/docs/push/config"
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
return process.exit(0);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return JSON.parse(raw_settings_file);
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
export default get_settings_file;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import fetch from "node-fetch";
|
|
2
|
+
|
|
3
|
+
const handle_initial_deployment = async (options = {}) => {
|
|
4
|
+
return fetch(`${options?.push_provision_domain}/api/deployments/${options?.deployment?.domain}`, {
|
|
5
|
+
method: "POST",
|
|
6
|
+
headers: {
|
|
7
|
+
"x-push-session-token": options?.session_token,
|
|
8
|
+
'Content-Type': 'application/json',
|
|
9
|
+
},
|
|
10
|
+
body: JSON.stringify({
|
|
11
|
+
environment: options?.environment,
|
|
12
|
+
build_timestamp: options?.build_timestamp,
|
|
13
|
+
domain: options?.deployment?.domain,
|
|
14
|
+
deployment_id: options?.deployment?._id,
|
|
15
|
+
}),
|
|
16
|
+
}).then(async (response) => {
|
|
17
|
+
const data = await response.json();
|
|
18
|
+
return data?.data;
|
|
19
|
+
}).catch((error) => {
|
|
20
|
+
console.warn(error);
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export default handle_initial_deployment;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import fetch from "node-fetch";
|
|
2
|
+
|
|
3
|
+
const handle_version_deployment = async (options = {}) => {
|
|
4
|
+
return fetch(`${options?.push_provision_domain}/api/deployments/${options?.deployment?.domain}`, {
|
|
5
|
+
method: "PUT",
|
|
6
|
+
headers: {
|
|
7
|
+
"x-push-session-token": options?.session_token,
|
|
8
|
+
'Content-Type': 'application/json',
|
|
9
|
+
},
|
|
10
|
+
body: JSON.stringify({
|
|
11
|
+
build_timestamp: options?.build_timestamp,
|
|
12
|
+
domain: options?.deployment?.domain,
|
|
13
|
+
deployment_id: options?.deployment?._id,
|
|
14
|
+
}),
|
|
15
|
+
}).then(async (response) => {
|
|
16
|
+
const data = await response.json();
|
|
17
|
+
return data?.data;
|
|
18
|
+
}).catch((error) => {
|
|
19
|
+
console.warn(error);
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export default handle_version_deployment;
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import build from '../../lib/build/index.js';
|
|
2
|
+
import cli_log from '../../lib/cli_log.js';
|
|
3
|
+
import get_deployment from './get_deployment.js';
|
|
4
|
+
import get_push_domain from './get_push_domain.js';
|
|
5
|
+
import get_settings_file from './get_settings_file.js';
|
|
6
|
+
import get_deployment_token from './get_deployment_token.js';
|
|
7
|
+
import upload_build_to_push from './upload_build_to_push.js';
|
|
8
|
+
import Loader from '../../lib/loader.js';
|
|
9
|
+
|
|
10
|
+
const get_token_for_deployment = async (input_deployment_token = '') => {
|
|
11
|
+
const deployment_token = await get_deployment_token(input_deployment_token);
|
|
12
|
+
|
|
13
|
+
if (!deployment_token) {
|
|
14
|
+
cli_log(
|
|
15
|
+
'Must pass a deployment token via the -t or --token flag, or, have an existing deployment token on your machine.',
|
|
16
|
+
{
|
|
17
|
+
level: "danger",
|
|
18
|
+
docs: "https://cheatcode.co/docs/push/authentication"
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
|
|
22
|
+
return process.exit(0);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
return deployment_token;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const push = async (args = {}, options = {}) => {
|
|
29
|
+
if (!options?.domain) {
|
|
30
|
+
cli_log(
|
|
31
|
+
`Must pass a deployment via -d or --domain flag.`,
|
|
32
|
+
{
|
|
33
|
+
level: "danger",
|
|
34
|
+
docs: "https://cheatcode.co/docs/push/cli"
|
|
35
|
+
}
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
return process.exit(0);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
process.loader = new Loader();
|
|
42
|
+
process.loader.print('Starting deployment...');
|
|
43
|
+
|
|
44
|
+
const deployment_token = await get_token_for_deployment(options?.deployment_token);
|
|
45
|
+
const push_domain = get_push_domain(options?.push_server);
|
|
46
|
+
|
|
47
|
+
const deployment = await get_deployment({
|
|
48
|
+
domain: options?.domain,
|
|
49
|
+
deployment_token,
|
|
50
|
+
push_domain,
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
if (!deployment) {
|
|
54
|
+
cli_log(
|
|
55
|
+
`Sorry, we couldn\'t find a deployment with the domain ${options?.domain} on your account. If you haven\'t created it yet, head over to the Push dashboard: https://push.cheatcode.co/deployments/create`,
|
|
56
|
+
{
|
|
57
|
+
level: "danger",
|
|
58
|
+
docs: "https://cheatcode.co/docs/push/deployments/create-a-new-deployment"
|
|
59
|
+
}
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
return process.exit(0);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
const environment = deployment?.environment || 'production';
|
|
66
|
+
const build_timestamp = new Date().toISOString();
|
|
67
|
+
const settings = await get_settings_file({ environment });
|
|
68
|
+
|
|
69
|
+
await build({
|
|
70
|
+
environment,
|
|
71
|
+
encrypt_build: true,
|
|
72
|
+
encryption_key: deployment?.deployment_secret,
|
|
73
|
+
silence_confirmation: true,
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
process.loader.print('Deploying to Push...');
|
|
77
|
+
|
|
78
|
+
await upload_build_to_push({
|
|
79
|
+
build_timestamp,
|
|
80
|
+
deployment,
|
|
81
|
+
deployment_token,
|
|
82
|
+
push_domain,
|
|
83
|
+
settings,
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
process.loader.print('Deploying...')
|
|
87
|
+
console.log(deployment?.intial_deployment_completed ? `\nMonitor your deployment at ${push_domain}/deployments/${deployment?._id}.\n` : `\nFinish your deployment's setup at ${push_domain}/deployments/${deployment?._id}/setup.\n`);
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
export default push;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import AsciiTable from 'ascii-table';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
|
|
4
|
+
const render_instance_row = (table, [continent_name = '', continent_instances = []]) => {
|
|
5
|
+
table.addRow(`${chalk.magenta(continent_name)}\n`);
|
|
6
|
+
|
|
7
|
+
for (let i = 0; i < continent_instances?.length; i += 1) {
|
|
8
|
+
const instance = continent_instances[i];
|
|
9
|
+
table.addRow(
|
|
10
|
+
`${chalk.yellow(instance?.provider)} (${chalk.green(instance?.region)})`,
|
|
11
|
+
`${chalk.white(instance?.size)} $${chalk.green(instance?.pricePerMonth)}/mo. x${chalk.blue(instance?.quantity)} ${chalk.white('=')} $${chalk.green((instance?.quantity * instance?.pricePerMonth))}/mo.${i + 1 === continent_instances?.length ? '\n' : ''}`,
|
|
12
|
+
);
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
const get_total_monthly_cost_for_instances = (instances = []) => {
|
|
17
|
+
const instances_by_continent = Object.values(instances)?.flatMap((instances_for_continent) => instances_for_continent);
|
|
18
|
+
return instances_by_continent?.reduce((total = 0, instance = {}) => {
|
|
19
|
+
total += instance?.pricePerMonth * instance?.quantity;
|
|
20
|
+
return total;
|
|
21
|
+
}, 0);
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
const confirm_deployment = (instances = {}) => {
|
|
25
|
+
const load_balancer_total_per_month = get_total_monthly_cost_for_instances(instances?.load_balancer);
|
|
26
|
+
const app_total_per_month = get_total_monthly_cost_for_instances(instances?.app);
|
|
27
|
+
const total_monthly_cost = load_balancer_total_per_month + app_total_per_month;
|
|
28
|
+
|
|
29
|
+
const table = new AsciiTable();
|
|
30
|
+
|
|
31
|
+
table.removeBorder();
|
|
32
|
+
table.addRow(`${chalk.blue('Load Balancer')}\n`);
|
|
33
|
+
|
|
34
|
+
const load_balancer_continents = Object.entries(instances?.load_balancer);
|
|
35
|
+
const app_continents = Object.entries(instances?.app);
|
|
36
|
+
|
|
37
|
+
for (let i = 0; i < load_balancer_continents?.length; i += 1) {
|
|
38
|
+
render_instance_row(table, load_balancer_continents[i]);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
table.addRow(`\n ${chalk.blue('App')}\n`);
|
|
42
|
+
|
|
43
|
+
for (let i = 0; i < app_continents?.length; i += 1) {
|
|
44
|
+
render_instance_row(table, app_continents[i]);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
table.addRow(chalk.white('\n ---\n'));
|
|
48
|
+
|
|
49
|
+
table.addRow(
|
|
50
|
+
chalk.green('Monthly Cost'),
|
|
51
|
+
chalk.white(`$${chalk.green(total_monthly_cost)}/mo.`)
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
table.addRow(
|
|
55
|
+
chalk.green('Annual Cost'),
|
|
56
|
+
chalk.white(`$${chalk.green(total_monthly_cost * 12)}/yr.`)
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
const is_abnormal = total_monthly_cost > 100;
|
|
60
|
+
|
|
61
|
+
return [{
|
|
62
|
+
name: 'confirm_deployment',
|
|
63
|
+
type: 'confirm',
|
|
64
|
+
prefix: '',
|
|
65
|
+
message: `\n ${chalk.greenBright('>')} Start deployment and provision these instances?`,
|
|
66
|
+
suffix: `
|
|
67
|
+
\n${table.toString()}
|
|
68
|
+
${is_abnormal ? `\n\n ${chalk.yellowBright(`!!! >>> These costs are ${chalk.magenta('high')}. Be absolutely ${chalk.magenta('CERTAIN')} you want to run this deployment. <<< !!!`)}
|
|
69
|
+
\n ` : '\n'}`,
|
|
70
|
+
}];
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
export default confirm_deployment;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
|
|
3
|
+
const session_token = () => [{
|
|
4
|
+
name: 'session_token',
|
|
5
|
+
type: 'text',
|
|
6
|
+
prefix: '',
|
|
7
|
+
message: `\n${chalk.yellowBright('>')} To login to Push, paste your session token below:\n`,
|
|
8
|
+
suffix: ` ${chalk.yellowBright('Find your session token here:')} https://push.cheatcode.co/account/profile\n\n`,
|
|
9
|
+
}];
|
|
10
|
+
|
|
11
|
+
export default session_token;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import fetch from "node-fetch";
|
|
2
|
+
import FormData from "form-data";
|
|
3
|
+
import fs from "fs";
|
|
4
|
+
import _ from 'lodash';
|
|
5
|
+
|
|
6
|
+
const { readFile } = fs.promises;
|
|
7
|
+
|
|
8
|
+
const upload_build_to_push = async (options = {}) => {
|
|
9
|
+
const form_data = new FormData();
|
|
10
|
+
|
|
11
|
+
form_data.append(
|
|
12
|
+
"version_tar",
|
|
13
|
+
await readFile(`.build/build.encrypted.tar.gz`),
|
|
14
|
+
`${options?.build_timestamp}.tar.gz`
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
form_data.append("build_timestamp", options?.build_timestamp);
|
|
18
|
+
form_data.append("domain", options?.deployment?.domain);
|
|
19
|
+
form_data.append("deployment_id", options?.deployment?._id);
|
|
20
|
+
form_data.append("settings", JSON.stringify(options?.settings));
|
|
21
|
+
|
|
22
|
+
return fetch(`${options?.push_domain}/api/deploy`, {
|
|
23
|
+
method: "POST",
|
|
24
|
+
headers: {
|
|
25
|
+
...form_data.getHeaders(),
|
|
26
|
+
"x-push-deployment-token": options?.deployment_token,
|
|
27
|
+
},
|
|
28
|
+
body: form_data,
|
|
29
|
+
}).then(async (response) => {
|
|
30
|
+
const data = await response.json();
|
|
31
|
+
return data?.data;
|
|
32
|
+
}).catch((error) => {
|
|
33
|
+
console.warn(error);
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export default upload_build_to_push;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import fetch from 'node-fetch';
|
|
2
|
+
|
|
3
|
+
const validate_deployment = (options = {}) => {
|
|
4
|
+
return fetch(`${options?.push_provision_domain}/api/deployments/${options?.push_config?.domain}/validate`, {
|
|
5
|
+
method: 'POST',
|
|
6
|
+
headers: {
|
|
7
|
+
'Content-Type': 'application/json',
|
|
8
|
+
'x-push-session-token': options?.session_token,
|
|
9
|
+
},
|
|
10
|
+
body: JSON.stringify(options?.push_config),
|
|
11
|
+
})?.then(async (response) => {
|
|
12
|
+
const data = await response.json();
|
|
13
|
+
return data?.data;
|
|
14
|
+
}).catch((error) => {
|
|
15
|
+
console.warn(error);
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export default validate_deployment;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import fetch from 'node-fetch';
|
|
2
|
+
|
|
3
|
+
const validate_push_config = (options = {}) => {
|
|
4
|
+
return fetch(`${options?.push_provision_domain}/api/validate/config`, {
|
|
5
|
+
method: 'POST',
|
|
6
|
+
headers: {
|
|
7
|
+
'Content-Type': 'application/json',
|
|
8
|
+
},
|
|
9
|
+
body: JSON.stringify(options?.push_config),
|
|
10
|
+
})?.then(async (response) => {
|
|
11
|
+
const data = await response.json();
|
|
12
|
+
return data?.data;
|
|
13
|
+
}).catch((error) => {
|
|
14
|
+
console.warn(error);
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export default validate_push_config;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import start from './index.js';
|
|
2
|
+
|
|
3
|
+
const [_node, _bin, ...raw_args] = process.argv;
|
|
4
|
+
|
|
5
|
+
const definition = {
|
|
6
|
+
description: 'Start an existing Joystick app.',
|
|
7
|
+
args: {},
|
|
8
|
+
options: {
|
|
9
|
+
environment: {
|
|
10
|
+
flags: {
|
|
11
|
+
'-e': {
|
|
12
|
+
set: !!raw_args.includes('-e'),
|
|
13
|
+
value: !!raw_args.includes('-e') && raw_args[raw_args.indexOf('-e') + 1],
|
|
14
|
+
parent: 'start'
|
|
15
|
+
},
|
|
16
|
+
'--environment': {
|
|
17
|
+
set: !!raw_args.includes('--environment'),
|
|
18
|
+
value: !!raw_args.includes('--environment') && raw_args[raw_args.indexOf('--environment') + 1],
|
|
19
|
+
parent: 'start'
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
description: 'Environment to set for process.env.NODE_ENV.',
|
|
23
|
+
},
|
|
24
|
+
port: {
|
|
25
|
+
flags: {
|
|
26
|
+
'-p': {
|
|
27
|
+
set: !!raw_args.includes('-p'),
|
|
28
|
+
value: !!raw_args.includes('-p') && parseInt(raw_args[raw_args.indexOf('-p') + 1], 10),
|
|
29
|
+
parent: 'start'
|
|
30
|
+
},
|
|
31
|
+
'--port': {
|
|
32
|
+
set: !!raw_args.includes('--port'),
|
|
33
|
+
value: !!raw_args.includes('--port') && parseInt(raw_args[raw_args.indexOf('--port') + 1], 10),
|
|
34
|
+
parent: 'start'
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
description: 'Port number to run the app on.',
|
|
38
|
+
},
|
|
39
|
+
debug: {
|
|
40
|
+
flags: {
|
|
41
|
+
'-d': {
|
|
42
|
+
set: !!raw_args.includes('-d'),
|
|
43
|
+
value: !!raw_args.includes('-d'),
|
|
44
|
+
parent: 'start'
|
|
45
|
+
},
|
|
46
|
+
'--debug': {
|
|
47
|
+
set: !!raw_args.includes('--debug'),
|
|
48
|
+
value: !!raw_args.includes('--debug'),
|
|
49
|
+
parent: 'start'
|
|
50
|
+
},
|
|
51
|
+
},
|
|
52
|
+
description: 'Run the Joystick app\'s Node.js process in debug mode with --inspect.',
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
command: start,
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export default definition;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import development_server from "../../lib/development_server/index.js";
|
|
2
|
+
|
|
3
|
+
const start = async (args = {}, options = {}) => {
|
|
4
|
+
await development_server({
|
|
5
|
+
environment: options?.environment || 'development',
|
|
6
|
+
port: options?.port || 2600,
|
|
7
|
+
debug: !!options?.debug,
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export default start;
|