avm-tools 0.120.2 → 0.121.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/avm/ruby/gems/generator.rb +2 -1
- data/lib/avm/tools/runner/app_src/info.rb +1 -1
- data/lib/avm/tools/version.rb +1 -1
- metadata +2 -351
- data/lib/avm/tools/runner/eac_redmine_base0/core_update.rb +0 -63
- data/sub/avm-eac_redmine_base0/Gemfile +0 -5
- data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +0 -23
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/apache_host.rb +0 -10
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/core_update.rb +0 -115
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/data_unit.rb +0 -51
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/deploy.rb +0 -36
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instance.rb +0 -57
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +0 -97
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/rest_api.rb +0 -11
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +0 -27
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/version.rb +0 -7
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0.rb +0 -9
- data/sub/avm-eac_redmine_base0/spec/rubocop_spec.rb +0 -3
- data/sub/avm-eac_redmine_base0/spec/spec_helper.rb +0 -4
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/deploy/config/install.sh.template +0 -27
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/deploy/config/secrets.yml +0 -8
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile.template +0 -37
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile_apache_setup +0 -8
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_http_virtualhost.conf.template +0 -10
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_https_virtualhost.conf.template +0 -16
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/install_settings.sh.template +0 -33
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/start.sh.template +0 -52
- data/sub/avm-eac_webapp_base0/Gemfile +0 -5
- data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +0 -22
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/apache_host.rb +0 -78
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/apache_path.rb +0 -51
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/appended_directories.rb +0 -25
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/build.rb +0 -48
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/file_unit.rb +0 -42
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/git_info.rb +0 -62
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/version.rb +0 -24
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/write_on_target.rb +0 -18
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy.rb +0 -73
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instance/subcommand_parent.rb +0 -24
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instance.rb +0 -62
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_host.rb +0 -35
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_path.rb +0 -40
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/data/dump.rb +0 -63
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/data/load.rb +0 -55
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/data.rb +0 -17
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/deploy.rb +0 -39
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner.rb +0 -12
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources/base.rb +0 -15
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources.rb +0 -11
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +0 -7
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0.rb +0 -9
- data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/sources/base_spec.rb +0 -7
- data/sub/avm-eac_webapp_base0/spec/rubocop_spec.rb +0 -3
- data/sub/avm-eac_webapp_base0/spec/spec_helper.rb +0 -4
- data/sub/avm-eac_webapp_base0/template/avm/eac_webapp_base0/apache_host/no_ssl.conf +0 -11
- data/sub/avm-eac_webapp_base0/template/avm/eac_webapp_base0/apache_path/default.conf +0 -9
- data/sub/eac_cli/Gemfile +0 -5
- data/sub/eac_cli/eac_cli.gemspec +0 -20
- data/sub/eac_cli/lib/eac_cli/config/entry/options.rb +0 -57
- data/sub/eac_cli/lib/eac_cli/config/entry/undefined.rb +0 -26
- data/sub/eac_cli/lib/eac_cli/config/entry.rb +0 -50
- data/sub/eac_cli/lib/eac_cli/config.rb +0 -21
- data/sub/eac_cli/lib/eac_cli/core_ext.rb +0 -6
- data/sub/eac_cli/lib/eac_cli/default_runner.rb +0 -14
- data/sub/eac_cli/lib/eac_cli/definition/alternative.rb +0 -80
- data/sub/eac_cli/lib/eac_cli/definition/argument_option.rb +0 -21
- data/sub/eac_cli/lib/eac_cli/definition/base_option/initialize_args_parser.rb +0 -47
- data/sub/eac_cli/lib/eac_cli/definition/base_option.rb +0 -66
- data/sub/eac_cli/lib/eac_cli/definition/boolean_option.rb +0 -27
- data/sub/eac_cli/lib/eac_cli/definition/positional_argument.rb +0 -61
- data/sub/eac_cli/lib/eac_cli/definition.rb +0 -95
- data/sub/eac_cli/lib/eac_cli/enum.rb +0 -45
- data/sub/eac_cli/lib/eac_cli/old_configs/entry_reader.rb +0 -80
- data/sub/eac_cli/lib/eac_cli/old_configs/password_entry_reader.rb +0 -16
- data/sub/eac_cli/lib/eac_cli/old_configs/read_entry_options.rb +0 -44
- data/sub/eac_cli/lib/eac_cli/old_configs/store_passwords_entry_reader.rb +0 -25
- data/sub/eac_cli/lib/eac_cli/old_configs.rb +0 -35
- data/sub/eac_cli/lib/eac_cli/parser/alternative/argv.rb +0 -17
- data/sub/eac_cli/lib/eac_cli/parser/alternative/double_dash.rb +0 -24
- data/sub/eac_cli/lib/eac_cli/parser/alternative/long_options.rb +0 -37
- data/sub/eac_cli/lib/eac_cli/parser/alternative/option_argument.rb +0 -29
- data/sub/eac_cli/lib/eac_cli/parser/alternative/options.rb +0 -29
- data/sub/eac_cli/lib/eac_cli/parser/alternative/positionals.rb +0 -30
- data/sub/eac_cli/lib/eac_cli/parser/alternative/short_options.rb +0 -47
- data/sub/eac_cli/lib/eac_cli/parser/alternative.rb +0 -92
- data/sub/eac_cli/lib/eac_cli/parser/collector.rb +0 -46
- data/sub/eac_cli/lib/eac_cli/parser/error.rb +0 -15
- data/sub/eac_cli/lib/eac_cli/parser.rb +0 -34
- data/sub/eac_cli/lib/eac_cli/patches/object/runner_with.rb +0 -26
- data/sub/eac_cli/lib/eac_cli/patches/object.rb +0 -5
- data/sub/eac_cli/lib/eac_cli/patches.rb +0 -4
- data/sub/eac_cli/lib/eac_cli/rspec/setup.rb +0 -42
- data/sub/eac_cli/lib/eac_cli/rspec.rb +0 -9
- data/sub/eac_cli/lib/eac_cli/runner/after_class_methods.rb +0 -33
- data/sub/eac_cli/lib/eac_cli/runner/class_runner.rb +0 -50
- data/sub/eac_cli/lib/eac_cli/runner/context.rb +0 -40
- data/sub/eac_cli/lib/eac_cli/runner/exit.rb +0 -13
- data/sub/eac_cli/lib/eac_cli/runner/instance_methods.rb +0 -43
- data/sub/eac_cli/lib/eac_cli/runner.rb +0 -49
- data/sub/eac_cli/lib/eac_cli/runner_with/help/builder/alternative.rb +0 -63
- data/sub/eac_cli/lib/eac_cli/runner_with/help/builder.rb +0 -82
- data/sub/eac_cli/lib/eac_cli/runner_with/help.rb +0 -41
- data/sub/eac_cli/lib/eac_cli/runner_with/subcommands/definition_concern.rb +0 -10
- data/sub/eac_cli/lib/eac_cli/runner_with/subcommands.rb +0 -119
- data/sub/eac_cli/lib/eac_cli/runner_with.rb +0 -9
- data/sub/eac_cli/lib/eac_cli/runner_with_set.rb +0 -50
- data/sub/eac_cli/lib/eac_cli/speaker/constants.rb +0 -13
- data/sub/eac_cli/lib/eac_cli/speaker/list.rb +0 -61
- data/sub/eac_cli/lib/eac_cli/speaker/options.rb +0 -38
- data/sub/eac_cli/lib/eac_cli/speaker.rb +0 -126
- data/sub/eac_cli/lib/eac_cli/version.rb +0 -5
- data/sub/eac_cli/lib/eac_cli.rb +0 -7
- data/sub/eac_cli/spec/lib/eac_cli/definition/alternative_spec.rb +0 -18
- data/sub/eac_cli/spec/lib/eac_cli/old_configs_spec.rb +0 -14
- data/sub/eac_cli/spec/lib/eac_cli/parser/alternative_spec.rb +0 -140
- data/sub/eac_cli/spec/lib/eac_cli/runner_spec.rb +0 -129
- data/sub/eac_cli/spec/lib/eac_cli/runner_with/help_spec.rb +0 -51
- data/sub/eac_cli/spec/lib/eac_cli/runner_with/subcommands_spec.rb +0 -88
- data/sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb +0 -32
- data/sub/eac_cli/spec/rubocop_spec.rb +0 -3
- data/sub/eac_cli/spec/spec_helper.rb +0 -4
- data/sub/eac_fs/Gemfile +0 -5
- data/sub/eac_fs/eac_fs.gemspec +0 -20
- data/sub/eac_fs/lib/eac_fs/cached_download.rb +0 -39
- data/sub/eac_fs/lib/eac_fs/contexts.rb +0 -21
- data/sub/eac_fs/lib/eac_fs/file_info.rb +0 -29
- data/sub/eac_fs/lib/eac_fs/logs/file.rb +0 -56
- data/sub/eac_fs/lib/eac_fs/logs.rb +0 -64
- data/sub/eac_fs/lib/eac_fs/patches/module/fs_cache.rb +0 -15
- data/sub/eac_fs/lib/eac_fs/patches/module.rb +0 -4
- data/sub/eac_fs/lib/eac_fs/patches/object/fs_cache.rb +0 -32
- data/sub/eac_fs/lib/eac_fs/patches/object.rb +0 -4
- data/sub/eac_fs/lib/eac_fs/patches/pathname/info.rb +0 -12
- data/sub/eac_fs/lib/eac_fs/patches/pathname.rb +0 -4
- data/sub/eac_fs/lib/eac_fs/patches.rb +0 -4
- data/sub/eac_fs/lib/eac_fs/storage_tree.rb +0 -62
- data/sub/eac_fs/lib/eac_fs/traversable.rb +0 -45
- data/sub/eac_fs/lib/eac_fs/traverser.rb +0 -76
- data/sub/eac_fs/lib/eac_fs/version.rb +0 -5
- data/sub/eac_fs/lib/eac_fs.rb +0 -7
- data/sub/eac_fs/spec/lib/eac_fs/storage_tree_spec.rb +0 -32
- data/sub/eac_fs/spec/rubocop_spec.rb +0 -3
- data/sub/eac_fs/spec/spec_helper.rb +0 -4
- data/sub/eac_ruby_utils/Gemfile +0 -16
- data/sub/eac_ruby_utils/MIT-LICENCE +0 -16
- data/sub/eac_ruby_utils/README.rdoc +0 -3
- data/sub/eac_ruby_utils/eac_ruby_utils.gemspec +0 -23
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/abstract_methods.rb +0 -68
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/arguments_consumer.rb +0 -81
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit.rb +0 -46
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit_array.rb +0 -81
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/blank_not_blank.rb +0 -19
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/boolean.rb +0 -31
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/by_reference.rb +0 -23
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte.rb +0 -105
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte_array.rb +0 -36
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/class_setup.rb +0 -52
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/module_setup.rb +0 -41
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +0 -20
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_initialize.rb +0 -29
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/instance_initialize.rb +0 -53
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/super_args.rb +0 -54
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb +0 -89
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/compact.rb +0 -22
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/compare_by.rb +0 -28
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/context.rb +0 -33
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/contextualizable.rb +0 -21
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/core_ext.rb +0 -7
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/custom_format.rb +0 -53
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/enum.rb +0 -102
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_env.rb +0 -28
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/concat.rb +0 -33
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/envvars.rb +0 -24
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/extra_options.rb +0 -33
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +0 -172
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/executable.rb +0 -81
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/file.rb +0 -22
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/local_env.rb +0 -17
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/process.rb +0 -27
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/spawn.rb +0 -32
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/dasho_options.rb +0 -53
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/identity_file.rb +0 -25
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/quiet.rb +0 -24
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/terminal.rb +0 -34
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env.rb +0 -75
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs.rb +0 -23
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/clearable_directory.rb +0 -57
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/extname.rb +0 -30
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/directory.rb +0 -16
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/file.rb +0 -34
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp.rb +0 -52
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry/gem.rb +0 -79
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry.rb +0 -35
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/array_accessor.rb +0 -32
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/base_accessor.rb +0 -23
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/boolean_accessor.rb +0 -16
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/class_methods.rb +0 -20
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/common_accessor.rb +0 -30
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/hash_accessor.rb +0 -46
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/instance_methods.rb +0 -21
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable.rb +0 -15
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/inflector.rb +0 -29
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/class_methods.rb +0 -14
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/instance_methods.rb +0 -30
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/integer_list.rb +0 -23
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/list.rb +0 -111
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/lists.rb +0 -59
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/string_list.rb +0 -19
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/symbol_list.rb +0 -19
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/value.rb +0 -49
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable.rb +0 -17
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/local_time_zone.rb +0 -48
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_all_gems.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_gem.rb +0 -47
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/module_i18n_translate.rb +0 -74
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/method_class.rb +0 -35
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/options_consumer.rb +0 -62
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patch.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/abstract.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/common_constructor.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/self_included_modules.rb +0 -7
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/settings_provider.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable/boolean_combinations.rb +0 -45
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/current.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/stopped.rb +0 -14
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/options_consumer.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/sym_keys_hash.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/to_struct.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash.rb +0 -5
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel/nyi.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/abstract_methods.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/common_concern.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/compare_by.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/context.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/i18n_translate.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/immutable.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/listable.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/method_class.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/patch.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/require_sub.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/speaker.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/asserts.rb +0 -25
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/call_if_proc.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/compact.rb +0 -20
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb +0 -23
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/i18n_translate.rb +0 -13
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_nil.rb +0 -17
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_present.rb +0 -19
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_respond.rb +0 -22
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_pathname.rb +0 -15
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_uri.rb +0 -15
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object.rb +0 -5
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_noext.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_sub.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/if_exist.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/mkpath_s.rb +0 -12
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/parent_n.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/readlink_r.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/reqdir_glob.rb +0 -13
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/if_match.rb +0 -16
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/to_parser.rb +0 -10
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/delimited.rb +0 -16
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/inflector.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time/required_zone.rb +0 -11
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches.rb +0 -4
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/recursive_builder.rb +0 -51
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/regexp_parser.rb +0 -34
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb +0 -134
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/default_setup.rb +0 -20
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/conditionals.rb +0 -17
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb +0 -12
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup_manager.rb +0 -49
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/stub_speaker.rb +0 -39
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb +0 -32
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_clean_environment.rb +0 -26
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby.rb +0 -9
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider/setting_value.rb +0 -69
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider.rb +0 -46
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/simple_cache.rb +0 -77
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/receiver.rb +0 -64
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/sender.rb +0 -32
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker.rb +0 -16
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/string_delimited.rb +0 -70
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/struct.rb +0 -63
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +0 -5
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/yaml.rb +0 -105
- data/sub/eac_ruby_utils/lib/eac_ruby_utils.rb +0 -6
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/abstract_methods_spec.rb +0 -28
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/arguments_consumer_spec.rb +0 -17
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/bit_array_spec.rb +0 -22
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/blank_not_blank_spec.rb +0 -16
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/byte_spec.rb +0 -54
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_concern_spec.rb +0 -65
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb +0 -125
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compact_spec.rb +0 -20
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compare_by_spec.rb +0 -38
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/custom_format_spec.rb +0 -60
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/enum_spec.rb +0 -43
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/executable_spec.rb +0 -37
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/ssh_env_spec.rb +0 -25
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/extname_spec.rb +0 -18
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp/directory_spec.rb +0 -12
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp_spec.rb +0 -52
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/inflector_spec.rb +0 -16
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb +0 -275
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/local_time_zone_spec.rb +0 -17
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/method_class_spec.rb +0 -46
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/options_consumer_spec.rb +0 -80
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/abstract_spec.rb +0 -25
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/self_included_modules_spec.rb +0 -30
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerable/boolean_combinations_spec.rb +0 -39
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/current_spec.rb +0 -26
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/stopped_spec.rb +0 -32
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/options_consumer_spec.rb +0 -17
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/sym_keys_hash_spec.rb +0 -13
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/compare_by_spec.rb +0 -36
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/listable_spec.rb +0 -15
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/method_class_spec.rb +0 -20
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/simple_cache_spec.rb +0 -15
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/speaker_spec.rb +0 -13
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/call_if_proc_spec.rb +0 -11
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/compact_spec.rb +0 -20
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/if_present_spec.rb +0 -13
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/template_spec_files/path/my_stub_with_template +0 -1
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_noext_spec.rb +0 -26
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_sub_spec.rb +0 -17
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/parent_n_spec.rb +0 -33
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/string/delimited_spec.rb +0 -34
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/recursive_builder_spec.rb +0 -65
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_module_a.rb +0 -6
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_not_module.rb +0 -6
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec.rb +0 -19
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby_spec.rb +0 -22
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/settings_provider_spec.rb +0 -57
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/simple_cache_spec.rb +0 -129
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/struct_spec.rb +0 -57
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/yaml_spec.rb +0 -75
- data/sub/eac_ruby_utils/spec/locales/pt-BR.yml +0 -58
- data/sub/eac_ruby_utils/spec/rubocop_check_spec.rb +0 -3
- data/sub/eac_ruby_utils/spec/spec_helper.rb +0 -15
@@ -1,92 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_cli/parser/collector'
|
4
|
-
require 'eac_cli/parser/error'
|
5
|
-
require 'eac_ruby_utils/core_ext'
|
6
|
-
|
7
|
-
module EacCli
|
8
|
-
class Parser
|
9
|
-
class Alternative
|
10
|
-
require_sub __FILE__, include_modules: true
|
11
|
-
enable_listable
|
12
|
-
lists.add_symbol :phase, :any, :option_argument, :positional
|
13
|
-
attr_reader :error
|
14
|
-
|
15
|
-
common_constructor :alternative, :argv do
|
16
|
-
alternative.assert_argument(::EacCli::Definition::Alternative, :alternative)
|
17
|
-
self.phase = PHASE_ANY
|
18
|
-
collect
|
19
|
-
end
|
20
|
-
|
21
|
-
def error?
|
22
|
-
error.present?
|
23
|
-
end
|
24
|
-
|
25
|
-
def success?
|
26
|
-
!error?
|
27
|
-
end
|
28
|
-
|
29
|
-
def parsed
|
30
|
-
@parsed ||= collector.to_data.freeze
|
31
|
-
end
|
32
|
-
|
33
|
-
private
|
34
|
-
|
35
|
-
attr_accessor :phase
|
36
|
-
|
37
|
-
def any_collect_argv_value
|
38
|
-
%w[double_dash long_option short_option].each do |arg_type|
|
39
|
-
return send("#{arg_type}_collect_argv_value") if send("argv_current_#{arg_type}?")
|
40
|
-
end
|
41
|
-
|
42
|
-
positional_collect_argv_value
|
43
|
-
end
|
44
|
-
|
45
|
-
def collector
|
46
|
-
@collector ||= ::EacCli::Parser::Collector.new(alternative)
|
47
|
-
end
|
48
|
-
|
49
|
-
def collect
|
50
|
-
loop do
|
51
|
-
break unless argv_pending?
|
52
|
-
|
53
|
-
collect_argv_value
|
54
|
-
end
|
55
|
-
validate
|
56
|
-
rescue ::EacCli::Parser::Error => e
|
57
|
-
@error = e
|
58
|
-
end
|
59
|
-
|
60
|
-
def collect_argv_value
|
61
|
-
send("#{phase}_collect_argv_value")
|
62
|
-
argv_enum.next
|
63
|
-
end
|
64
|
-
|
65
|
-
def collect_option_argv_value
|
66
|
-
alternative.options.each do |option|
|
67
|
-
end
|
68
|
-
|
69
|
-
raise ::EacCli::Parser::Error.new(
|
70
|
-
alternative, argv, "Invalid option: #{argv_enum.current}"
|
71
|
-
)
|
72
|
-
end
|
73
|
-
|
74
|
-
def raise_error(message)
|
75
|
-
raise ::EacCli::Parser::Error.new(alternative, argv, message)
|
76
|
-
end
|
77
|
-
|
78
|
-
def validate
|
79
|
-
(alternative.options + alternative.positional).each do |option|
|
80
|
-
validate_option(option)
|
81
|
-
end
|
82
|
-
end
|
83
|
-
|
84
|
-
def validate_option(option)
|
85
|
-
return unless option.required?
|
86
|
-
return if collector.supplied?(option)
|
87
|
-
|
88
|
-
raise_error("Required option/positional #{option} not supplied")
|
89
|
-
end
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
@@ -1,46 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
require 'eac_ruby_utils/struct'
|
5
|
-
|
6
|
-
module EacCli
|
7
|
-
class Parser
|
8
|
-
class Collector
|
9
|
-
class << self
|
10
|
-
def to_data(definition)
|
11
|
-
collector = new(definition)
|
12
|
-
yield(collector)
|
13
|
-
collector.to_data
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
common_constructor :definition do
|
18
|
-
default_values
|
19
|
-
end
|
20
|
-
|
21
|
-
# @return [OpenStruct]
|
22
|
-
def to_data
|
23
|
-
::EacRubyUtils::Struct.new(data.transform_keys(&:identifier))
|
24
|
-
end
|
25
|
-
|
26
|
-
def collect(option, value)
|
27
|
-
data[option] = option.build_value(value, data[option])
|
28
|
-
end
|
29
|
-
|
30
|
-
def supplied?(option)
|
31
|
-
data[option].present?
|
32
|
-
end
|
33
|
-
|
34
|
-
private
|
35
|
-
|
36
|
-
def data
|
37
|
-
@data ||= {}
|
38
|
-
end
|
39
|
-
|
40
|
-
def default_values
|
41
|
-
definition.options.each { |option| data[option] = option.default_value }
|
42
|
-
definition.positional.each { |positional| data[positional] = positional.default_value }
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|
46
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
|
5
|
-
module EacCli
|
6
|
-
class Parser
|
7
|
-
class Error < ::StandardError
|
8
|
-
def initialize(definition, argv, message)
|
9
|
-
@definition = definition
|
10
|
-
@argv = argv
|
11
|
-
super(message)
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
|
5
|
-
module EacCli
|
6
|
-
class Parser
|
7
|
-
require_sub __FILE__
|
8
|
-
enable_simple_cache
|
9
|
-
common_constructor :definition, :argv
|
10
|
-
|
11
|
-
private
|
12
|
-
|
13
|
-
def parsed_uncached
|
14
|
-
raise 'Definition has no alternatives' if alternatives.empty?
|
15
|
-
raise first_error unless alternatives.select(&:success?).any?
|
16
|
-
|
17
|
-
alternatives_parsed(true).merge(alternatives_parsed(false))
|
18
|
-
end
|
19
|
-
|
20
|
-
def alternatives_parsed(error)
|
21
|
-
alternatives.select { |a| error == a.error? }.map(&:parsed).reverse
|
22
|
-
.inject(::EacRubyUtils::Struct.new) { |a, e| a.merge(e) }
|
23
|
-
end
|
24
|
-
|
25
|
-
def alternatives_uncached
|
26
|
-
definition.alternatives
|
27
|
-
.map { |alternative| ::EacCli::Parser::Alternative.new(alternative, argv) }
|
28
|
-
end
|
29
|
-
|
30
|
-
def first_error_uncached
|
31
|
-
alternatives.lazy.select(&:error?).map(&:error).first
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
require 'eac_cli/runner'
|
5
|
-
require 'eac_cli/runner_with'
|
6
|
-
require 'eac_cli/runner_with_set'
|
7
|
-
|
8
|
-
class Object
|
9
|
-
def runner_with(*runners, &block)
|
10
|
-
include ::EacCli::Runner
|
11
|
-
enable_simple_cache
|
12
|
-
enable_speaker
|
13
|
-
runners.each do |runner|
|
14
|
-
include ::EacCli::RunnerWithSet.default.item_to_module(runner)
|
15
|
-
end
|
16
|
-
runner_definition(&block) if block
|
17
|
-
end
|
18
|
-
|
19
|
-
private
|
20
|
-
|
21
|
-
def runner_with_to_module(runner)
|
22
|
-
return runner if runner.is_a?(::Module)
|
23
|
-
|
24
|
-
"EacCli::RunnerWith::#{runner.to_s.camelize}".constantize
|
25
|
-
end
|
26
|
-
end
|
@@ -1,42 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_cli/config/entry'
|
4
|
-
require 'eac_cli/speaker'
|
5
|
-
require 'eac_ruby_utils/core_ext'
|
6
|
-
require 'eac_ruby_utils/speaker'
|
7
|
-
|
8
|
-
module EacCli
|
9
|
-
module Rspec
|
10
|
-
module Setup
|
11
|
-
def disable_input_request
|
12
|
-
disable_config_input_request
|
13
|
-
disable_speaker_input_request
|
14
|
-
end
|
15
|
-
|
16
|
-
def disable_config_input_request
|
17
|
-
rspec_config.before do
|
18
|
-
allow_any_instance_of(::EacCli::Config::Entry).to receive(:input_value) do |obj|
|
19
|
-
raise "Console input requested for entry (Path: #{obj.path})"
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
def disable_speaker_input_request
|
25
|
-
::RSpec.configure do |config|
|
26
|
-
config.around do |example|
|
27
|
-
::EacRubyUtils::Speaker
|
28
|
-
.context.on(::EacCli::Speaker.new(in_in: FailIfRequestInput.new)) { example.run }
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
class FailIfRequestInput
|
34
|
-
%w[gets noecho].each do |method|
|
35
|
-
define_method(method) do
|
36
|
-
raise "Input method requested: #{method}. Should not request input on RSpec."
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_cli/definition'
|
4
|
-
require 'eac_cli/runner/class_runner'
|
5
|
-
|
6
|
-
module EacCli
|
7
|
-
module Runner
|
8
|
-
module AfterClassMethods
|
9
|
-
# @return [EacCli::Runner::ClassRunner]
|
10
|
-
def class_runner(runner_context_args)
|
11
|
-
::EacCli::Runner::ClassRunner.new(self, runner_context_args)
|
12
|
-
end
|
13
|
-
|
14
|
-
def create(*runner_context_args)
|
15
|
-
class_runner(runner_context_args).create
|
16
|
-
end
|
17
|
-
|
18
|
-
def run(*runner_context_args)
|
19
|
-
class_runner(runner_context_args).run
|
20
|
-
end
|
21
|
-
|
22
|
-
def runner_definition(&block)
|
23
|
-
@runner_definition ||= super_runner_definition
|
24
|
-
@runner_definition.instance_eval(&block) if block
|
25
|
-
@runner_definition
|
26
|
-
end
|
27
|
-
|
28
|
-
def super_runner_definition
|
29
|
-
superclass.try(:runner_definition).if_present(&:dup) || ::EacCli::Definition.new
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,50 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_cli/speaker'
|
4
|
-
require 'eac_ruby_utils/core_ext'
|
5
|
-
require 'eac_ruby_utils/speaker'
|
6
|
-
|
7
|
-
module EacCli
|
8
|
-
module Runner
|
9
|
-
class ClassRunner
|
10
|
-
PARSER_ERROR_EXIT_CODE = 1
|
11
|
-
|
12
|
-
common_constructor :klass, :context_args
|
13
|
-
|
14
|
-
def create
|
15
|
-
r = klass.new
|
16
|
-
r.runner_context = ::EacCli::Runner::Context.new(r, *context_args)
|
17
|
-
r
|
18
|
-
end
|
19
|
-
|
20
|
-
def run
|
21
|
-
on_asserted_speaker do
|
22
|
-
r = create
|
23
|
-
begin
|
24
|
-
r.run_run
|
25
|
-
rescue ::EacCli::Parser::Error => e
|
26
|
-
run_parser_error(r, e)
|
27
|
-
end
|
28
|
-
r
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
def run_parser_error(runner_instance, error)
|
33
|
-
$stderr.write("#{runner_instance.program_name}: #{error}\n")
|
34
|
-
::Kernel.exit(PARSER_ERROR_EXIT_CODE)
|
35
|
-
end
|
36
|
-
|
37
|
-
private
|
38
|
-
|
39
|
-
def on_asserted_speaker
|
40
|
-
if ::EacRubyUtils::Speaker.context.optional_current
|
41
|
-
yield
|
42
|
-
else
|
43
|
-
::EacRubyUtils::Speaker.context.on(::EacCli::Speaker.new) do
|
44
|
-
yield
|
45
|
-
end
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
@@ -1,40 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
|
5
|
-
module EacCli
|
6
|
-
module Runner
|
7
|
-
class Context
|
8
|
-
attr_reader :argv, :parent, :program_name, :runner
|
9
|
-
|
10
|
-
def initialize(runner, *context_args)
|
11
|
-
options = context_args.extract_options!
|
12
|
-
@argv = (context_args[0] || options.delete(:argv) || ARGV).dup.freeze
|
13
|
-
@parent = context_args[1] || options.delete(:parent)
|
14
|
-
@program_name = options.delete(:program_name)
|
15
|
-
@runner = runner
|
16
|
-
end
|
17
|
-
|
18
|
-
# Call a method in the runner or in one of it ancestors.
|
19
|
-
def call(method_name, *args)
|
20
|
-
return runner.send(method_name, *args) if runner.respond_to?(method_name)
|
21
|
-
return parent_call(method_name, *args) if parent.present?
|
22
|
-
|
23
|
-
raise ::NameError, "No method \"#{method_name}\" found in #{runner} or in its ancestors"
|
24
|
-
end
|
25
|
-
|
26
|
-
def respond_to_call?((method_name))
|
27
|
-
parent.respond_to?(:runner_context) && parent.runner_context.respond_to_call?(method_name)
|
28
|
-
end
|
29
|
-
|
30
|
-
protected
|
31
|
-
|
32
|
-
def parent_call(method_name, *args)
|
33
|
-
return parent.context(method_name, *args) if parent.respond_to?(:context)
|
34
|
-
return parent.runner_context.call(method_name, *args) if parent.respond_to?(:runner_context)
|
35
|
-
|
36
|
-
raise "Parent #{parent} do not respond to .context or .runner_context (Runner: #{runner})"
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module EacCli
|
4
|
-
module Runner
|
5
|
-
module InstanceMethods
|
6
|
-
def run_run
|
7
|
-
parsed
|
8
|
-
run_callbacks(:run) { run }
|
9
|
-
rescue ::EacCli::Runner::Exit # rubocop:disable Lint/SuppressedException
|
10
|
-
# Do nothing
|
11
|
-
end
|
12
|
-
|
13
|
-
def runner_context
|
14
|
-
return @runner_context if @runner_context
|
15
|
-
|
16
|
-
raise 'Context was required, but was not set yet'
|
17
|
-
end
|
18
|
-
|
19
|
-
def runner_context=(new_runner_context)
|
20
|
-
@runner_context = new_runner_context
|
21
|
-
@parsed = nil
|
22
|
-
end
|
23
|
-
|
24
|
-
def parsed
|
25
|
-
@parsed ||= ::EacCli::Parser.new(self.class.runner_definition, runner_context.argv).parsed
|
26
|
-
end
|
27
|
-
|
28
|
-
def program_name
|
29
|
-
runner_context.if_present(&:program_name) || $PROGRAM_NAME
|
30
|
-
end
|
31
|
-
|
32
|
-
def respond_to_missing?(method, include_all = false)
|
33
|
-
runner_context.respond_to_call?(method) || super
|
34
|
-
end
|
35
|
-
|
36
|
-
def method_missing(method, *args, &block)
|
37
|
-
return super unless runner_context.respond_to_call?(method)
|
38
|
-
|
39
|
-
runner_context.call(method, *args, &block)
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
@@ -1,49 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_cli/definition'
|
4
|
-
require 'eac_cli/parser'
|
5
|
-
require 'eac_ruby_utils/core_ext'
|
6
|
-
|
7
|
-
module EacCli
|
8
|
-
module Runner
|
9
|
-
require_sub __FILE__
|
10
|
-
extend ::ActiveSupport::Concern
|
11
|
-
|
12
|
-
class << self
|
13
|
-
def alias_runner_class_methods(klass, from_suffix, to_suffix)
|
14
|
-
%i[create run].each do |method|
|
15
|
-
alias_class_method(klass, build_method_name(method, from_suffix),
|
16
|
-
build_method_name(method, to_suffix))
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
def runner?(object)
|
21
|
-
object.is_a?(::Class) && object.included_modules.include?(::EacCli::Runner)
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
def alias_class_method(klass, from, to)
|
27
|
-
sklass = klass.singleton_class
|
28
|
-
return unless sklass.method_defined?(from)
|
29
|
-
|
30
|
-
sklass.send(:alias_method, to, from)
|
31
|
-
end
|
32
|
-
|
33
|
-
def build_method_name(name, suffix)
|
34
|
-
ss = suffix.if_present('') { |s| "#{s}_" }
|
35
|
-
"#{ss}#{name}"
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
the_module = self
|
40
|
-
included do
|
41
|
-
the_module.alias_runner_class_methods(self, '', 'original')
|
42
|
-
|
43
|
-
extend AfterClassMethods
|
44
|
-
include InstanceMethods
|
45
|
-
include ActiveSupport::Callbacks
|
46
|
-
define_callbacks :run
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
@@ -1,63 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
|
5
|
-
module EacCli
|
6
|
-
module RunnerWith
|
7
|
-
module Help
|
8
|
-
class Builder
|
9
|
-
class Alternative
|
10
|
-
enable_method_class
|
11
|
-
|
12
|
-
SUBCOMMANDS_MACRO = '__SUBCOMMANDS__'
|
13
|
-
|
14
|
-
common_constructor :builder, :alternative
|
15
|
-
|
16
|
-
def result
|
17
|
-
(
|
18
|
-
program_name +
|
19
|
-
alternative.options_argument?.if_present([]) { |_v| ['[options]'] } +
|
20
|
-
options +
|
21
|
-
positionals
|
22
|
-
).join(builder.word_separator)
|
23
|
-
end
|
24
|
-
|
25
|
-
def options
|
26
|
-
alternative.options.select(&:show_on_usage?).map do |option|
|
27
|
-
::EacCli::RunnerWith::Help::Builder.option_long(option)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
def option_argument(option)
|
32
|
-
b = option.long
|
33
|
-
b += '=<value>' if option.argument?
|
34
|
-
b
|
35
|
-
end
|
36
|
-
|
37
|
-
def positionals
|
38
|
-
alternative.positional.map { |p| positional(p) }.reject(&:blank?)
|
39
|
-
end
|
40
|
-
|
41
|
-
def positional(positional)
|
42
|
-
return unless positional.visible?
|
43
|
-
|
44
|
-
if positional.subcommand?
|
45
|
-
SUBCOMMANDS_MACRO
|
46
|
-
else
|
47
|
-
r = "<#{positional.name}>"
|
48
|
-
r += '...' if positional.repeat?
|
49
|
-
r = "[#{r}]" if positional.optional?
|
50
|
-
r
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
def program_name
|
55
|
-
r = builder.runner.program_name
|
56
|
-
r = [r] unless r.is_a?(::Enumerable)
|
57
|
-
r
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
@@ -1,82 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'eac_ruby_utils/core_ext'
|
4
|
-
|
5
|
-
module EacCli
|
6
|
-
module RunnerWith
|
7
|
-
module Help
|
8
|
-
class Builder
|
9
|
-
require_sub __FILE__, require_dependency: true
|
10
|
-
common_constructor :runner
|
11
|
-
|
12
|
-
SEP = ' '
|
13
|
-
IDENT = SEP * 2
|
14
|
-
OPTION_DESC_SEP = IDENT * 2
|
15
|
-
|
16
|
-
class << self
|
17
|
-
def option_long(option)
|
18
|
-
b = option.long
|
19
|
-
b += '=<value>' if option.argument?
|
20
|
-
b
|
21
|
-
end
|
22
|
-
|
23
|
-
def option_short(option)
|
24
|
-
b = option.short
|
25
|
-
b += '=<value>' if option.argument?
|
26
|
-
b
|
27
|
-
end
|
28
|
-
|
29
|
-
def option_usage_full(option)
|
30
|
-
if option.long.present?
|
31
|
-
[option.short, option_long(option)].reject(&:blank?).join(word_separator)
|
32
|
-
else
|
33
|
-
option_short(option)
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
def word_separator
|
38
|
-
SEP
|
39
|
-
end
|
40
|
-
end
|
41
|
-
|
42
|
-
delegate :word_separator, to: :class
|
43
|
-
|
44
|
-
def definition
|
45
|
-
runner.class.runner_definition
|
46
|
-
end
|
47
|
-
|
48
|
-
def option_definition(option)
|
49
|
-
[self.class.option_usage_full(option), option.description,
|
50
|
-
option.default_value? ? "[Default: \"#{option.default_value}\"]" : nil]
|
51
|
-
.reject(&:blank?).join(OPTION_DESC_SEP)
|
52
|
-
end
|
53
|
-
|
54
|
-
def section(header, include_header = true)
|
55
|
-
b = include_header ? "#{header.humanize}:\n" : ''
|
56
|
-
b += send("self_#{header}") + "\n"
|
57
|
-
definition.alternatives.each do |alternative|
|
58
|
-
b += IDENT + self.alternative(alternative) + "\n"
|
59
|
-
end
|
60
|
-
b
|
61
|
-
end
|
62
|
-
|
63
|
-
def options_section
|
64
|
-
"Options:\n" +
|
65
|
-
definition.alternatives.flat_map(&:options)
|
66
|
-
.map { |option| IDENT + option_definition(option) + "\n" }.join
|
67
|
-
end
|
68
|
-
|
69
|
-
def usage_section
|
70
|
-
"Usage:\n" +
|
71
|
-
definition.alternatives.map do |alternative|
|
72
|
-
IDENT + self.alternative(alternative) + "\n"
|
73
|
-
end.join
|
74
|
-
end
|
75
|
-
|
76
|
-
def to_s
|
77
|
-
"#{definition.description}\n\n#{usage_section}\n#{options_section}\n"
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|
82
|
-
end
|