eac_tools 0.117.2 → 0.117.3

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.
Files changed (398) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +35 -34
  3. data/eac_tools.gemspec +3 -3
  4. data/lib/eac_tools/version.rb +1 -1
  5. data/sub/avm/.gitrepo +7 -0
  6. data/sub/avm/avm.gemspec +28 -0
  7. data/sub/avm/lib/avm/application_scms/base.rb +37 -0
  8. data/sub/avm/lib/avm/application_stereotypes/base.rb +29 -0
  9. data/sub/avm/lib/avm/applications/base/auto_local_source_path.rb +22 -0
  10. data/sub/avm/lib/avm/applications/base/local_instance.rb +28 -0
  11. data/sub/avm/lib/avm/applications/base/local_source.rb +31 -0
  12. data/sub/avm/lib/avm/applications/base/naming.rb +26 -0
  13. data/sub/avm/lib/avm/applications/base/organization.rb +27 -0
  14. data/sub/avm/lib/avm/applications/base/publishing.rb +39 -0
  15. data/sub/avm/lib/avm/applications/base/scm.rb +24 -0
  16. data/sub/avm/lib/avm/applications/base/stereotype.rb +29 -0
  17. data/sub/avm/lib/avm/applications/base.rb +34 -0
  18. data/sub/avm/lib/avm/data/callbacks.rb +36 -0
  19. data/sub/avm/lib/avm/data/clearer.rb +17 -0
  20. data/sub/avm/lib/avm/data/dumper.rb +137 -0
  21. data/sub/avm/lib/avm/data/loader.rb +23 -0
  22. data/sub/avm/lib/avm/data/package/base_performer.rb +36 -0
  23. data/sub/avm/lib/avm/data/package/build_directory.rb +25 -0
  24. data/sub/avm/lib/avm/data/package/clear.rb +19 -0
  25. data/sub/avm/lib/avm/data/package/dump.rb +42 -0
  26. data/sub/avm/lib/avm/data/package/load.rb +33 -0
  27. data/sub/avm/lib/avm/data/package.rb +64 -0
  28. data/sub/avm/lib/avm/data/performer.rb +45 -0
  29. data/sub/avm/lib/avm/data/rotate.rb +106 -0
  30. data/sub/avm/lib/avm/data/unit.rb +44 -0
  31. data/sub/avm/lib/avm/data/unit_with_commands.rb +48 -0
  32. data/sub/avm/lib/avm/docker/container.rb +47 -0
  33. data/sub/avm/lib/avm/docker/image.rb +70 -0
  34. data/sub/avm/lib/avm/docker/runner.rb +129 -0
  35. data/sub/avm/lib/avm/entries/auto_values/entry.rb +36 -0
  36. data/sub/avm/lib/avm/entries/auto_values/uri_entry.rb +21 -0
  37. data/sub/avm/lib/avm/entries/base/inherited_entry_value.rb +42 -0
  38. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/default_value.rb +24 -0
  39. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/inherited_value.rb +35 -0
  40. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/url_entry_value.rb +27 -0
  41. data/sub/avm/lib/avm/entries/base/uri_component_entry_value.rb +40 -0
  42. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/component_factory.rb +40 -0
  43. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/generic_component.rb +59 -0
  44. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/path_component.rb +16 -0
  45. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/url_component.rb +22 -0
  46. data/sub/avm/lib/avm/entries/base/uri_components_entries_values.rb +23 -0
  47. data/sub/avm/lib/avm/entries/base.rb +53 -0
  48. data/sub/avm/lib/avm/entries/entry/no_context_entry.rb +21 -0
  49. data/sub/avm/lib/avm/entries/entry.rb +69 -0
  50. data/sub/avm/lib/avm/entries/jobs/base.rb +58 -0
  51. data/sub/avm/lib/avm/entries/jobs/variables_source/read_entry.rb +48 -0
  52. data/sub/avm/lib/avm/entries/jobs/variables_source.rb +13 -0
  53. data/sub/avm/lib/avm/entries/jobs/with_variables_source.rb +13 -0
  54. data/sub/avm/lib/avm/entries/keys_constants_set.rb +41 -0
  55. data/sub/avm/lib/avm/entries/uri_builder.rb +87 -0
  56. data/sub/avm/lib/avm/executables.rb +21 -0
  57. data/sub/avm/lib/avm/file_formats/base.rb +34 -0
  58. data/sub/avm/lib/avm/file_formats/file_result.rb +11 -0
  59. data/sub/avm/lib/avm/file_formats/search_formatter.rb +83 -0
  60. data/sub/avm/lib/avm/file_formats/unknown.rb +15 -0
  61. data/sub/avm/lib/avm/file_formats/utf8_assert.rb +72 -0
  62. data/sub/avm/lib/avm/files/appendable/file_content.rb +28 -0
  63. data/sub/avm/lib/avm/files/appendable/plain_directory.rb +27 -0
  64. data/sub/avm/lib/avm/files/appendable/resource_base.rb +17 -0
  65. data/sub/avm/lib/avm/files/appendable/tar_output_command.rb +27 -0
  66. data/sub/avm/lib/avm/files/appendable/templatized_directory.rb +36 -0
  67. data/sub/avm/lib/avm/files/appendable.rb +51 -0
  68. data/sub/avm/lib/avm/files/appender.rb +9 -0
  69. data/sub/avm/lib/avm/files/deploy.rb +70 -0
  70. data/sub/avm/lib/avm/files/text_replacer/gsub.rb +22 -0
  71. data/sub/avm/lib/avm/files/text_replacer.rb +29 -0
  72. data/sub/avm/lib/avm/instances/base/auto_values/data.rb +28 -0
  73. data/sub/avm/lib/avm/instances/base/auto_values/database.rb +60 -0
  74. data/sub/avm/lib/avm/instances/base/auto_values/mailer.rb +31 -0
  75. data/sub/avm/lib/avm/instances/base/auto_values/source.rb +16 -0
  76. data/sub/avm/lib/avm/instances/base/auto_values.rb +12 -0
  77. data/sub/avm/lib/avm/instances/base/dockerizable.rb +41 -0
  78. data/sub/avm/lib/avm/instances/base/entry_keys.rb +25 -0
  79. data/sub/avm/lib/avm/instances/base/install.rb +28 -0
  80. data/sub/avm/lib/avm/instances/base/processes.rb +25 -0
  81. data/sub/avm/lib/avm/instances/base/production.rb +33 -0
  82. data/sub/avm/lib/avm/instances/base/subcommand_parent.rb +23 -0
  83. data/sub/avm/lib/avm/instances/base/web.rb +15 -0
  84. data/sub/avm/lib/avm/instances/base.rb +70 -0
  85. data/sub/avm/lib/avm/instances/data/files_unit.rb +57 -0
  86. data/sub/avm/lib/avm/instances/data/loading_denied_error.rb +10 -0
  87. data/sub/avm/lib/avm/instances/data/package.rb +25 -0
  88. data/sub/avm/lib/avm/instances/data/unit.rb +36 -0
  89. data/sub/avm/lib/avm/instances/docker_image.rb +13 -0
  90. data/sub/avm/lib/avm/instances/entry_keys.rb +39 -0
  91. data/sub/avm/lib/avm/instances/ids.rb +28 -0
  92. data/sub/avm/lib/avm/instances/process.rb +29 -0
  93. data/sub/avm/lib/avm/instances/runner.rb +34 -0
  94. data/sub/avm/lib/avm/launcher/context/instance_collector.rb +44 -0
  95. data/sub/avm/lib/avm/launcher/context/instance_discovery/root_source_wrappers.rb +31 -0
  96. data/sub/avm/lib/avm/launcher/context/instance_discovery/root_sources.rb +48 -0
  97. data/sub/avm/lib/avm/launcher/context/instance_discovery/source_wrapper.rb +61 -0
  98. data/sub/avm/lib/avm/launcher/context/instance_discovery.rb +27 -0
  99. data/sub/avm/lib/avm/launcher/context/instance_manager/cached_instance.rb +34 -0
  100. data/sub/avm/lib/avm/launcher/context/instance_manager/cached_instances.rb +32 -0
  101. data/sub/avm/lib/avm/launcher/context/instance_manager.rb +74 -0
  102. data/sub/avm/lib/avm/launcher/context/settings.rb +51 -0
  103. data/sub/avm/lib/avm/launcher/context.rb +83 -0
  104. data/sub/avm/lib/avm/launcher/errors/base.rb +10 -0
  105. data/sub/avm/lib/avm/launcher/errors/non_project.rb +13 -0
  106. data/sub/avm/lib/avm/launcher/instances/base/cache.rb +43 -0
  107. data/sub/avm/lib/avm/launcher/instances/base/publishing.rb +53 -0
  108. data/sub/avm/lib/avm/launcher/instances/base.rb +77 -0
  109. data/sub/avm/lib/avm/launcher/instances/error.rb +10 -0
  110. data/sub/avm/lib/avm/launcher/instances/runner_helper.rb +43 -0
  111. data/sub/avm/lib/avm/launcher/instances/settings.rb +24 -0
  112. data/sub/avm/lib/avm/launcher/paths/logical.rb +78 -0
  113. data/sub/avm/lib/avm/launcher/paths/real.rb +44 -0
  114. data/sub/avm/lib/avm/launcher/project.rb +15 -0
  115. data/sub/avm/lib/avm/launcher/publish/base.rb +44 -0
  116. data/sub/avm/lib/avm/launcher/publish/check_result.rb +64 -0
  117. data/sub/avm/lib/avm/launcher/stereotype.rb +63 -0
  118. data/sub/avm/lib/avm/patches/eac_config/entry_path.rb +44 -0
  119. data/sub/avm/lib/avm/path_string.rb +27 -0
  120. data/sub/avm/lib/avm/registry/application_scms.rb +13 -0
  121. data/sub/avm/lib/avm/registry/application_stereotypes/build_available.rb +45 -0
  122. data/sub/avm/lib/avm/registry/application_stereotypes/stereotype_builder.rb +30 -0
  123. data/sub/avm/lib/avm/registry/application_stereotypes.rb +42 -0
  124. data/sub/avm/lib/avm/registry/applications.rb +35 -0
  125. data/sub/avm/lib/avm/registry/base.rb +26 -0
  126. data/sub/avm/lib/avm/registry/config_objects.rb +15 -0
  127. data/sub/avm/lib/avm/registry/detection_error.rb +8 -0
  128. data/sub/avm/lib/avm/registry/file_formats.rb +17 -0
  129. data/sub/avm/lib/avm/registry/from_gems.rb +67 -0
  130. data/sub/avm/lib/avm/registry/instances.rb +13 -0
  131. data/sub/avm/lib/avm/registry/launcher_stereotypes.rb +8 -0
  132. data/sub/avm/lib/avm/registry/runners.rb +8 -0
  133. data/sub/avm/lib/avm/registry/scms.rb +8 -0
  134. data/sub/avm/lib/avm/registry/source_generators.rb +14 -0
  135. data/sub/avm/lib/avm/registry/sources.rb +38 -0
  136. data/sub/avm/lib/avm/registry/with_path/cache.rb +28 -0
  137. data/sub/avm/lib/avm/registry/with_path.rb +44 -0
  138. data/sub/avm/lib/avm/registry.rb +31 -0
  139. data/sub/avm/lib/avm/result.rb +80 -0
  140. data/sub/avm/lib/avm/rspec/launcher_controller.rb +102 -0
  141. data/sub/avm/lib/avm/rspec/setup/launcher.rb +18 -0
  142. data/sub/avm/lib/avm/rspec/setup/source_generator.rb +20 -0
  143. data/sub/avm/lib/avm/rspec/setup.rb +32 -0
  144. data/sub/avm/lib/avm/rspec/shared_examples/avm_file_format_file_resource_name.rb +13 -0
  145. data/sub/avm/lib/avm/rspec/shared_examples/avm_file_formats_with_fixtures.rb +28 -0
  146. data/sub/avm/lib/avm/rspec/shared_examples/avm_source_generated.rb +27 -0
  147. data/sub/avm/lib/avm/rspec/shared_examples/entries_values.rb +19 -0
  148. data/sub/avm/lib/avm/rspec/shared_examples/in_avm_registry.rb +9 -0
  149. data/sub/avm/lib/avm/rspec/shared_examples/not_in_avm_registry.rb +12 -0
  150. data/sub/avm/lib/avm/rspec/shared_examples/with_config.rb +9 -0
  151. data/sub/avm/lib/avm/rspec/shared_examples/with_launcher.rb +13 -0
  152. data/sub/avm/lib/avm/runner_with/file_replacer.rb +28 -0
  153. data/sub/avm/lib/avm/runner_with/filesystem_renamer.rb +99 -0
  154. data/sub/avm/lib/avm/runner_with/filesystem_traverser.rb +49 -0
  155. data/sub/avm/lib/avm/runners/base.rb +25 -0
  156. data/sub/avm/lib/avm/scms/auto_commit/file_resource_name.rb +47 -0
  157. data/sub/avm/lib/avm/scms/auto_commit/for_file.rb +79 -0
  158. data/sub/avm/lib/avm/scms/auto_commit/rules/base.rb +37 -0
  159. data/sub/avm/lib/avm/scms/auto_commit/rules/last.rb +17 -0
  160. data/sub/avm/lib/avm/scms/auto_commit/rules/manual.rb +38 -0
  161. data/sub/avm/lib/avm/scms/auto_commit/rules/new.rb +21 -0
  162. data/sub/avm/lib/avm/scms/auto_commit/rules/nth.rb +29 -0
  163. data/sub/avm/lib/avm/scms/auto_commit/rules/unique.rb +19 -0
  164. data/sub/avm/lib/avm/scms/auto_commit/rules.rb +32 -0
  165. data/sub/avm/lib/avm/scms/base/branches.rb +20 -0
  166. data/sub/avm/lib/avm/scms/base/commits.rb +32 -0
  167. data/sub/avm/lib/avm/scms/base/milestones.rb +19 -0
  168. data/sub/avm/lib/avm/scms/base/remotes.rb +20 -0
  169. data/sub/avm/lib/avm/scms/base.rb +59 -0
  170. data/sub/avm/lib/avm/scms/branch.rb +24 -0
  171. data/sub/avm/lib/avm/scms/changed_file.rb +46 -0
  172. data/sub/avm/lib/avm/scms/commit.rb +64 -0
  173. data/sub/avm/lib/avm/scms/commit_info.rb +37 -0
  174. data/sub/avm/lib/avm/scms/inflector.rb +22 -0
  175. data/sub/avm/lib/avm/scms/interval.rb +16 -0
  176. data/sub/avm/lib/avm/scms/null/commit.rb +11 -0
  177. data/sub/avm/lib/avm/scms/null.rb +16 -0
  178. data/sub/avm/lib/avm/scms/remote.rb +9 -0
  179. data/sub/avm/lib/avm/self/docker_image.rb +11 -0
  180. data/sub/avm/lib/avm/self/instance/entry_keys.rb +12 -0
  181. data/sub/avm/lib/avm/self/instance.rb +27 -0
  182. data/sub/avm/lib/avm/source_generators/base.rb +69 -0
  183. data/sub/avm/lib/avm/source_generators/option.rb +11 -0
  184. data/sub/avm/lib/avm/source_generators/option_list.rb +29 -0
  185. data/sub/avm/lib/avm/source_generators/runner.rb +55 -0
  186. data/sub/avm/lib/avm/sources/auto_commit/for_file.rb +29 -0
  187. data/sub/avm/lib/avm/sources/base/application.rb +32 -0
  188. data/sub/avm/lib/avm/sources/base/configuration.rb +89 -0
  189. data/sub/avm/lib/avm/sources/base/instance.rb +13 -0
  190. data/sub/avm/lib/avm/sources/base/locale.rb +30 -0
  191. data/sub/avm/lib/avm/sources/base/organizational.rb +30 -0
  192. data/sub/avm/lib/avm/sources/base/parent.rb +26 -0
  193. data/sub/avm/lib/avm/sources/base/stereotype.rb +16 -0
  194. data/sub/avm/lib/avm/sources/base/sub/remove.rb +36 -0
  195. data/sub/avm/lib/avm/sources/base/sub.rb +23 -0
  196. data/sub/avm/lib/avm/sources/base/subs.rb +63 -0
  197. data/sub/avm/lib/avm/sources/base/subs_paths.rb +30 -0
  198. data/sub/avm/lib/avm/sources/base/testing.rb +67 -0
  199. data/sub/avm/lib/avm/sources/base/update.rb +65 -0
  200. data/sub/avm/lib/avm/sources/base/update_sub.rb +55 -0
  201. data/sub/avm/lib/avm/sources/base/update_subs.rb +17 -0
  202. data/sub/avm/lib/avm/sources/base/version_bump.rb +26 -0
  203. data/sub/avm/lib/avm/sources/base.rb +56 -0
  204. data/sub/avm/lib/avm/sources/change.rb +22 -0
  205. data/sub/avm/lib/avm/sources/configuration/rubocop.rb +26 -0
  206. data/sub/avm/lib/avm/sources/configuration.rb +57 -0
  207. data/sub/avm/lib/avm/sources/issues/deliver.rb +51 -0
  208. data/sub/avm/lib/avm/sources/runner.rb +38 -0
  209. data/sub/avm/lib/avm/sources/tests/builder.rb +94 -0
  210. data/sub/avm/lib/avm/sources/tests/performer.rb +32 -0
  211. data/sub/avm/lib/avm/sources/tests/result.rb +13 -0
  212. data/sub/avm/lib/avm/sources/tests/single.rb +71 -0
  213. data/sub/avm/lib/avm/sources/update_error.rb +8 -0
  214. data/sub/avm/lib/avm/sync.rb +90 -0
  215. data/sub/avm/lib/avm/version.rb +5 -0
  216. data/sub/avm/lib/avm/version_number.rb +45 -0
  217. data/sub/avm/lib/avm/with/application_stereotype.rb +29 -0
  218. data/sub/avm/lib/avm/with/extra_subcommands.rb +41 -0
  219. data/sub/avm/lib/avm.rb +11 -0
  220. data/sub/avm/locale/en.yml +6 -0
  221. data/sub/avm/locale/pt-BR.yml +6 -0
  222. data/sub/avm/spec/lib/avm/applications/base/entries_spec.rb +29 -0
  223. data/sub/avm/spec/lib/avm/applications/base/entries_spec_files/config.yml +12 -0
  224. data/sub/avm/spec/lib/avm/applications/base_spec.rb +21 -0
  225. data/sub/avm/spec/lib/avm/applications/base_spec_fixture.yml +3 -0
  226. data/sub/avm/spec/lib/avm/file_formats/base_spec.rb +9 -0
  227. data/sub/avm/spec/lib/avm/instances/base/entries_spec.rb +78 -0
  228. data/sub/avm/spec/lib/avm/instances/base/entries_spec_files/config.yml +50 -0
  229. data/sub/avm/spec/lib/avm/instances/base_spec.rb +29 -0
  230. data/sub/avm/spec/lib/avm/launcher/context_spec.rb +102 -0
  231. data/sub/avm/spec/lib/avm/launcher/context_spec.yml +5 -0
  232. data/sub/avm/spec/lib/avm/launcher/context_spec_files/config.yml +9 -0
  233. data/sub/avm/spec/lib/avm/launcher/instances/base_spec.rb +39 -0
  234. data/sub/avm/spec/lib/avm/launcher/instances/base_spec_files/config.yml +5 -0
  235. data/sub/avm/spec/lib/avm/launcher/instances/base_spec_files/settings.yaml +5 -0
  236. data/sub/avm/spec/lib/avm/patches/eac_config/entry_path_spec.rb +26 -0
  237. data/sub/avm/spec/lib/avm/scms/auto_commit/file_resource_name_spec.rb +20 -0
  238. data/sub/avm/spec/lib/avm/scms/base_spec.rb +5 -0
  239. data/sub/avm/spec/lib/avm/sources/base_spec.rb +5 -0
  240. data/sub/avm/spec/lib/avm/sources/runner_spec.rb +7 -0
  241. data/sub/avm/spec/spec_helper/launcher_context/settings.yml +6 -0
  242. data/sub/{avm-eac_ruby_base0 → avm}/spec/spec_helper.rb +3 -1
  243. data/sub/avm/template/avm/rspec/launcher_controller/dummy/avm-tools_stub/avm-tools.gemspec +29 -0
  244. data/sub/avm/template/avm/rspec/launcher_controller/dummy/avm-tools_stub/lib/avm/tools/version.rb +7 -0
  245. data/sub/avm/template/avm/rspec/launcher_controller/dummy/avm-tools_stub/lib/avm/tools.rb +6 -0
  246. data/sub/avm/template/avm/rspec/launcher_controller/dummy/ruby_gem_stub/lib/ruby_gem_stub/version.rb +5 -0
  247. data/sub/{avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed.rb → avm/template/avm/rspec/launcher_controller/dummy/ruby_gem_stub/lib/ruby_gem_stub.rb} +1 -2
  248. data/sub/avm/template/avm/rspec/launcher_controller/dummy/ruby_gem_stub/ruby_gem_stub.gemspec +16 -0
  249. data/sub/avm/template/avm/rspec/launcher_controller/settings.yml +1 -0
  250. data/sub/avm/template/avm/self/docker_image/Dockerfile +17 -0
  251. data/sub/avm/template/avm/self/docker_image/entrypoint.sh +12 -0
  252. data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +1 -1
  253. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish/internal_check.rb +2 -1
  254. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish.rb +3 -2
  255. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/base/command_result_to_push_result.rb +39 -0
  256. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/base.rb +15 -2
  257. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rubygems/providers/rubygems_org.rb +5 -0
  258. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/sources/base/update.rb +1 -1
  259. data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
  260. data/sub/avm-tools/.avm.yaml +2 -0
  261. data/sub/avm-tools/.gitignore +3 -0
  262. data/sub/avm-tools/.gitrepo +7 -0
  263. data/sub/avm-tools/.rspec +1 -0
  264. data/sub/avm-tools/README.textile +28 -0
  265. data/sub/avm-tools/avm-tools.gemspec +24 -0
  266. data/sub/{avm-eac_ruby_base0/template/avm/eac_ruby_base0/source_generators/base/executable.template → avm-tools/exe/avm} +2 -2
  267. data/sub/avm-tools/lib/avm/tools/rspec/helpers/runner.rb +19 -0
  268. data/sub/avm-tools/lib/avm/tools/rspec/setup.rb +21 -0
  269. data/sub/avm-tools/lib/avm/tools/runner/application/info.rb +34 -0
  270. data/sub/avm-tools/lib/avm/tools/runner/application.rb +21 -0
  271. data/sub/avm-tools/lib/avm/tools/runner/application_stereotypes/list.rb +29 -0
  272. data/sub/avm-tools/lib/avm/tools/runner/application_stereotypes.rb +13 -0
  273. data/sub/avm-tools/lib/avm/tools/runner/applications/list.rb +29 -0
  274. data/sub/avm-tools/lib/avm/tools/runner/applications.rb +13 -0
  275. data/sub/avm-tools/lib/avm/tools/runner/config/load_path.rb +48 -0
  276. data/sub/avm-tools/lib/avm/tools/runner/config.rb +14 -0
  277. data/sub/avm-tools/lib/avm/tools/runner/files/format.rb +46 -0
  278. data/sub/avm-tools/lib/avm/tools/runner/files/rotate.rb +28 -0
  279. data/sub/avm-tools/lib/avm/tools/runner/files.rb +14 -0
  280. data/sub/avm-tools/lib/avm/tools/runner/instance/data/clear.rb +15 -0
  281. data/sub/avm-tools/lib/avm/tools/runner/instance/data/dump.rb +17 -0
  282. data/sub/avm-tools/lib/avm/tools/runner/instance/data/load.rb +22 -0
  283. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit/clear.rb +17 -0
  284. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit/dump.rb +17 -0
  285. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit/load.rb +22 -0
  286. data/sub/avm-tools/lib/avm/tools/runner/instance/data/unit.rb +40 -0
  287. data/sub/avm-tools/lib/avm/tools/runner/instance/data.rb +23 -0
  288. data/sub/avm-tools/lib/avm/tools/runner/instance/entry.rb +41 -0
  289. data/sub/avm-tools/lib/avm/tools/runner/instance/info.rb +35 -0
  290. data/sub/avm-tools/lib/avm/tools/runner/instance/system.rb +63 -0
  291. data/sub/avm-tools/lib/avm/tools/runner/instance.rb +10 -0
  292. data/sub/avm-tools/lib/avm/tools/runner/launcher/instances.rb +34 -0
  293. data/sub/avm-tools/lib/avm/tools/runner/launcher/projects.rb +37 -0
  294. data/sub/avm-tools/lib/avm/tools/runner/launcher/publish.rb +52 -0
  295. data/sub/avm-tools/lib/avm/tools/runner/launcher.rb +14 -0
  296. data/sub/avm-tools/lib/avm/tools/runner/launcher_stereotypes/list.rb +38 -0
  297. data/sub/avm-tools/lib/avm/tools/runner/launcher_stereotypes.rb +13 -0
  298. data/sub/avm-tools/lib/avm/tools/runner/self/docker.rb +12 -0
  299. data/sub/avm-tools/lib/avm/tools/runner/self/registry.rb +22 -0
  300. data/sub/avm-tools/lib/avm/tools/runner/self.rb +18 -0
  301. data/sub/avm-tools/lib/avm/tools/runner/source/auto_commit.rb +67 -0
  302. data/sub/avm-tools/lib/avm/tools/runner/source/info.rb +54 -0
  303. data/sub/avm-tools/lib/avm/tools/runner/source/issue/complete.rb +85 -0
  304. data/sub/avm-tools/lib/avm/tools/runner/source/issue/deliver.rb +32 -0
  305. data/sub/avm-tools/lib/avm/tools/runner/source/issue.rb +16 -0
  306. data/sub/avm-tools/lib/avm/tools/runner/source/sub/remove.rb +20 -0
  307. data/sub/avm-tools/lib/avm/tools/runner/source/sub.rb +25 -0
  308. data/sub/avm-tools/lib/avm/tools/runner/source/subs.rb +70 -0
  309. data/sub/avm-tools/lib/avm/tools/runner/source/test.rb +90 -0
  310. data/sub/avm-tools/lib/avm/tools/runner/source/update.rb +20 -0
  311. data/sub/avm-tools/lib/avm/tools/runner/source/version_bump.rb +78 -0
  312. data/sub/avm-tools/lib/avm/tools/runner/source.rb +13 -0
  313. data/sub/avm-tools/lib/avm/tools/runner/source_generate.rb +10 -0
  314. data/sub/avm-tools/lib/avm/tools/runner.rb +19 -0
  315. data/sub/avm-tools/lib/avm/tools/runner_with/include_exclude.rb +20 -0
  316. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_clear.rb +19 -0
  317. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_dump.rb +55 -0
  318. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_load.rb +64 -0
  319. data/sub/avm-tools/lib/avm/tools/runner_with/instance_data_performer.rb +37 -0
  320. data/sub/avm-tools/lib/avm/tools/self.rb +17 -0
  321. data/sub/{avm-eac_ruby_base0/lib/avm/eac_ruby_base0 → avm-tools/lib/avm/tools}/version.rb +2 -2
  322. data/sub/avm-tools/spec/lib/avm/tools/runner/files/rotate_spec.rb +71 -0
  323. data/sub/avm-tools/spec/lib/avm/tools/runner/launcher_stereotypes/list_spec.rb +15 -0
  324. data/sub/avm-tools/spec/lib/avm/tools/runner/source/issue/complete_spec.rb +47 -0
  325. data/sub/avm-tools/spec/lib/avm/tools/runner_spec.rb +12 -0
  326. data/sub/{avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem → avm-tools}/spec/spec_helper.rb +3 -1
  327. metadata +338 -80
  328. data/sub/avm-eac_ruby_base0/.gitignore +0 -2
  329. data/sub/avm-eac_ruby_base0/.gitrepo +0 -7
  330. data/sub/avm-eac_ruby_base0/avm-eac_ruby_base0.gemspec +0 -21
  331. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/rspec/setup.rb +0 -13
  332. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/rspec/source_generator.rb +0 -31
  333. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base/application.rb +0 -33
  334. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base/executable.rb +0 -29
  335. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base/runner.rb +0 -33
  336. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/source_generators/base.rb +0 -49
  337. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/sources/base/executable.rb +0 -59
  338. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0/sources/base.rb +0 -16
  339. data/sub/avm-eac_ruby_base0/lib/avm/eac_ruby_base0.rb +0 -6
  340. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec.rb +0 -42
  341. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/.rspec +0 -1
  342. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/Gemfile.lock +0 -108
  343. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/_gitignore +0 -2
  344. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/dashed-mygem.gemspec +0 -24
  345. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/exe/dashed-mygem +0 -6
  346. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/runner.rb +0 -17
  347. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/self.rb +0 -13
  348. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem/version.rb +0 -7
  349. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/.rspec +0 -1
  350. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/.rubocop.yml +0 -3
  351. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/Gemfile +0 -8
  352. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/Gemfile.lock +0 -108
  353. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/_gitignore +0 -2
  354. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/exe/mygem_underscore +0 -6
  355. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore/runner.rb +0 -15
  356. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore/self.rb +0 -11
  357. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore/version.rb +0 -5
  358. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/lib/mygem_underscore.rb +0 -6
  359. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/mygem_underscore.gemspec +0 -24
  360. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/mygem_underscore/spec/spec_helper.rb +0 -5
  361. data/sub/avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/sources/base_spec.rb +0 -13
  362. data/sub/avm-eac_ruby_base0/template/avm/eac_ruby_base0/source_generators/base/application.template +0 -11
  363. data/sub/avm-eac_ruby_base0/template/avm/eac_ruby_base0/source_generators/base/runner.template +0 -15
  364. data/sub/eac_ruby_gem_support/.gitrepo +0 -7
  365. data/sub/eac_ruby_gem_support/.rspec +0 -1
  366. data/sub/eac_ruby_gem_support/.rubocop.yml +0 -45
  367. data/sub/eac_ruby_gem_support/Gemfile +0 -8
  368. data/sub/eac_ruby_gem_support/eac_ruby_gem_support.gemspec +0 -27
  369. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/helpers/filesystem.rb +0 -73
  370. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/helpers/utils.rb +0 -22
  371. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/setup/rubocop.rb +0 -61
  372. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/setup.rb +0 -52
  373. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/shared_examples/source_target_fixtures.rb +0 -73
  374. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/shared_examples/spec_paths.rb +0 -11
  375. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/source_target_fixtures_controller.rb +0 -29
  376. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/rspec/spec_paths_controller.rb +0 -27
  377. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/source_target_fixtures/source_target_file.rb +0 -17
  378. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/source_target_fixtures.rb +0 -72
  379. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support/version.rb +0 -5
  380. data/sub/eac_ruby_gem_support/lib/eac_ruby_gem_support.rb +0 -10
  381. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/rspec/helpers/filesystem_spec.rb +0 -30
  382. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/rspec/shared_examples/source_target_fixtures_spec.rb +0 -11
  383. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/rspec/shared_examples/source_target_fixtures_spec_files/one.source.yaml +0 -2
  384. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/rspec/shared_examples/source_target_fixtures_spec_files/one.target.yaml +0 -2
  385. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/rspec/shared_examples/spec_paths_spec.rb +0 -17
  386. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/source_target_fixtures_spec.rb +0 -25
  387. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/source_target_fixtures_spec_files/stub1.source.txt +0 -1
  388. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/source_target_fixtures_spec_files/stub1.target.html +0 -1
  389. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/source_target_fixtures_spec_files/stub2.source.html +0 -1
  390. data/sub/eac_ruby_gem_support/spec/lib/eac_ruby_gem_support/source_target_fixtures_spec_files/stub3.target.yaml +0 -1
  391. data/sub/eac_ruby_gem_support/spec/spec_helper.rb +0 -5
  392. /data/sub/{eac_ruby_gem_support → avm}/.gitignore +0 -0
  393. /data/sub/{avm-eac_ruby_base0 → avm}/.rspec +0 -0
  394. /data/sub/{avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem → avm}/.rubocop.yml +0 -0
  395. /data/sub/{avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem → avm}/Gemfile +0 -0
  396. /data/sub/{avm-eac_ruby_base0 → avm-tools}/.rubocop.yml +0 -0
  397. /data/sub/{avm-eac_ruby_base0 → avm-tools}/Gemfile +0 -0
  398. /data/sub/{avm-eac_ruby_base0/spec/lib/avm/eac_ruby_base0/source_generators/base_spec_files/dashed-mygem/lib/dashed/mygem.rb → avm-tools/lib/avm/tools.rb} +0 -0
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Files
7
+ class Rotate
8
+ runner_with :help do
9
+ desc 'Rotates a file (Like a backup).'
10
+ arg_opt '-L', '--space-limit', 'Limit by <space> the space used by rotated files.'
11
+ pos_arg :path
12
+ end
13
+ def run
14
+ error_message = rotate.run
15
+ fatal_error(error_message) if error_message
16
+ end
17
+
18
+ def rotate
19
+ @rotate ||= ::Avm::Data::Rotate.new(
20
+ parsed.path,
21
+ space_limit: parsed.space_limit
22
+ )
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Files
7
+ runner_with :help, :subcommands do
8
+ desc 'Files utilities for AVM.'
9
+ subcommands
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Clear
9
+ runner_with :help, :include_exclude, :instance_data_clear
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Dump
9
+ runner_with :help, :include_exclude, :instance_data_dump do
10
+ desc 'Dump utility for instance.'
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Load
9
+ runner_with :help, :include_exclude, :instance_data_load do
10
+ desc 'Load utility for instance.'
11
+ end
12
+
13
+ # @return [Avm::Instances::Data::Package]
14
+ def source_instance_data_owner
15
+ source_instance.data_package
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Unit
9
+ class Clear
10
+ runner_with :help, :instance_data_clear
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Unit
9
+ class Dump
10
+ runner_with :help, :instance_data_dump
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Unit
9
+ class Load
10
+ runner_with :help, :instance_data_load
11
+
12
+ # @return [Avm::Instances::Data::Unit]
13
+ def source_instance_data_owner
14
+ source_instance.data_package.unit(data_owner.identifier)
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ class Unit
9
+ runner_with :help, :subcommands do
10
+ pos_arg :identifier
11
+ subcommands
12
+ end
13
+
14
+ for_context :data_owner
15
+
16
+ # @return [Enumerable<String>]
17
+ def available_units_ids
18
+ data_package.units_ids
19
+ end
20
+
21
+ # @return [Avm::Instances::Data::Package]
22
+ def data_package
23
+ runner_context.call(:instance).data_package
24
+ end
25
+
26
+ # @return [Avm::Instances::Data::Unit]
27
+ def data_owner
28
+ data_package.unit(parsed.identifier)
29
+ end
30
+
31
+ # @return [String]
32
+ def help_extra_text
33
+ help_join_sections(super, list_section('Available units', available_units_ids))
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Data
8
+ runner_with :help, :subcommands do
9
+ desc 'Data utilities for EacRailsBase0 instances.'
10
+ subcommands
11
+ end
12
+
13
+ for_context :data_owner
14
+
15
+ # @return [Avm::Instances::Data::Package]
16
+ def data_owner
17
+ instance.data_package
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Entry
8
+ runner_with :help, :output do
9
+ desc 'Retorna valor de uma entrada de instância AVM.'
10
+ bool_opt '-d', '--debug'
11
+ pos_arg :envvar_suffix, repeat: true
12
+ end
13
+
14
+ def run
15
+ debug
16
+ run_output
17
+ end
18
+
19
+ def output_content
20
+ parsed.envvar_suffix.map { |entry_key| "#{instance.entry(entry_key).value}\n" }.join
21
+ end
22
+
23
+ def debug
24
+ return unless parsed.debug?
25
+
26
+ parsed.envvar_suffix.map { |entry_key| debug_entry(entry_key) }
27
+ end
28
+
29
+ def debug_entry(entry_key)
30
+ infov 'Entry key', entry_key
31
+ e = instance.entry(entry_key)
32
+ infov ' * Type', e.class
33
+ infov ' * Full path', e.full_path
34
+ infov ' * Found?', e.context_found?
35
+ infov ' * Value', e.value
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class Info
8
+ runner_with :help do
9
+ desc 'Show info about a instance.'
10
+ end
11
+
12
+ def run
13
+ base_banner
14
+ entry_keys_banner
15
+ end
16
+
17
+ private
18
+
19
+ def base_banner
20
+ infov 'ID', instance.id
21
+ infov 'Application ID', instance.application.id
22
+ infov 'Application stereotype', instance.application.stereotype
23
+ infov 'Suffix', instance.suffix
24
+ end
25
+
26
+ def entry_keys_banner
27
+ instance.entry_keys.each do |key|
28
+ infov key, instance.read_entry_optional(key)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ class System
8
+ ENVVAR_PARSER = /\A([^=]+)=(.+)\z/.to_parser do |m|
9
+ ::Struct.new(:name, :value).new(m[1].strip, m[2].strip)
10
+ end
11
+
12
+ runner_with :help do
13
+ desc 'Execute a command in the instance\'s environment.'
14
+ arg_opt '-C', '--chdir'
15
+ arg_opt '-e', '--envvar', repeat: true
16
+ pos_arg :command_args, required: true, repeat: true
17
+ end
18
+
19
+ delegate :command_args, to: :parsed
20
+
21
+ def run
22
+ start_banner
23
+ run_command
24
+ end
25
+
26
+ # @return [Pathname]
27
+ def chdir
28
+ (parsed.chdir || instance.install_path).to_pathname
29
+ end
30
+
31
+ private
32
+
33
+ # @return [EacRubyUtils::Envs::Command]
34
+ def command_without_envvars
35
+ instance.host_env.command(*command_args).chdir(chdir)
36
+ end
37
+
38
+ # @return [EacRubyUtils::Envs::Command]
39
+ def command
40
+ envvars.inject(command_without_envvars) { |a, e| a.envvar(e.name, e.value) }
41
+ end
42
+
43
+ # @return [Hash<String, String>]
44
+ def envvars
45
+ parsed.envvar.map { |v| ENVVAR_PARSER.parse!(v) }
46
+ end
47
+
48
+ def run_command
49
+ command.system!
50
+ end
51
+
52
+ def start_banner
53
+ infov 'Instance', instance
54
+ infov 'Environment', instance.host_env
55
+ infov 'Directory', chdir
56
+ infov 'Envvars', envvars.map { |e| "#{e.name}=#{e.value}" }.join(', ')
57
+ infov 'Command', ::Shellwords.join(command_args)
58
+ end
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Instance < ::Avm::Instances::Runner
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Launcher
7
+ class Instances
8
+ runner_with :help, ::Avm::Launcher::Instances::RunnerHelper do
9
+ desc 'Mostra informações sobre instâncias.'
10
+ bool_opt '-e', '--extra', 'Show instances\' extra data.'
11
+ pos_arg :instance_path, repeat: true, optional: true
12
+ end
13
+
14
+ def run
15
+ instances.each { |i| show_instance(i) }
16
+ end
17
+
18
+ private
19
+
20
+ def show_instance(instance)
21
+ puts instance_label(instance)
22
+ show_instance_extra(instance) if parsed.extra?
23
+ end
24
+
25
+ def show_instance_extra(instance)
26
+ infov(' * Parent', (instance.parent ? instance_label(instance.parent) : '-'))
27
+ infov(' * Git current revision', instance.options.git_current_revision)
28
+ infov(' * Git publish remote', instance.options.git_publish_remote)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Launcher
7
+ class Projects
8
+ runner_with :help, ::Avm::Launcher::Instances::RunnerHelper do
9
+ desc 'Shows available projects.'
10
+ bool_opt '-i', '--instances', 'Show instances.'
11
+ end
12
+
13
+ def run
14
+ ::Avm::Launcher::Context.current.projects.each do |p|
15
+ show_project(p)
16
+ end
17
+ end
18
+
19
+ private
20
+
21
+ def show_project(project)
22
+ puts project_label(project)
23
+ return unless parsed.instances?
24
+
25
+ project.instances.each do |i|
26
+ puts " * #{instance_label(i)}"
27
+ end
28
+ end
29
+
30
+ def project_label(project)
31
+ project.to_s.cyan.to_s
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Launcher
7
+ class Publish
8
+ runner_with :help, ::Avm::Launcher::Instances::RunnerHelper do
9
+ desc 'Publica projetos ou instâncias.'
10
+ bool_opt '-d', '--dry-run', '"Dry run" publishing.'
11
+ bool_opt '--new', 'Publish projects not published before.'
12
+ bool_opt '--run', 'Confirm publishing.'
13
+ arg_opt '-s', '--stereotype', 'Publish only for stereotype <stereotype>.'
14
+ pos_arg :instance_path, repeat: true, optional: true
15
+ end
16
+
17
+ def run
18
+ build_publish_options
19
+ instances.each do |i|
20
+ next unless i.publishable?
21
+
22
+ i.send(instance_method)
23
+ end
24
+ end
25
+
26
+ private
27
+
28
+ def dry_run?
29
+ parsed.dry_run?
30
+ end
31
+
32
+ def instance_method
33
+ run? || dry_run? ? 'publish_run' : 'publish_check'
34
+ end
35
+
36
+ def build_publish_options
37
+ ::Avm::Launcher::Context.current.publish_options = publish_options
38
+ end
39
+
40
+ # @return [Hash]
41
+ def publish_options
42
+ { new: parsed.new?, stereotype: parsed.stereotype, confirm: run? }
43
+ end
44
+
45
+ def run?
46
+ parsed.run? && !dry_run?
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Launcher
7
+ runner_with :help, :subcommands do
8
+ desc 'Utilities to deploy applications and libraries.'
9
+ subcommands
10
+ end
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class LauncherStereotypes
7
+ class List
8
+ runner_with :help, :output do
9
+ bool_opt '-d', '--deprecated'
10
+ end
11
+
12
+ def run
13
+ infov 'Found', stereotypes.count
14
+ run_output
15
+ end
16
+
17
+ def output_content
18
+ stereotypes.map { |s| "#{s}\n" }.join
19
+ end
20
+
21
+ private
22
+
23
+ def stereotypes
24
+ (parsed.deprecated? ? deprecated_stereotypes : registry_stereotypes)
25
+ end
26
+
27
+ def registry_stereotypes
28
+ ::Avm::Registry.launcher_stereotypes.available.sort_by { |s| [s.name] }
29
+ end
30
+
31
+ def deprecated_stereotypes
32
+ ::Avm::Launcher::Stereotype.stereotypes.sort_by { |s| [s.stereotype_name] }
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class LauncherStereotypes
7
+ runner_with :help, :subcommands do
8
+ subcommands
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Self
7
+ class Docker < ::Avm::Docker::Runner
8
+ end
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Self
7
+ class Registry
8
+ runner_with :help do
9
+ desc 'Show information from registry'
10
+ end
11
+
12
+ def run
13
+ ::Avm::Registry.registries.each do |registry|
14
+ infov registry.module_suffix, registry.registered_modules.count
15
+ registry.registered_modules.each { |m| infov ' * ', m }
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Tools
5
+ class Runner
6
+ class Self
7
+ runner_with :help, :subcommands do
8
+ desc 'Utilities for self avm-tools.'
9
+ subcommands
10
+ end
11
+
12
+ def instance
13
+ ::Avm::Self::Instance.default
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end