avm-tools 0.120.1 → 0.121.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (376) hide show
  1. checksums.yaml +4 -4
  2. data/lib/avm/ruby/gems/generator.rb +2 -1
  3. data/lib/avm/tools/runner/app_src/info.rb +1 -1
  4. data/lib/avm/tools/version.rb +1 -1
  5. data/locale/en.yml +7 -0
  6. data/locale/pt-BR.yml +7 -0
  7. metadata +4 -385
  8. data/lib/avm/tools/runner/eac_redmine_base0/core_update.rb +0 -63
  9. data/sub/avm-eac_generic_base0/Gemfile +0 -5
  10. data/sub/avm-eac_generic_base0/avm-eac_generic_base0.gemspec +0 -19
  11. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/sources/base/version_bump.rb +0 -35
  12. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/sources/base.rb +0 -25
  13. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/sources/tester.rb +0 -56
  14. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/sources.rb +0 -11
  15. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0/version.rb +0 -7
  16. data/sub/avm-eac_generic_base0/lib/avm/eac_generic_base0.rb +0 -9
  17. data/sub/avm-eac_generic_base0/locale/en.yaml +0 -6
  18. data/sub/avm-eac_generic_base0/locale/pt-BR.yaml +0 -6
  19. data/sub/avm-eac_generic_base0/spec/lib/avm/eac_generic_base0/sources/base_spec.rb +0 -7
  20. data/sub/avm-eac_generic_base0/spec/rubocop_spec.rb +0 -3
  21. data/sub/avm-eac_generic_base0/spec/spec_helper.rb +0 -4
  22. data/sub/avm-eac_redmine_base0/Gemfile +0 -5
  23. data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +0 -23
  24. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/apache_host.rb +0 -10
  25. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/core_update.rb +0 -115
  26. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/data_unit.rb +0 -51
  27. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/deploy.rb +0 -36
  28. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instance.rb +0 -57
  29. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +0 -97
  30. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/rest_api.rb +0 -11
  31. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +0 -27
  32. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/version.rb +0 -7
  33. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0.rb +0 -9
  34. data/sub/avm-eac_redmine_base0/spec/rubocop_spec.rb +0 -3
  35. data/sub/avm-eac_redmine_base0/spec/spec_helper.rb +0 -4
  36. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/deploy/config/install.sh.template +0 -27
  37. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/deploy/config/secrets.yml +0 -8
  38. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile.template +0 -37
  39. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile_apache_setup +0 -8
  40. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_http_virtualhost.conf.template +0 -10
  41. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_https_virtualhost.conf.template +0 -16
  42. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/install_settings.sh.template +0 -33
  43. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/start.sh.template +0 -52
  44. data/sub/avm-eac_redmine_plugin_base0/Gemfile +0 -5
  45. data/sub/avm-eac_redmine_plugin_base0/avm-eac_redmine_plugin_base0.gemspec +0 -19
  46. data/sub/avm-eac_redmine_plugin_base0/lib/avm/eac_redmine_plugin_base0/sources/base.rb +0 -30
  47. data/sub/avm-eac_redmine_plugin_base0/lib/avm/eac_redmine_plugin_base0/version.rb +0 -7
  48. data/sub/avm-eac_redmine_plugin_base0/lib/avm/eac_redmine_plugin_base0.rb +0 -9
  49. data/sub/avm-eac_redmine_plugin_base0/spec/rubocop_spec.rb +0 -3
  50. data/sub/avm-eac_redmine_plugin_base0/spec/spec_helper.rb +0 -4
  51. data/sub/avm-eac_webapp_base0/Gemfile +0 -5
  52. data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +0 -22
  53. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/apache_host.rb +0 -78
  54. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/apache_path.rb +0 -51
  55. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/appended_directories.rb +0 -25
  56. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/build.rb +0 -48
  57. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/file_unit.rb +0 -42
  58. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/git_info.rb +0 -62
  59. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/version.rb +0 -24
  60. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy/write_on_target.rb +0 -18
  61. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/deploy.rb +0 -73
  62. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instance/subcommand_parent.rb +0 -24
  63. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instance.rb +0 -62
  64. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_host.rb +0 -35
  65. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/apache_path.rb +0 -40
  66. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/data/dump.rb +0 -63
  67. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/data/load.rb +0 -55
  68. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/data.rb +0 -17
  69. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner/deploy.rb +0 -39
  70. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/runner.rb +0 -12
  71. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources/base.rb +0 -15
  72. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/sources.rb +0 -11
  73. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +0 -7
  74. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0.rb +0 -9
  75. data/sub/avm-eac_webapp_base0/spec/lib/avm/eac_webapp_base0/sources/base_spec.rb +0 -7
  76. data/sub/avm-eac_webapp_base0/spec/rubocop_spec.rb +0 -3
  77. data/sub/avm-eac_webapp_base0/spec/spec_helper.rb +0 -4
  78. data/sub/avm-eac_webapp_base0/template/avm/eac_webapp_base0/apache_host/no_ssl.conf +0 -11
  79. data/sub/avm-eac_webapp_base0/template/avm/eac_webapp_base0/apache_path/default.conf +0 -9
  80. data/sub/eac_cli/Gemfile +0 -5
  81. data/sub/eac_cli/eac_cli.gemspec +0 -20
  82. data/sub/eac_cli/lib/eac_cli/config/entry/options.rb +0 -57
  83. data/sub/eac_cli/lib/eac_cli/config/entry/undefined.rb +0 -26
  84. data/sub/eac_cli/lib/eac_cli/config/entry.rb +0 -50
  85. data/sub/eac_cli/lib/eac_cli/config.rb +0 -21
  86. data/sub/eac_cli/lib/eac_cli/core_ext.rb +0 -6
  87. data/sub/eac_cli/lib/eac_cli/default_runner.rb +0 -14
  88. data/sub/eac_cli/lib/eac_cli/definition/alternative.rb +0 -80
  89. data/sub/eac_cli/lib/eac_cli/definition/argument_option.rb +0 -21
  90. data/sub/eac_cli/lib/eac_cli/definition/base_option/initialize_args_parser.rb +0 -47
  91. data/sub/eac_cli/lib/eac_cli/definition/base_option.rb +0 -66
  92. data/sub/eac_cli/lib/eac_cli/definition/boolean_option.rb +0 -27
  93. data/sub/eac_cli/lib/eac_cli/definition/positional_argument.rb +0 -61
  94. data/sub/eac_cli/lib/eac_cli/definition.rb +0 -95
  95. data/sub/eac_cli/lib/eac_cli/enum.rb +0 -45
  96. data/sub/eac_cli/lib/eac_cli/old_configs/entry_reader.rb +0 -80
  97. data/sub/eac_cli/lib/eac_cli/old_configs/password_entry_reader.rb +0 -16
  98. data/sub/eac_cli/lib/eac_cli/old_configs/read_entry_options.rb +0 -44
  99. data/sub/eac_cli/lib/eac_cli/old_configs/store_passwords_entry_reader.rb +0 -25
  100. data/sub/eac_cli/lib/eac_cli/old_configs.rb +0 -35
  101. data/sub/eac_cli/lib/eac_cli/parser/alternative/argv.rb +0 -17
  102. data/sub/eac_cli/lib/eac_cli/parser/alternative/double_dash.rb +0 -24
  103. data/sub/eac_cli/lib/eac_cli/parser/alternative/long_options.rb +0 -37
  104. data/sub/eac_cli/lib/eac_cli/parser/alternative/option_argument.rb +0 -29
  105. data/sub/eac_cli/lib/eac_cli/parser/alternative/options.rb +0 -29
  106. data/sub/eac_cli/lib/eac_cli/parser/alternative/positionals.rb +0 -30
  107. data/sub/eac_cli/lib/eac_cli/parser/alternative/short_options.rb +0 -47
  108. data/sub/eac_cli/lib/eac_cli/parser/alternative.rb +0 -92
  109. data/sub/eac_cli/lib/eac_cli/parser/collector.rb +0 -46
  110. data/sub/eac_cli/lib/eac_cli/parser/error.rb +0 -15
  111. data/sub/eac_cli/lib/eac_cli/parser.rb +0 -34
  112. data/sub/eac_cli/lib/eac_cli/patches/object/runner_with.rb +0 -26
  113. data/sub/eac_cli/lib/eac_cli/patches/object.rb +0 -5
  114. data/sub/eac_cli/lib/eac_cli/patches.rb +0 -4
  115. data/sub/eac_cli/lib/eac_cli/rspec/setup.rb +0 -42
  116. data/sub/eac_cli/lib/eac_cli/rspec.rb +0 -9
  117. data/sub/eac_cli/lib/eac_cli/runner/after_class_methods.rb +0 -33
  118. data/sub/eac_cli/lib/eac_cli/runner/class_runner.rb +0 -50
  119. data/sub/eac_cli/lib/eac_cli/runner/context.rb +0 -40
  120. data/sub/eac_cli/lib/eac_cli/runner/exit.rb +0 -13
  121. data/sub/eac_cli/lib/eac_cli/runner/instance_methods.rb +0 -43
  122. data/sub/eac_cli/lib/eac_cli/runner.rb +0 -49
  123. data/sub/eac_cli/lib/eac_cli/runner_with/help/builder/alternative.rb +0 -63
  124. data/sub/eac_cli/lib/eac_cli/runner_with/help/builder.rb +0 -82
  125. data/sub/eac_cli/lib/eac_cli/runner_with/help.rb +0 -41
  126. data/sub/eac_cli/lib/eac_cli/runner_with/subcommands/definition_concern.rb +0 -10
  127. data/sub/eac_cli/lib/eac_cli/runner_with/subcommands.rb +0 -119
  128. data/sub/eac_cli/lib/eac_cli/runner_with.rb +0 -9
  129. data/sub/eac_cli/lib/eac_cli/runner_with_set.rb +0 -50
  130. data/sub/eac_cli/lib/eac_cli/speaker/constants.rb +0 -13
  131. data/sub/eac_cli/lib/eac_cli/speaker/list.rb +0 -61
  132. data/sub/eac_cli/lib/eac_cli/speaker/options.rb +0 -38
  133. data/sub/eac_cli/lib/eac_cli/speaker.rb +0 -126
  134. data/sub/eac_cli/lib/eac_cli/version.rb +0 -5
  135. data/sub/eac_cli/lib/eac_cli.rb +0 -7
  136. data/sub/eac_cli/spec/lib/eac_cli/definition/alternative_spec.rb +0 -18
  137. data/sub/eac_cli/spec/lib/eac_cli/old_configs_spec.rb +0 -14
  138. data/sub/eac_cli/spec/lib/eac_cli/parser/alternative_spec.rb +0 -140
  139. data/sub/eac_cli/spec/lib/eac_cli/runner_spec.rb +0 -129
  140. data/sub/eac_cli/spec/lib/eac_cli/runner_with/help_spec.rb +0 -51
  141. data/sub/eac_cli/spec/lib/eac_cli/runner_with/subcommands_spec.rb +0 -88
  142. data/sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb +0 -32
  143. data/sub/eac_cli/spec/rubocop_spec.rb +0 -3
  144. data/sub/eac_cli/spec/spec_helper.rb +0 -4
  145. data/sub/eac_fs/Gemfile +0 -5
  146. data/sub/eac_fs/eac_fs.gemspec +0 -20
  147. data/sub/eac_fs/lib/eac_fs/cached_download.rb +0 -39
  148. data/sub/eac_fs/lib/eac_fs/contexts.rb +0 -21
  149. data/sub/eac_fs/lib/eac_fs/file_info.rb +0 -29
  150. data/sub/eac_fs/lib/eac_fs/logs/file.rb +0 -56
  151. data/sub/eac_fs/lib/eac_fs/logs.rb +0 -64
  152. data/sub/eac_fs/lib/eac_fs/patches/module/fs_cache.rb +0 -15
  153. data/sub/eac_fs/lib/eac_fs/patches/module.rb +0 -4
  154. data/sub/eac_fs/lib/eac_fs/patches/object/fs_cache.rb +0 -32
  155. data/sub/eac_fs/lib/eac_fs/patches/object.rb +0 -4
  156. data/sub/eac_fs/lib/eac_fs/patches/pathname/info.rb +0 -12
  157. data/sub/eac_fs/lib/eac_fs/patches/pathname.rb +0 -4
  158. data/sub/eac_fs/lib/eac_fs/patches.rb +0 -4
  159. data/sub/eac_fs/lib/eac_fs/storage_tree.rb +0 -62
  160. data/sub/eac_fs/lib/eac_fs/traversable.rb +0 -45
  161. data/sub/eac_fs/lib/eac_fs/traverser.rb +0 -76
  162. data/sub/eac_fs/lib/eac_fs/version.rb +0 -5
  163. data/sub/eac_fs/lib/eac_fs.rb +0 -7
  164. data/sub/eac_fs/spec/lib/eac_fs/storage_tree_spec.rb +0 -32
  165. data/sub/eac_fs/spec/rubocop_spec.rb +0 -3
  166. data/sub/eac_fs/spec/spec_helper.rb +0 -4
  167. data/sub/eac_ruby_utils/Gemfile +0 -16
  168. data/sub/eac_ruby_utils/MIT-LICENCE +0 -16
  169. data/sub/eac_ruby_utils/README.rdoc +0 -3
  170. data/sub/eac_ruby_utils/eac_ruby_utils.gemspec +0 -23
  171. data/sub/eac_ruby_utils/lib/eac_ruby_utils/abstract_methods.rb +0 -68
  172. data/sub/eac_ruby_utils/lib/eac_ruby_utils/arguments_consumer.rb +0 -81
  173. data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit.rb +0 -46
  174. data/sub/eac_ruby_utils/lib/eac_ruby_utils/bit_array.rb +0 -81
  175. data/sub/eac_ruby_utils/lib/eac_ruby_utils/blank_not_blank.rb +0 -19
  176. data/sub/eac_ruby_utils/lib/eac_ruby_utils/boolean.rb +0 -31
  177. data/sub/eac_ruby_utils/lib/eac_ruby_utils/by_reference.rb +0 -23
  178. data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte.rb +0 -105
  179. data/sub/eac_ruby_utils/lib/eac_ruby_utils/byte_array.rb +0 -36
  180. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/class_setup.rb +0 -52
  181. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern/module_setup.rb +0 -41
  182. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +0 -20
  183. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/class_initialize.rb +0 -29
  184. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/instance_initialize.rb +0 -53
  185. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor/super_args.rb +0 -54
  186. data/sub/eac_ruby_utils/lib/eac_ruby_utils/common_constructor.rb +0 -89
  187. data/sub/eac_ruby_utils/lib/eac_ruby_utils/compact.rb +0 -22
  188. data/sub/eac_ruby_utils/lib/eac_ruby_utils/compare_by.rb +0 -28
  189. data/sub/eac_ruby_utils/lib/eac_ruby_utils/context.rb +0 -33
  190. data/sub/eac_ruby_utils/lib/eac_ruby_utils/contextualizable.rb +0 -21
  191. data/sub/eac_ruby_utils/lib/eac_ruby_utils/core_ext.rb +0 -7
  192. data/sub/eac_ruby_utils/lib/eac_ruby_utils/custom_format.rb +0 -53
  193. data/sub/eac_ruby_utils/lib/eac_ruby_utils/enum.rb +0 -102
  194. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/base_env.rb +0 -28
  195. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/concat.rb +0 -33
  196. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/envvars.rb +0 -24
  197. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/extra_options.rb +0 -33
  198. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +0 -172
  199. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/executable.rb +0 -81
  200. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/file.rb +0 -22
  201. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/local_env.rb +0 -17
  202. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/process.rb +0 -27
  203. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/spawn.rb +0 -32
  204. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/dasho_options.rb +0 -53
  205. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/identity_file.rb +0 -25
  206. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/quiet.rb +0 -24
  207. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env/terminal.rb +0 -34
  208. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/ssh_env.rb +0 -75
  209. data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs.rb +0 -23
  210. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/clearable_directory.rb +0 -57
  211. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/extname.rb +0 -30
  212. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/directory.rb +0 -16
  213. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp/file.rb +0 -34
  214. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs/temp.rb +0 -52
  215. data/sub/eac_ruby_utils/lib/eac_ruby_utils/fs.rb +0 -9
  216. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry/gem.rb +0 -79
  217. data/sub/eac_ruby_utils/lib/eac_ruby_utils/gems_registry.rb +0 -35
  218. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/array_accessor.rb +0 -32
  219. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/base_accessor.rb +0 -23
  220. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/boolean_accessor.rb +0 -16
  221. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/class_methods.rb +0 -20
  222. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/common_accessor.rb +0 -30
  223. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/hash_accessor.rb +0 -46
  224. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable/instance_methods.rb +0 -21
  225. data/sub/eac_ruby_utils/lib/eac_ruby_utils/immutable.rb +0 -15
  226. data/sub/eac_ruby_utils/lib/eac_ruby_utils/inflector.rb +0 -29
  227. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/class_methods.rb +0 -14
  228. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/instance_methods.rb +0 -30
  229. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/integer_list.rb +0 -23
  230. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/list.rb +0 -111
  231. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/lists.rb +0 -59
  232. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/string_list.rb +0 -19
  233. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/symbol_list.rb +0 -19
  234. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable/value.rb +0 -49
  235. data/sub/eac_ruby_utils/lib/eac_ruby_utils/listable.rb +0 -17
  236. data/sub/eac_ruby_utils/lib/eac_ruby_utils/local_time_zone.rb +0 -48
  237. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_all_gems.rb +0 -4
  238. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/from_gem.rb +0 -47
  239. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales/module_i18n_translate.rb +0 -74
  240. data/sub/eac_ruby_utils/lib/eac_ruby_utils/locales.rb +0 -9
  241. data/sub/eac_ruby_utils/lib/eac_ruby_utils/method_class.rb +0 -35
  242. data/sub/eac_ruby_utils/lib/eac_ruby_utils/options_consumer.rb +0 -62
  243. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patch.rb +0 -11
  244. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/abstract.rb +0 -9
  245. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/common_constructor.rb +0 -9
  246. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/self_included_modules.rb +0 -7
  247. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class/settings_provider.rb +0 -10
  248. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/class.rb +0 -4
  249. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable/boolean_combinations.rb +0 -45
  250. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerable.rb +0 -4
  251. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/current.rb +0 -9
  252. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator/stopped.rb +0 -14
  253. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/enumerator.rb +0 -4
  254. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/options_consumer.rb +0 -10
  255. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/sym_keys_hash.rb +0 -10
  256. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash/to_struct.rb +0 -10
  257. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/hash.rb +0 -5
  258. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel/nyi.rb +0 -10
  259. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/kernel.rb +0 -4
  260. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/abstract_methods.rb +0 -10
  261. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/common_concern.rb +0 -9
  262. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/compare_by.rb +0 -9
  263. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/context.rb +0 -11
  264. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/i18n_translate.rb +0 -9
  265. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/immutable.rb +0 -10
  266. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/listable.rb +0 -10
  267. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/method_class.rb +0 -9
  268. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/patch.rb +0 -9
  269. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/require_sub.rb +0 -9
  270. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/simple_cache.rb +0 -10
  271. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module/speaker.rb +0 -9
  272. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/module.rb +0 -4
  273. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/asserts.rb +0 -25
  274. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/call_if_proc.rb +0 -11
  275. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/compact.rb +0 -20
  276. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/debug.rb +0 -23
  277. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/i18n_translate.rb +0 -13
  278. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_nil.rb +0 -17
  279. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_present.rb +0 -19
  280. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/if_respond.rb +0 -22
  281. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_pathname.rb +0 -15
  282. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object/to_uri.rb +0 -15
  283. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/object.rb +0 -5
  284. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_noext.rb +0 -10
  285. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/basename_sub.rb +0 -9
  286. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/if_exist.rb +0 -10
  287. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/mkpath_s.rb +0 -12
  288. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/parent_n.rb +0 -11
  289. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/readlink_r.rb +0 -11
  290. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname/reqdir_glob.rb +0 -13
  291. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/pathname.rb +0 -4
  292. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/if_match.rb +0 -16
  293. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp/to_parser.rb +0 -10
  294. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/regexp.rb +0 -4
  295. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/delimited.rb +0 -16
  296. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string/inflector.rb +0 -11
  297. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/string.rb +0 -4
  298. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time/required_zone.rb +0 -11
  299. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches/time.rb +0 -4
  300. data/sub/eac_ruby_utils/lib/eac_ruby_utils/patches.rb +0 -4
  301. data/sub/eac_ruby_utils/lib/eac_ruby_utils/recursive_builder.rb +0 -51
  302. data/sub/eac_ruby_utils/lib/eac_ruby_utils/regexp_parser.rb +0 -34
  303. data/sub/eac_ruby_utils/lib/eac_ruby_utils/require_sub.rb +0 -134
  304. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/default_setup.rb +0 -20
  305. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/conditionals.rb +0 -17
  306. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb +0 -12
  307. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup_manager.rb +0 -49
  308. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/stub_speaker.rb +0 -39
  309. data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec.rb +0 -9
  310. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/command.rb +0 -32
  311. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby/on_clean_environment.rb +0 -26
  312. data/sub/eac_ruby_utils/lib/eac_ruby_utils/ruby.rb +0 -9
  313. data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider/setting_value.rb +0 -69
  314. data/sub/eac_ruby_utils/lib/eac_ruby_utils/settings_provider.rb +0 -46
  315. data/sub/eac_ruby_utils/lib/eac_ruby_utils/simple_cache.rb +0 -77
  316. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/receiver.rb +0 -64
  317. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker/sender.rb +0 -32
  318. data/sub/eac_ruby_utils/lib/eac_ruby_utils/speaker.rb +0 -16
  319. data/sub/eac_ruby_utils/lib/eac_ruby_utils/string_delimited.rb +0 -70
  320. data/sub/eac_ruby_utils/lib/eac_ruby_utils/struct.rb +0 -63
  321. data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +0 -5
  322. data/sub/eac_ruby_utils/lib/eac_ruby_utils/yaml.rb +0 -105
  323. data/sub/eac_ruby_utils/lib/eac_ruby_utils.rb +0 -6
  324. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/abstract_methods_spec.rb +0 -28
  325. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/arguments_consumer_spec.rb +0 -17
  326. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/bit_array_spec.rb +0 -22
  327. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/blank_not_blank_spec.rb +0 -16
  328. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/byte_spec.rb +0 -54
  329. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_concern_spec.rb +0 -65
  330. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/common_constructor_spec.rb +0 -125
  331. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compact_spec.rb +0 -20
  332. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/compare_by_spec.rb +0 -38
  333. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/custom_format_spec.rb +0 -60
  334. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/enum_spec.rb +0 -43
  335. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/executable_spec.rb +0 -37
  336. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/envs/ssh_env_spec.rb +0 -25
  337. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/extname_spec.rb +0 -18
  338. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp/directory_spec.rb +0 -12
  339. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/fs/temp_spec.rb +0 -52
  340. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/inflector_spec.rb +0 -16
  341. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/listable_spec.rb +0 -275
  342. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/local_time_zone_spec.rb +0 -17
  343. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/method_class_spec.rb +0 -46
  344. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/options_consumer_spec.rb +0 -80
  345. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/abstract_spec.rb +0 -25
  346. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/class/self_included_modules_spec.rb +0 -30
  347. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerable/boolean_combinations_spec.rb +0 -39
  348. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/current_spec.rb +0 -26
  349. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/enumerator/stopped_spec.rb +0 -32
  350. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/options_consumer_spec.rb +0 -17
  351. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/hash/sym_keys_hash_spec.rb +0 -13
  352. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/compare_by_spec.rb +0 -36
  353. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/listable_spec.rb +0 -15
  354. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/method_class_spec.rb +0 -20
  355. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/simple_cache_spec.rb +0 -15
  356. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/module/speaker_spec.rb +0 -13
  357. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/call_if_proc_spec.rb +0 -11
  358. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/compact_spec.rb +0 -20
  359. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/if_present_spec.rb +0 -13
  360. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/object/template_spec_files/path/my_stub_with_template +0 -1
  361. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_noext_spec.rb +0 -26
  362. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/basename_sub_spec.rb +0 -17
  363. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/pathname/parent_n_spec.rb +0 -33
  364. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/patches/string/delimited_spec.rb +0 -34
  365. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/recursive_builder_spec.rb +0 -65
  366. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_module_a.rb +0 -6
  367. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec/stubbed_not_module.rb +0 -6
  368. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/require_sub_spec.rb +0 -19
  369. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/ruby_spec.rb +0 -22
  370. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/settings_provider_spec.rb +0 -57
  371. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/simple_cache_spec.rb +0 -129
  372. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/struct_spec.rb +0 -57
  373. data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/yaml_spec.rb +0 -75
  374. data/sub/eac_ruby_utils/spec/locales/pt-BR.yml +0 -58
  375. data/sub/eac_ruby_utils/spec/rubocop_check_spec.rb +0 -3
  376. data/sub/eac_ruby_utils/spec/spec_helper.rb +0 -15
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- class Context
5
- delegate :any?, to: :stack
6
-
7
- def current
8
- optional_current || raise('No elements in context')
9
- end
10
-
11
- def optional_current
12
- stack.last
13
- end
14
-
15
- delegate :pop, to: :stack
16
- delegate :push, to: :stack
17
-
18
- def on(obj)
19
- push(obj)
20
- begin
21
- yield
22
- ensure
23
- pop
24
- end
25
- end
26
-
27
- private
28
-
29
- def stack
30
- @stack ||= []
31
- end
32
- end
33
- end
@@ -1,21 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/context'
4
-
5
- module EacRubyUtils
6
- module Contextualizable
7
- common_concern
8
-
9
- module ClassMethods
10
- def context
11
- @context ||= ::EacRubyUtils::Context.new
12
- end
13
- end
14
-
15
- module InstanceMethods
16
- def context
17
- self.class.context
18
- end
19
- end
20
- end
21
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/locales/from_all_gems'
4
- require 'eac_ruby_utils/patches'
5
- require 'active_support/dependencies/autoload'
6
- require 'active_support/core_ext'
7
- require 'active_support/json'
@@ -1,53 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- # A formatter like [String.sprintf].
5
- class CustomFormat
6
- TYPE_PATTERN = /[a-zA-Z]/.freeze
7
- SEQUENCE_PATTERN = /(?<!%)%(#{TYPE_PATTERN})/.freeze
8
-
9
- attr_reader :mapping
10
-
11
- def initialize(mapping)
12
- @mapping = mapping.transform_keys(&:to_sym).freeze
13
- end
14
-
15
- def format(string)
16
- ::EacRubyUtils::CustomFormat::String.new(self, string)
17
- end
18
-
19
- class String
20
- attr_reader :format, :string
21
-
22
- def initialize(format, string)
23
- @format = format
24
- @string = string
25
- end
26
-
27
- def mapping
28
- @mapping ||= format.mapping.select do |k, _v|
29
- sequences.include?(k)
30
- end
31
- end
32
-
33
- def sequences
34
- @sequences ||= string.scan(SEQUENCE_PATTERN).map(&:first).uniq.map(&:to_sym)
35
- end
36
-
37
- def source_object_value(object, method)
38
- return object.send(method) if object.respond_to?(method)
39
- return object[method] if object.respond_to?('[]')
40
-
41
- raise ::ArgumentError, "Methods \"#{method}\" or \"[]\" not found for #{object}"
42
- end
43
-
44
- def with(source_object)
45
- r = string
46
- mapping.each do |key, method|
47
- r = r.gsub(/%#{::Regexp.quote(key)}/, source_object_value(source_object, method).to_s)
48
- end
49
- r.gsub('%%', '%')
50
- end
51
- end
52
- end
53
- end
@@ -1,102 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/inflector'
4
-
5
- module EacRubyUtils
6
- # Similar to Java's enum type (https://docs.oracle.com/javase/tutorial/java/javaOO/enum.html).
7
- class Enum
8
- class << self
9
- def enum(key, *args, &block)
10
- value = Value.new(self, key, args, &block)
11
- raise ::ArgumentError, "#{self} already has a value with key=#{value.key}" if
12
- value_set.include?(value)
13
-
14
- value_set << value.apply
15
-
16
- self
17
- end
18
-
19
- def values
20
- value_set.map(&:value)
21
- end
22
-
23
- private
24
-
25
- def value_set
26
- @value_set ||= []
27
- end
28
- end
29
-
30
- attr_reader :key
31
-
32
- protected
33
-
34
- def initialize(key)
35
- @key = key
36
- end
37
-
38
- class Value
39
- include ::Comparable
40
-
41
- attr_reader :klass, :key, :args, :block
42
-
43
- def initialize(klass, key, args, &block)
44
- @klass = klass
45
- @key = ::EacRubyUtils::Inflector.variableize(key.to_s).to_sym
46
- @args = args
47
- @block = block
48
- end
49
-
50
- def <=>(other)
51
- key <=> other.key
52
- end
53
-
54
- def apply
55
- define_constant
56
- define_class_method
57
-
58
- self
59
- end
60
-
61
- # @return [String]
62
- def class_method_name
63
- key.to_s
64
- end
65
-
66
- # @return [String]
67
- def constant_name
68
- class_method_name.upcase
69
- end
70
-
71
- def value
72
- @value ||= uncached_value
73
- end
74
-
75
- private
76
-
77
- def define_class_method
78
- the_value = self
79
- klass.define_singleton_method(class_method_name) { the_value.value }
80
- end
81
-
82
- def define_constant
83
- klass.const_set(constant_name, value)
84
- end
85
-
86
- def uncached_value
87
- klass.new(key, *value_args)
88
- end
89
-
90
- def value_args
91
- r = if block
92
- block.call
93
- elsif args.count == 1 && args.first.is_a?(::Enumerable)
94
- args.first
95
- else
96
- args
97
- end
98
- r.is_a?(::Enumerable) ? r : [r]
99
- end
100
- end
101
- end
102
- end
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/envs/command'
4
- require 'eac_ruby_utils/envs/executable'
5
- require 'eac_ruby_utils/envs/file'
6
-
7
- module EacRubyUtils
8
- module Envs
9
- class BaseEnv
10
- def command(*args)
11
- ::EacRubyUtils::Envs::Command.new(self, args)
12
- end
13
-
14
- # <b>DEPRECATED:</b> Please use <tt>file(file).exist?</tt> instead.
15
- def file_exist?(file)
16
- self.file(file).exist?
17
- end
18
-
19
- def executable(*executable_new_args)
20
- ::EacRubyUtils::Envs::Executable.new(self, *executable_new_args)
21
- end
22
-
23
- def file(path)
24
- ::EacRubyUtils::Envs::File.new(self, path)
25
- end
26
- end
27
- end
28
- end
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/struct'
4
-
5
- module EacRubyUtils
6
- module Envs
7
- class Command
8
- module Concat
9
- def concat(operator, other_command)
10
- duplicate_by_extra_options(concat: ::EacRubyUtils::Struct.new(
11
- operator: operator, command: other_command
12
- ))
13
- end
14
-
15
- def or(other_command)
16
- concat('||', other_command)
17
- end
18
-
19
- def pipe(other_command)
20
- concat('|', other_command)
21
- end
22
-
23
- private
24
-
25
- def append_concat(command)
26
- extra_options[:concat].if_present(command) do |v|
27
- "#{command} #{v.operator} #{v.command.command}"
28
- end
29
- end
30
- end
31
- end
32
- end
33
- end
@@ -1,24 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- module Envs
5
- class Command
6
- module Envvars
7
- def envvar(name, value)
8
- duplicate_by_extra_options(envvars: envvars.merge(name => value))
9
- end
10
-
11
- private
12
-
13
- def append_envvars(command)
14
- e = envvars.map { |k, v| "#{Shellwords.escape(k)}=#{Shellwords.escape(v)}" }.join(' ')
15
- e.present? ? "#{e} #{command}" : command
16
- end
17
-
18
- def envvars
19
- extra_options[:envvars] ||= {}.with_indifferent_access
20
- end
21
- end
22
- end
23
- end
24
- end
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'active_support/core_ext/hash/indifferent_access'
4
- require 'active_support/core_ext/object/blank'
5
- require 'shellwords'
6
-
7
- module EacRubyUtils
8
- module Envs
9
- class Command
10
- module ExtraOptions
11
- def chdir(dir)
12
- duplicate_by_extra_options(chdir: dir)
13
- end
14
-
15
- def status_result(status_code, result)
16
- duplicate_by_extra_options(status_results: status_results.merge(status_code => result))
17
- end
18
-
19
- private
20
-
21
- attr_reader :extra_options
22
-
23
- def status_results
24
- extra_options[:status_results] ||= {}.with_indifferent_access
25
- end
26
-
27
- def append_chdir(command)
28
- extra_options[:chdir].present? ? "(cd '#{extra_options[:chdir]}' ; #{command} )" : command
29
- end
30
- end
31
- end
32
- end
33
- end
@@ -1,172 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/core_ext'
4
- require 'eac_ruby_utils/envs/process'
5
- require 'eac_ruby_utils/envs/spawn'
6
- require 'pp'
7
- require 'shellwords'
8
-
9
- module EacRubyUtils
10
- module Envs
11
- class Command
12
- require_sub __FILE__, include_modules: true
13
-
14
- def initialize(env, command, extra_options = {})
15
- @env = env
16
- @extra_options = extra_options.with_indifferent_access
17
- if command.count == 1 && command.first.is_a?(Array)
18
- @command = command.first
19
- elsif command.is_a?(Array)
20
- @command = command
21
- else
22
- raise "Invalid argument command: #{command}|#{command.class}"
23
- end
24
- end
25
-
26
- def args
27
- @command
28
- end
29
-
30
- def append(args)
31
- duplicate_by_command(@command + args)
32
- end
33
-
34
- def prepend(args)
35
- duplicate_by_command(args + @command)
36
- end
37
-
38
- def to_s
39
- "#{@command} [ENV: #{@env}]"
40
- end
41
-
42
- def command(options = {})
43
- c = @command
44
- c = c.map { |x| escape(x) }.join(' ') if c.is_a?(Enumerable)
45
- append_command_options(
46
- @env.command_line(
47
- append_chdir(append_concat(append_envvars(c)))
48
- ),
49
- options
50
- )
51
- end
52
-
53
- def execute!(options = {})
54
- options[:exit_outputs] = status_results.merge(options[:exit_outputs].presence || {})
55
- er = ExecuteResult.new(execute(options), options)
56
- return er.result if er.success?
57
-
58
- raise "execute! command failed: #{self}\n#{er.r.pretty_inspect}"
59
- end
60
-
61
- def execute(options = {})
62
- c = command(options)
63
- debug_print("BEFORE: #{c}")
64
- t1 = Time.now
65
- r = ::EacRubyUtils::Envs::Process.new(c).to_h
66
- i = Time.now - t1
67
- debug_print("AFTER [#{i}]: #{c}")
68
- r
69
- end
70
-
71
- def spawn(options = {})
72
- c = command(options)
73
- debug_print("SPAWN: #{c}")
74
- ::EacRubyUtils::Envs::Spawn.new(c)
75
- end
76
-
77
- def system!(options = {})
78
- return if system(options)
79
-
80
- raise "system! command failed: #{self}"
81
- end
82
-
83
- def system(options = {})
84
- c = command(options)
85
- debug_print(c)
86
- Kernel.system(c)
87
- end
88
-
89
- protected
90
-
91
- def duplicate(command, extra_options)
92
- self.class.new(@env, command, extra_options)
93
- end
94
-
95
- private
96
-
97
- attr_reader :extra_options
98
-
99
- def duplicate_by_command(new_command)
100
- duplicate(new_command, @extra_options)
101
- end
102
-
103
- def duplicate_by_extra_options(set_extra_options)
104
- duplicate(@command, @extra_options.merge(set_extra_options))
105
- end
106
-
107
- def debug?
108
- ENV['DEBUG'].to_s.strip != ''
109
- end
110
-
111
- # Print a message if debugging is enabled.
112
- def debug_print(message)
113
- message = message.to_s
114
- puts message.if_respond(:light_red, message) if debug?
115
- end
116
-
117
- def append_command_options(command, options)
118
- command = options[:input].command + ' | ' + command if options[:input]
119
- if options[:input_file]
120
- command = "cat #{Shellwords.escape(options[:input_file])}" \
121
- " | #{command}"
122
- end
123
- command += ' > ' + Shellwords.escape(options[:output_file]) if options[:output_file]
124
- command
125
- end
126
-
127
- def escape(arg)
128
- arg = arg.to_s
129
- m = /^\@ESC_(.+)$/.match(arg)
130
- m ? m[1] : Shellwords.escape(arg)
131
- end
132
-
133
- class ExecuteResult
134
- attr_reader :r, :options
135
-
136
- def initialize(result, options)
137
- @r = result
138
- @options = options
139
- end
140
-
141
- def result
142
- return exit_code_zero_result if exit_code_zero?
143
- return expected_error_result if expected_error?
144
-
145
- raise 'Failed!'
146
- end
147
-
148
- def success?
149
- exit_code_zero? || expected_error?
150
- end
151
-
152
- private
153
-
154
- def exit_code_zero?
155
- r[:exit_code]&.zero?
156
- end
157
-
158
- def exit_code_zero_result
159
- r[options[:output] || :stdout]
160
- end
161
-
162
- def expected_error_result
163
- options[:exit_outputs][r[:exit_code]]
164
- end
165
-
166
- def expected_error?
167
- options[:exit_outputs].is_a?(Hash) && options[:exit_outputs].key?(r[:exit_code])
168
- end
169
- end
170
- end
171
- end
172
- end
@@ -1,81 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/listable'
4
- require 'eac_ruby_utils/simple_cache'
5
-
6
- module EacRubyUtils
7
- module Envs
8
- class Executable
9
- include ::EacRubyUtils::Listable
10
- include ::EacRubyUtils::SimpleCache
11
-
12
- lists.add_symbol :option, :check_args, :auto_validate
13
-
14
- DEFAULT_AUTO_VALIDATE = true
15
-
16
- attr_reader :env, :name, :options
17
-
18
- def initialize(env, name, *check_args)
19
- @env = env
20
- @name = name
21
- self.options = self.class.lists.option.hash_keys_validate!(check_args.extract_options!)
22
- options[OPTION_CHECK_ARGS] = check_args unless options.key?(OPTION_CHECK_ARGS)
23
- options.freeze
24
- end
25
-
26
- def auto_validate?
27
- options.key?(OPTION_AUTO_VALIDATE) ? options[OPTION_AUTO_VALIDATE] : DEFAULT_AUTO_VALIDATE
28
- end
29
-
30
- def check_args
31
- options[OPTION_CHECK_ARGS]
32
- end
33
-
34
- def exist?
35
- exist
36
- end
37
-
38
- def validate
39
- return nil if exist?
40
-
41
- "Program \"#{::Shellwords.join(executable_args)}\" not found in environment #{env}"
42
- end
43
-
44
- def validate!
45
- message = validate
46
-
47
- raise ProgramNotFoundError, message if message
48
- end
49
-
50
- def command(*command_args)
51
- validate! if auto_validate?
52
- env.command(*executable_args, *command_args)
53
- end
54
-
55
- def executable_args
56
- executable_args_from_envvar || [name]
57
- end
58
-
59
- def executable_args_envvar
60
- "#{name}_command".variableize.upcase
61
- end
62
-
63
- def executable_args_from_envvar
64
- ENV[executable_args_envvar].if_present { |v| ::Shellwords.split(v) }
65
- end
66
-
67
- private
68
-
69
- attr_writer :options
70
-
71
- def exist_uncached
72
- env.command(*executable_args, *check_args).execute!
73
- true
74
- rescue Errno::ENOENT
75
- false
76
- end
77
-
78
- class ProgramNotFoundError < ::StandardError; end
79
- end
80
- end
81
- end
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- module Envs
5
- class File
6
- attr_reader :env, :path
7
-
8
- def initialize(env, path)
9
- @env = env
10
- @path = path
11
- end
12
-
13
- def exist?
14
- env.command('stat', path).execute[:exit_code].zero?
15
- end
16
-
17
- def read
18
- env.command('cat', path).execute!
19
- end
20
- end
21
- end
22
- end
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'eac_ruby_utils/envs/base_env'
4
-
5
- module EacRubyUtils
6
- module Envs
7
- class LocalEnv < ::EacRubyUtils::Envs::BaseEnv
8
- def to_s
9
- 'LOCAL'
10
- end
11
-
12
- def command_line(line)
13
- line
14
- end
15
- end
16
- end
17
- end
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'open3'
4
-
5
- module EacRubyUtils
6
- module Envs
7
- class Process
8
- EXIT_CODE_KEY = :exit_code
9
- ERR_KEY = :stderr
10
- OUT_KEY = :stdout
11
-
12
- def initialize(command)
13
- self.data = { command: command }
14
- data[OUT_KEY], data[ERR_KEY], data[EXIT_CODE_KEY] = Open3.capture3(command)
15
- data[EXIT_CODE_KEY] = data[EXIT_CODE_KEY].to_i
16
- end
17
-
18
- def to_h
19
- data.dup
20
- end
21
-
22
- private
23
-
24
- attr_accessor :data
25
- end
26
- end
27
- end
@@ -1,32 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EacRubyUtils
4
- module Envs
5
- class Spawn
6
- attr_reader :command, :pid
7
-
8
- def initialize(command)
9
- @command = command
10
- @pid = ::Process.spawn(command)
11
- end
12
-
13
- def kill(signal)
14
- ::Process.kill(signal, pid)
15
- end
16
-
17
- def kill_at_end(&block)
18
- block.call(self)
19
- ensure
20
- kill('KILL')
21
- end
22
-
23
- def to_h
24
- { command: command, pid: pid }
25
- end
26
-
27
- def wait
28
- ::Process.wait pid
29
- end
30
- end
31
- end
32
- end