eac_tools 0.113.0 → 0.114.0

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 (319) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +33 -37
  3. data/eac_tools.gemspec +3 -3
  4. data/lib/eac_tools/version.rb +1 -1
  5. data/sub/avm/avm.gemspec +28 -0
  6. data/sub/avm/lib/avm/application_scms/base.rb +37 -0
  7. data/sub/avm/lib/avm/application_stereotypes/base.rb +29 -0
  8. data/sub/avm/lib/avm/applications/base/auto_local_source_path.rb +22 -0
  9. data/sub/avm/lib/avm/applications/base/local_instance.rb +28 -0
  10. data/sub/avm/lib/avm/applications/base/local_source.rb +31 -0
  11. data/sub/avm/lib/avm/applications/base/naming.rb +26 -0
  12. data/sub/avm/lib/avm/applications/base/organization.rb +27 -0
  13. data/sub/avm/lib/avm/applications/base/publishing.rb +39 -0
  14. data/sub/avm/lib/avm/applications/base/scm.rb +24 -0
  15. data/sub/avm/lib/avm/applications/base/stereotype.rb +29 -0
  16. data/sub/avm/lib/avm/applications/base.rb +34 -0
  17. data/sub/avm/lib/avm/data/callbacks.rb +36 -0
  18. data/sub/avm/lib/avm/data/clearer.rb +17 -0
  19. data/sub/avm/lib/avm/data/dumper.rb +137 -0
  20. data/sub/avm/lib/avm/data/loader.rb +23 -0
  21. data/sub/avm/lib/avm/data/package/base_performer.rb +36 -0
  22. data/sub/avm/lib/avm/data/package/build_directory.rb +25 -0
  23. data/sub/avm/lib/avm/data/package/clear.rb +19 -0
  24. data/sub/avm/lib/avm/data/package/dump.rb +42 -0
  25. data/sub/avm/lib/avm/data/package/load.rb +33 -0
  26. data/sub/avm/lib/avm/data/package.rb +64 -0
  27. data/sub/avm/lib/avm/data/performer.rb +45 -0
  28. data/sub/avm/lib/avm/data/rotate.rb +106 -0
  29. data/sub/avm/lib/avm/data/unit.rb +44 -0
  30. data/sub/avm/lib/avm/data/unit_with_commands.rb +48 -0
  31. data/sub/avm/lib/avm/docker/container.rb +47 -0
  32. data/sub/avm/lib/avm/docker/image.rb +70 -0
  33. data/sub/avm/lib/avm/docker/runner.rb +129 -0
  34. data/sub/avm/lib/avm/entries/auto_values/entry.rb +36 -0
  35. data/sub/avm/lib/avm/entries/auto_values/uri_entry.rb +21 -0
  36. data/sub/avm/lib/avm/entries/base/inherited_entry_value.rb +42 -0
  37. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/default_value.rb +24 -0
  38. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/inherited_value.rb +35 -0
  39. data/sub/avm/lib/avm/entries/base/uri_component_entry_value/url_entry_value.rb +27 -0
  40. data/sub/avm/lib/avm/entries/base/uri_component_entry_value.rb +40 -0
  41. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/component_factory.rb +40 -0
  42. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/generic_component.rb +59 -0
  43. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/path_component.rb +16 -0
  44. data/sub/avm/lib/avm/entries/base/uri_components_entries_values/url_component.rb +22 -0
  45. data/sub/avm/lib/avm/entries/base/uri_components_entries_values.rb +23 -0
  46. data/sub/avm/lib/avm/entries/base.rb +53 -0
  47. data/sub/avm/lib/avm/entries/entry/no_context_entry.rb +21 -0
  48. data/sub/avm/lib/avm/entries/entry.rb +69 -0
  49. data/sub/avm/lib/avm/entries/jobs/base.rb +58 -0
  50. data/sub/avm/lib/avm/entries/jobs/variables_source/read_entry.rb +48 -0
  51. data/sub/avm/lib/avm/entries/jobs/variables_source.rb +13 -0
  52. data/sub/avm/lib/avm/entries/jobs/with_variables_source.rb +13 -0
  53. data/sub/avm/lib/avm/entries/keys_constants_set.rb +41 -0
  54. data/sub/avm/lib/avm/entries/uri_builder.rb +87 -0
  55. data/sub/avm/lib/avm/executables.rb +21 -0
  56. data/sub/avm/lib/avm/file_formats/base.rb +34 -0
  57. data/sub/avm/lib/avm/file_formats/file_result.rb +11 -0
  58. data/sub/avm/lib/avm/file_formats/search_formatter.rb +83 -0
  59. data/sub/avm/lib/avm/file_formats/unknown.rb +15 -0
  60. data/sub/avm/lib/avm/file_formats/utf8_assert.rb +72 -0
  61. data/sub/avm/lib/avm/files/appendable/file_content.rb +28 -0
  62. data/sub/avm/lib/avm/files/appendable/plain_directory.rb +27 -0
  63. data/sub/avm/lib/avm/files/appendable/resource_base.rb +17 -0
  64. data/sub/avm/lib/avm/files/appendable/tar_output_command.rb +27 -0
  65. data/sub/avm/lib/avm/files/appendable/templatized_directory.rb +36 -0
  66. data/sub/avm/lib/avm/files/appendable.rb +51 -0
  67. data/sub/avm/lib/avm/files/appender.rb +9 -0
  68. data/sub/avm/lib/avm/files/deploy.rb +70 -0
  69. data/sub/avm/lib/avm/files/text_replacer/gsub.rb +22 -0
  70. data/sub/avm/lib/avm/files/text_replacer.rb +29 -0
  71. data/sub/avm/lib/avm/instances/base/auto_values/data.rb +28 -0
  72. data/sub/avm/lib/avm/instances/base/auto_values/database.rb +60 -0
  73. data/sub/avm/lib/avm/instances/base/auto_values/mailer.rb +31 -0
  74. data/sub/avm/lib/avm/instances/base/auto_values/source.rb +16 -0
  75. data/sub/avm/lib/avm/instances/base/auto_values.rb +12 -0
  76. data/sub/avm/lib/avm/instances/base/dockerizable.rb +41 -0
  77. data/sub/avm/lib/avm/instances/base/entry_keys.rb +25 -0
  78. data/sub/avm/lib/avm/instances/base/install.rb +28 -0
  79. data/sub/avm/lib/avm/instances/base/processes.rb +25 -0
  80. data/sub/avm/lib/avm/instances/base/production.rb +33 -0
  81. data/sub/avm/lib/avm/instances/base/subcommand_parent.rb +23 -0
  82. data/sub/avm/lib/avm/instances/base/web.rb +15 -0
  83. data/sub/avm/lib/avm/instances/base.rb +70 -0
  84. data/sub/avm/lib/avm/instances/data/files_unit.rb +57 -0
  85. data/sub/avm/lib/avm/instances/data/loading_denied_error.rb +10 -0
  86. data/sub/avm/lib/avm/instances/data/package.rb +25 -0
  87. data/sub/avm/lib/avm/instances/data/unit.rb +36 -0
  88. data/sub/avm/lib/avm/instances/docker_image.rb +13 -0
  89. data/sub/avm/lib/avm/instances/entry_keys.rb +39 -0
  90. data/sub/avm/lib/avm/instances/ids.rb +28 -0
  91. data/sub/avm/lib/avm/instances/process.rb +29 -0
  92. data/sub/avm/lib/avm/instances/runner.rb +34 -0
  93. data/sub/avm/lib/avm/launcher/context/instance_collector.rb +44 -0
  94. data/sub/avm/lib/avm/launcher/context/instance_discovery/root_instance_paths.rb +51 -0
  95. data/sub/avm/lib/avm/launcher/context/instance_discovery.rb +53 -0
  96. data/sub/avm/lib/avm/launcher/context/instance_manager/cached_instance.rb +34 -0
  97. data/sub/avm/lib/avm/launcher/context/instance_manager/cached_instances.rb +32 -0
  98. data/sub/avm/lib/avm/launcher/context/instance_manager.rb +74 -0
  99. data/sub/avm/lib/avm/launcher/context/settings.rb +51 -0
  100. data/sub/avm/lib/avm/launcher/context.rb +83 -0
  101. data/sub/avm/lib/avm/launcher/errors/base.rb +10 -0
  102. data/sub/avm/lib/avm/launcher/errors/non_project.rb +13 -0
  103. data/sub/avm/lib/avm/launcher/instances/base/cache.rb +43 -0
  104. data/sub/avm/lib/avm/launcher/instances/base/publishing.rb +53 -0
  105. data/sub/avm/lib/avm/launcher/instances/base.rb +77 -0
  106. data/sub/avm/lib/avm/launcher/instances/error.rb +10 -0
  107. data/sub/avm/lib/avm/launcher/instances/runner_helper.rb +43 -0
  108. data/sub/avm/lib/avm/launcher/instances/settings.rb +24 -0
  109. data/sub/avm/lib/avm/launcher/paths/logical.rb +76 -0
  110. data/sub/avm/lib/avm/launcher/paths/real.rb +44 -0
  111. data/sub/avm/lib/avm/launcher/project.rb +15 -0
  112. data/sub/avm/lib/avm/launcher/publish/base.rb +44 -0
  113. data/sub/avm/lib/avm/launcher/publish/check_result.rb +64 -0
  114. data/sub/avm/lib/avm/launcher/stereotype.rb +63 -0
  115. data/sub/avm/lib/avm/patches/eac_config/entry_path.rb +44 -0
  116. data/sub/avm/lib/avm/path_string.rb +27 -0
  117. data/sub/avm/lib/avm/registry/application_scms.rb +13 -0
  118. data/sub/avm/lib/avm/registry/application_stereotypes/build_available.rb +45 -0
  119. data/sub/avm/lib/avm/registry/application_stereotypes/stereotype_builder.rb +30 -0
  120. data/sub/avm/lib/avm/registry/application_stereotypes.rb +42 -0
  121. data/sub/avm/lib/avm/registry/applications.rb +35 -0
  122. data/sub/avm/lib/avm/registry/base.rb +26 -0
  123. data/sub/avm/lib/avm/registry/config_objects.rb +15 -0
  124. data/sub/avm/lib/avm/registry/detection_error.rb +8 -0
  125. data/sub/avm/lib/avm/registry/file_formats.rb +17 -0
  126. data/sub/avm/lib/avm/registry/from_gems.rb +67 -0
  127. data/sub/avm/lib/avm/registry/instances.rb +13 -0
  128. data/sub/avm/lib/avm/registry/launcher_stereotypes.rb +8 -0
  129. data/sub/avm/lib/avm/registry/runners.rb +8 -0
  130. data/sub/avm/lib/avm/registry/scms.rb +8 -0
  131. data/sub/avm/lib/avm/registry/source_generators.rb +14 -0
  132. data/sub/avm/lib/avm/registry/sources.rb +38 -0
  133. data/sub/avm/lib/avm/registry/with_path/cache.rb +28 -0
  134. data/sub/avm/lib/avm/registry/with_path.rb +44 -0
  135. data/sub/avm/lib/avm/registry.rb +31 -0
  136. data/sub/avm/lib/avm/result.rb +80 -0
  137. data/sub/avm/lib/avm/rspec/launcher_controller.rb +91 -0
  138. data/sub/avm/lib/avm/rspec/setup/launcher.rb +18 -0
  139. data/sub/avm/lib/avm/rspec/setup/source_generator.rb +20 -0
  140. data/sub/avm/lib/avm/rspec/setup.rb +32 -0
  141. data/sub/avm/lib/avm/rspec/shared_examples/avm_file_format_file_resource_name.rb +13 -0
  142. data/sub/avm/lib/avm/rspec/shared_examples/avm_file_formats_with_fixtures.rb +28 -0
  143. data/sub/avm/lib/avm/rspec/shared_examples/avm_source_generated.rb +27 -0
  144. data/sub/avm/lib/avm/rspec/shared_examples/entries_values.rb +19 -0
  145. data/sub/avm/lib/avm/rspec/shared_examples/in_avm_registry.rb +9 -0
  146. data/sub/avm/lib/avm/rspec/shared_examples/not_in_avm_registry.rb +12 -0
  147. data/sub/avm/lib/avm/rspec/shared_examples/with_config.rb +9 -0
  148. data/sub/avm/lib/avm/rspec/shared_examples/with_launcher.rb +13 -0
  149. data/sub/avm/lib/avm/runner_with/file_replacer.rb +28 -0
  150. data/sub/avm/lib/avm/runner_with/filesystem_renamer.rb +99 -0
  151. data/sub/avm/lib/avm/runner_with/filesystem_traverser.rb +49 -0
  152. data/sub/avm/lib/avm/runners/base.rb +25 -0
  153. data/sub/avm/lib/avm/scms/auto_commit/file_resource_name.rb +47 -0
  154. data/sub/avm/lib/avm/scms/auto_commit/for_file.rb +79 -0
  155. data/sub/avm/lib/avm/scms/auto_commit/rules/base.rb +37 -0
  156. data/sub/avm/lib/avm/scms/auto_commit/rules/last.rb +17 -0
  157. data/sub/avm/lib/avm/scms/auto_commit/rules/manual.rb +38 -0
  158. data/sub/avm/lib/avm/scms/auto_commit/rules/new.rb +21 -0
  159. data/sub/avm/lib/avm/scms/auto_commit/rules/nth.rb +29 -0
  160. data/sub/avm/lib/avm/scms/auto_commit/rules/unique.rb +19 -0
  161. data/sub/avm/lib/avm/scms/auto_commit/rules.rb +32 -0
  162. data/sub/avm/lib/avm/scms/base/branches.rb +20 -0
  163. data/sub/avm/lib/avm/scms/base/commits.rb +32 -0
  164. data/sub/avm/lib/avm/scms/base/milestones.rb +19 -0
  165. data/sub/avm/lib/avm/scms/base/remotes.rb +20 -0
  166. data/sub/avm/lib/avm/scms/base.rb +59 -0
  167. data/sub/avm/lib/avm/scms/branch.rb +24 -0
  168. data/sub/avm/lib/avm/scms/changed_file.rb +46 -0
  169. data/sub/avm/lib/avm/scms/commit.rb +64 -0
  170. data/sub/avm/lib/avm/scms/commit_info.rb +37 -0
  171. data/sub/avm/lib/avm/scms/inflector.rb +22 -0
  172. data/sub/avm/lib/avm/scms/interval.rb +16 -0
  173. data/sub/avm/lib/avm/scms/null/commit.rb +11 -0
  174. data/sub/avm/lib/avm/scms/null.rb +16 -0
  175. data/sub/avm/lib/avm/scms/remote.rb +9 -0
  176. data/sub/avm/lib/avm/self/docker_image.rb +11 -0
  177. data/sub/avm/lib/avm/self/instance/entry_keys.rb +12 -0
  178. data/sub/avm/lib/avm/self/instance.rb +27 -0
  179. data/sub/avm/lib/avm/source_generators/base.rb +69 -0
  180. data/sub/avm/lib/avm/source_generators/option.rb +11 -0
  181. data/sub/avm/lib/avm/source_generators/option_list.rb +29 -0
  182. data/sub/avm/lib/avm/source_generators/runner.rb +55 -0
  183. data/sub/avm/lib/avm/sources/auto_commit/for_file.rb +29 -0
  184. data/sub/avm/lib/avm/sources/base/application.rb +32 -0
  185. data/sub/avm/lib/avm/sources/base/configuration.rb +89 -0
  186. data/sub/avm/lib/avm/sources/base/instance.rb +13 -0
  187. data/sub/avm/lib/avm/sources/base/locale.rb +30 -0
  188. data/sub/avm/lib/avm/sources/base/organizational.rb +30 -0
  189. data/sub/avm/lib/avm/sources/base/parent.rb +26 -0
  190. data/sub/avm/lib/avm/sources/base/stereotype.rb +16 -0
  191. data/sub/avm/lib/avm/sources/base/sub/remove.rb +36 -0
  192. data/sub/avm/lib/avm/sources/base/sub.rb +23 -0
  193. data/sub/avm/lib/avm/sources/base/subs.rb +63 -0
  194. data/sub/avm/lib/avm/sources/base/subs_paths.rb +30 -0
  195. data/sub/avm/lib/avm/sources/base/testing.rb +67 -0
  196. data/sub/avm/lib/avm/sources/base/update.rb +37 -0
  197. data/sub/avm/lib/avm/sources/base/update_sub.rb +55 -0
  198. data/sub/avm/lib/avm/sources/base/update_subs.rb +17 -0
  199. data/sub/avm/lib/avm/sources/base/version_bump.rb +26 -0
  200. data/sub/avm/lib/avm/sources/base.rb +56 -0
  201. data/sub/avm/lib/avm/sources/configuration/rubocop.rb +26 -0
  202. data/sub/avm/lib/avm/sources/configuration.rb +57 -0
  203. data/sub/avm/lib/avm/sources/issues/deliver.rb +51 -0
  204. data/sub/avm/lib/avm/sources/runner.rb +38 -0
  205. data/sub/avm/lib/avm/sources/tests/builder.rb +94 -0
  206. data/sub/avm/lib/avm/sources/tests/performer.rb +32 -0
  207. data/sub/avm/lib/avm/sources/tests/result.rb +13 -0
  208. data/sub/avm/lib/avm/sources/tests/single.rb +71 -0
  209. data/sub/avm/lib/avm/sources/update_error.rb +8 -0
  210. data/sub/avm/lib/avm/sync.rb +90 -0
  211. data/sub/avm/lib/avm/version.rb +5 -0
  212. data/sub/avm/lib/avm/version_number.rb +45 -0
  213. data/sub/avm/lib/avm/with/application_stereotype.rb +29 -0
  214. data/sub/avm/lib/avm/with/extra_subcommands.rb +41 -0
  215. data/sub/avm/lib/avm.rb +18 -0
  216. data/sub/avm/locale/en.yml +6 -0
  217. data/sub/avm/locale/pt-BR.yml +6 -0
  218. data/sub/avm/spec/lib/avm/applications/base/entries_spec.rb +29 -0
  219. data/sub/avm/spec/lib/avm/applications/base/entries_spec_files/config.yml +12 -0
  220. data/sub/avm/spec/lib/avm/applications/base_spec.rb +21 -0
  221. data/sub/avm/spec/lib/avm/applications/base_spec_fixture.yml +3 -0
  222. data/sub/avm/spec/lib/avm/file_formats/base_spec.rb +9 -0
  223. data/sub/avm/spec/lib/avm/instances/base/entries_spec.rb +78 -0
  224. data/sub/avm/spec/lib/avm/instances/base/entries_spec_files/config.yml +50 -0
  225. data/sub/avm/spec/lib/avm/instances/base_spec.rb +29 -0
  226. data/sub/avm/spec/lib/avm/launcher/context_spec.rb +98 -0
  227. data/sub/avm/spec/lib/avm/launcher/context_spec.yml +5 -0
  228. data/sub/avm/spec/lib/avm/launcher/context_spec_files/config.yml +9 -0
  229. data/sub/avm/spec/lib/avm/launcher/instances/base_spec.rb +39 -0
  230. data/sub/avm/spec/lib/avm/launcher/instances/base_spec_files/config.yml +5 -0
  231. data/sub/avm/spec/lib/avm/launcher/instances/base_spec_files/settings.yaml +5 -0
  232. data/sub/avm/spec/lib/avm/patches/eac_config/entry_path_spec.rb +26 -0
  233. data/sub/avm/spec/lib/avm/scms/auto_commit/file_resource_name_spec.rb +20 -0
  234. data/sub/avm/spec/lib/avm/scms/base_spec.rb +5 -0
  235. data/sub/avm/spec/lib/avm/sources/base_spec.rb +5 -0
  236. data/sub/avm/spec/lib/avm/sources/runner_spec.rb +7 -0
  237. data/sub/avm/spec/spec_helper/launcher_context/settings.yml +6 -0
  238. data/sub/{avm-eac_asciidoctor_base0 → avm}/spec/spec_helper.rb +4 -4
  239. data/sub/avm/template/avm/rspec/launcher_controller/dummy/avm-tools_stub/avm-tools.gemspec +29 -0
  240. data/sub/{avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0 → avm/template/avm/rspec/launcher_controller/dummy/avm-tools_stub/lib/avm/tools}/version.rb +2 -2
  241. data/sub/avm/template/avm/rspec/launcher_controller/dummy/avm-tools_stub/lib/avm/tools.rb +6 -0
  242. data/sub/avm/template/avm/rspec/launcher_controller/dummy/ruby_gem_stub/lib/ruby_gem_stub/version.rb +5 -0
  243. data/sub/avm/template/avm/rspec/launcher_controller/dummy/ruby_gem_stub/lib/ruby_gem_stub.rb +3 -0
  244. data/sub/avm/template/avm/rspec/launcher_controller/dummy/ruby_gem_stub/ruby_gem_stub.gemspec +16 -0
  245. data/sub/avm/template/avm/rspec/launcher_controller/settings.yml +1 -0
  246. data/sub/avm/template/avm/self/docker_image/Dockerfile +17 -0
  247. data/sub/avm/template/avm/self/docker_image/entrypoint.sh +12 -0
  248. metadata +253 -87
  249. data/sub/avm-eac_asciidoctor_base0/avm-eac_asciidoctor_base0.gemspec +0 -24
  250. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/documents_owner.rb +0 -27
  251. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/file_formats/base/file_resource_name.rb +0 -34
  252. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/file_formats/base.rb +0 -14
  253. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/apache_host.rb +0 -17
  254. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/apache_path.rb +0 -10
  255. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/base.rb +0 -28
  256. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/body_source.rb +0 -49
  257. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/body_target.rb +0 -35
  258. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/children.rb +0 -47
  259. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/header_lines.rb +0 -90
  260. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/media.rb +0 -27
  261. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document/pre_process_line.rb +0 -62
  262. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/document.rb +0 -49
  263. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build/theme.rb +0 -38
  264. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/build.rb +0 -61
  265. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/deploy.rb +0 -24
  266. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/base.rb +0 -19
  267. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/breadcrumbs.rb +0 -52
  268. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs/document_builder.rb +0 -60
  269. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/child_docs.rb +0 -30
  270. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/default_body.rb +0 -18
  271. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/instances/macros/todo.rb +0 -18
  272. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/logging/catcher.rb +0 -44
  273. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/logging/error.rb +0 -16
  274. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/source_generators/base.rb +0 -24
  275. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/instance_to_build.rb +0 -44
  276. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base/theme.rb +0 -45
  277. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/base.rb +0 -42
  278. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/document/media.rb +0 -27
  279. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/document/title.rb +0 -30
  280. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/document.rb +0 -55
  281. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/runners/build.rb +0 -55
  282. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/runners/document/build.rb +0 -49
  283. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/runners/document.rb +0 -26
  284. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/runners/documents.rb +0 -26
  285. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/runners/ignore_errors_option.rb +0 -42
  286. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0/sources/runners.rb +0 -11
  287. data/sub/avm-eac_asciidoctor_base0/lib/avm/eac_asciidoctor_base0.rb +0 -11
  288. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/file_formats/base_spec.rb +0 -11
  289. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build/document_spec.rb +0 -79
  290. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build/document_spec_files/pre_processed_root_body.adoc +0 -25
  291. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec.rb +0 -19
  292. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/_media/a_media_file +0 -1
  293. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/_media/a_media_file +0 -1
  294. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/body.adoc +0 -11
  295. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc1/title +0 -1
  296. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/body.adoc +0 -11
  297. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/_media/a_media_file +0 -1
  298. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/body.adoc +0 -11
  299. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/doc2_1/title +0 -1
  300. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.source/content/doc2/title +0 -1
  301. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/_media/a_media_file +0 -1
  302. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/_theme/main.css +0 -1
  303. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc1/_media/a_media_file +0 -1
  304. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc1/index.html +0 -1
  305. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/doc2_1/_media/a_media_file +0 -1
  306. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/doc2_1/index.html +0 -1
  307. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/doc2/index.html +0 -1
  308. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/instances/build_spec_files/first.target/index.html +0 -1
  309. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec.rb +0 -5
  310. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec_files/no_options/content/body.adoc +0 -11
  311. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec_files/no_options/content/title +0 -1
  312. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/source_generators/base_spec_files/no_options/theme/main.css +0 -1
  313. data/sub/avm-eac_asciidoctor_base0/spec/lib/avm/eac_asciidoctor_base0/sources/base_spec.rb +0 -13
  314. data/sub/avm-eac_asciidoctor_base0/spec/spec_helper/eac_asciidoctor_base0_stubs.rb +0 -55
  315. data/sub/avm-eac_asciidoctor_base0/template/avm/eac_asciidoctor_base0/source_generators/base/content/body.adoc +0 -11
  316. data/sub/avm-eac_asciidoctor_base0/template/avm/eac_asciidoctor_base0/source_generators/base/content/title +0 -1
  317. data/sub/avm-eac_asciidoctor_base0/template/avm/eac_asciidoctor_base0/source_generators/base/theme/main.css +0 -1
  318. /data/sub/{avm-eac_asciidoctor_base0 → avm}/Gemfile +0 -0
  319. /data/sub/{avm-eac_asciidoctor_base0/spec → avm/spec/meta}/rubocop_spec.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e4840c4734ec0c58d7c079a6c17a26cb0290cc2d1778ed77389385e1b424a123
4
- data.tar.gz: cd9f0e6906f3ba6a0c6cc92fc117794e8766ab5be2debfc86e54193be2230b0a
3
+ metadata.gz: 3c238afff9e0c430036d31ec94a2cca46321b0dcc1202cf9639a6bef40e5937c
4
+ data.tar.gz: 15dba60843466cfaf3e4b80ae558ef42b568ddedbc7660faf7a32e229333ef83
5
5
  SHA512:
6
- metadata.gz: 5f03987a85b787770d0c46b0a493d348e32753d8f4e42b0476358305d5f467cd90b27cf4edfd969631d8f2e31ded98185cbb3b03308a563f7ba619876b50d06c
7
- data.tar.gz: 3f5170edca1d968c662c64c9d688cecdb1029b1bb2a0eba9f2b024ff9bf6072d1d16adcc51ab9eff34cbea765103de553b2efdd7eccc711d370cf1cb45566fa5
6
+ metadata.gz: 7ae228bbfc949155b6a373a2322d38135dd7598899664eef16695368cd0eeb3c2547b111d9ca82d979502a21587383bbc50ee65a4fa2ffc7da85e254e0c9070a
7
+ data.tar.gz: 3cd71c8658d6e17dafac24ba64cbb6ab41c4523af92d5ce310ca970fc0e2734927ece6af06160da916a87cf87b0e6d432bf2c15b25b7db26f0e4bd9405ff98ff
data/Gemfile.lock CHANGED
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.113.0)
5
- avm (~> 0.98, >= 0.98.5)
4
+ eac_tools (0.114.0)
5
+ avm (~> 0.100)
6
6
  avm-eac_asciidoctor_base0 (~> 0.27)
7
7
  avm-eac_generic_base0 (~> 0.15, >= 0.15.2)
8
8
  avm-eac_github_base0 (~> 0.4, >= 0.4.1)
@@ -15,8 +15,8 @@ PATH
15
15
  avm-eac_rails_base1 (~> 0.12)
16
16
  avm-eac_redmine_base0 (~> 0.26)
17
17
  avm-eac_redmine_plugin_base0 (~> 0.5)
18
- avm-eac_ruby_base0 (~> 0.1)
19
- avm-eac_ruby_base1 (~> 0.39)
18
+ avm-eac_ruby_base0 (~> 0.2)
19
+ avm-eac_ruby_base1 (~> 0.40)
20
20
  avm-eac_webapp_base0 (~> 0.22, >= 0.22.1)
21
21
  avm-eac_wordpress_base0 (~> 0.3, >= 0.3.2)
22
22
  avm-git (~> 0.21, >= 0.21.2)
@@ -24,15 +24,16 @@ PATH
24
24
  eac_ruby_utils (~> 0.130)
25
25
 
26
26
  PATH
27
- remote: sub/avm-eac_asciidoctor_base0
27
+ remote: sub/avm
28
28
  specs:
29
- avm-eac_asciidoctor_base0 (0.27.0)
30
- asciidoctor (~> 2.0, >= 2.0.26)
31
- avm-eac_webapp_base0 (~> 0.22, >= 0.22.1)
29
+ avm (0.100.0)
30
+ eac_cli (~> 0.46)
31
+ eac_config (~> 0.15)
32
+ eac_docker (~> 0.8)
32
33
  eac_fs (~> 0.20, >= 0.20.1)
33
34
  eac_ruby_utils (~> 0.130)
34
- os (~> 1.1, >= 1.1.4)
35
- rouge (~> 3.30)
35
+ eac_templates (~> 0.8, >= 0.8.3)
36
+ minitar (~> 0.12, >= 0.12.1)
36
37
 
37
38
  GEM
38
39
  remote: https://rubygems.org/
@@ -47,25 +48,23 @@ GEM
47
48
  public_suffix (>= 2.0.2, < 8.0)
48
49
  aranha (0.20.0)
49
50
  eac_ruby_utils (~> 0.128)
50
- aranha-parsers (0.26.3)
51
+ aranha-parsers (0.27.0)
51
52
  activesupport (>= 4.0.0)
52
- addressable (~> 2.8, >= 2.8.9)
53
+ addressable (~> 2.9)
53
54
  aranha (~> 0.20)
54
55
  eac_envs-http (~> 0.7, >= 0.7.1)
55
56
  eac_ruby_utils (~> 0.130)
56
- nokogiri (~> 1.19, >= 1.19.1)
57
- ofx-parser (~> 1.1)
57
+ nokogiri (~> 1.19, >= 1.19.2)
58
58
  asciidoctor (2.0.26)
59
59
  ast (2.4.3)
60
60
  attr_extras (7.1.0)
61
- avm (0.98.5)
62
- eac_cli (~> 0.45)
63
- eac_config (~> 0.15)
64
- eac_docker (~> 0.8)
65
- eac_fs (~> 0.20)
61
+ avm-eac_asciidoctor_base0 (0.27.0)
62
+ asciidoctor (~> 2.0, >= 2.0.26)
63
+ avm-eac_webapp_base0 (~> 0.22, >= 0.22.1)
64
+ eac_fs (~> 0.20, >= 0.20.1)
66
65
  eac_ruby_utils (~> 0.130)
67
- eac_templates (~> 0.8, >= 0.8.3)
68
- minitar (~> 0.12, >= 0.12.1)
66
+ os (~> 1.1, >= 1.1.4)
67
+ rouge (~> 3.30)
69
68
  avm-eac_generic_base0 (0.15.2)
70
69
  avm (~> 0.98, >= 0.98.2)
71
70
  eac_ruby_utils (~> 0.128, >= 0.128.6)
@@ -110,15 +109,15 @@ GEM
110
109
  avm-eac_redmine_plugin_base0 (0.5.0)
111
110
  avm-eac_ruby_base1 (~> 0.38, >= 0.38.1)
112
111
  eac_ruby_utils (~> 0.128, >= 0.128.6)
113
- avm-eac_ruby_base0 (0.1.0)
114
- avm-eac_ruby_base1 (~> 0.34)
115
- eac_ruby_utils (~> 0.122)
116
- avm-eac_ruby_base1 (0.39.0)
117
- aranha-parsers (~> 0.26, >= 0.26.2)
118
- avm (~> 0.98, >= 0.98.4)
112
+ avm-eac_ruby_base0 (0.2.0)
113
+ avm-eac_ruby_base1 (~> 0.40)
114
+ eac_ruby_utils (~> 0.130)
115
+ avm-eac_ruby_base1 (0.40.0)
116
+ aranha-parsers (~> 0.27)
117
+ avm (~> 0.99, >= 0.98.5)
119
118
  avm-eac_generic_base0 (~> 0.15, >= 0.15.2)
120
119
  eac_envs-http (~> 0.7, >= 0.7.1)
121
- eac_ruby_utils (~> 0.129)
120
+ eac_ruby_utils (~> 0.130)
122
121
  avm-eac_ubuntu_base0 (0.7.0)
123
122
  avm (~> 0.98, >= 0.98.2)
124
123
  eac_ruby_utils (~> 0.128, >= 0.128.6)
@@ -150,11 +149,11 @@ GEM
150
149
  parslet (~> 2.0)
151
150
  diff-lcs (1.6.2)
152
151
  drb (2.2.3)
153
- eac_cli (0.45.0)
152
+ eac_cli (0.46.0)
154
153
  clipboard (~> 2.0)
155
154
  colorize (~> 0.8, >= 0.8.1)
156
155
  eac_config (~> 0.15)
157
- eac_ruby_utils (~> 0.128, >= 0.128.6)
156
+ eac_ruby_utils (~> 0.130)
158
157
  tty-table (~> 0.12)
159
158
  eac_config (0.15.0)
160
159
  addressable (~> 2.8, >= 2.8.7)
@@ -224,26 +223,23 @@ GEM
224
223
  git (1.19.1)
225
224
  addressable (~> 2.8)
226
225
  rchardet (~> 1.8)
227
- hpricot (0.8.6)
228
226
  htmlbeautifier (1.4.3)
229
227
  i18n (1.14.8)
230
228
  concurrent-ruby (~> 1.0)
231
- json (2.19.3)
229
+ json (2.19.4)
232
230
  language_server-protocol (3.17.0.5)
233
231
  lint_roller (1.1.0)
234
232
  logger (1.7.0)
235
233
  minitar (0.12.1)
236
- minitest (6.0.3)
234
+ minitest (6.0.5)
237
235
  drb (~> 2.0)
238
236
  prism (~> 1.5)
239
237
  multipart-post (2.4.1)
240
238
  net-http (0.9.1)
241
239
  uri (>= 0.11.1)
242
240
  net-ssh (4.2.0)
243
- nokogiri (1.19.2-x86_64-linux-gnu)
241
+ nokogiri (1.19.3-x86_64-linux-gnu)
244
242
  racc (~> 1.4)
245
- ofx-parser (1.1.0)
246
- hpricot (>= 0.6)
247
243
  optimist (3.2.1)
248
244
  os (1.1.4)
249
245
  parallel (1.28.0)
@@ -333,7 +329,7 @@ PLATFORMS
333
329
  x86_64-linux-gnu
334
330
 
335
331
  DEPENDENCIES
336
- avm-eac_asciidoctor_base0!
332
+ avm!
337
333
  eac_ruby_gem_support (~> 0.12, >= 0.12.2)
338
334
  eac_tools!
339
335
 
data/eac_tools.gemspec CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
16
16
 
17
17
  s.required_ruby_version = '>= 2.7.0'
18
18
 
19
- s.add_dependency 'avm', '~> 0.98', '>= 0.98.5'
19
+ s.add_dependency 'avm', '~> 0.100'
20
20
  s.add_dependency 'avm-eac_asciidoctor_base0', '~> 0.27'
21
21
  s.add_dependency 'avm-eac_generic_base0', '~> 0.15', '>= 0.15.2'
22
22
  s.add_dependency 'avm-eac_github_base0', '~> 0.4', '>= 0.4.1'
@@ -29,8 +29,8 @@ Gem::Specification.new do |s|
29
29
  s.add_dependency 'avm-eac_rails_base1', '~> 0.12'
30
30
  s.add_dependency 'avm-eac_redmine_base0', '~> 0.26'
31
31
  s.add_dependency 'avm-eac_redmine_plugin_base0', '~> 0.5'
32
- s.add_dependency 'avm-eac_ruby_base0', '~> 0.1'
33
- s.add_dependency 'avm-eac_ruby_base1', '~> 0.39'
32
+ s.add_dependency 'avm-eac_ruby_base0', '~> 0.2'
33
+ s.add_dependency 'avm-eac_ruby_base1', '~> 0.40'
34
34
  s.add_dependency 'avm-eac_webapp_base0', '~> 0.22', '>= 0.22.1'
35
35
  s.add_dependency 'avm-eac_wordpress_base0', '~> 0.3', '>= 0.3.2'
36
36
  s.add_dependency 'avm-git', '~> 0.21', '>= 0.21.2'
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.113.0'
4
+ VERSION = '0.114.0'
5
5
  end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'avm/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'avm'
9
+ s.version = Avm::VERSION
10
+ s.authors = ['Eduardo H. Bogoni']
11
+ s.summary = 'Ruby base library for Agora Vai! Methodology (https://avm.esquiloazul.tech).'
12
+
13
+ s.files = Dir.glob('{lib,locale,template}/**/*', File::FNM_DOTMATCH)
14
+ .reject { |f| ['.', '..'].include?(File.basename(f)) }
15
+ s.required_ruby_version = '>= 2.7'
16
+
17
+ s.add_dependency 'eac_cli', '~> 0.46'
18
+ s.add_dependency 'eac_config', '~> 0.15'
19
+ s.add_dependency 'eac_docker', '~> 0.8'
20
+ s.add_dependency 'eac_fs', '~> 0.20', '>= 0.20.1'
21
+ s.add_dependency 'eac_ruby_utils', '~> 0.130'
22
+ s.add_dependency 'eac_templates', '~> 0.8', '>= 0.8.3'
23
+ s.add_dependency 'minitar', '~> 0.12', '>= 0.12.1'
24
+
25
+ s.add_development_dependency 'avm-eac_ruby_base1', '~> 0.40'
26
+ s.add_development_dependency 'avm-git', '~> 0.21', '>= 0.21.2'
27
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.12', '>= 0.12.2'
28
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module ApplicationScms
5
+ class Base
6
+ acts_as_abstract
7
+
8
+ class << self
9
+ # @return [String]
10
+ def type_name
11
+ name.gsub(/#{Regexp.quote('::ApplicationScms::Base')}$/, '').demodulize
12
+ end
13
+ end
14
+
15
+ # !method initialize(application)
16
+ # @param application [Avm::Application::Base]
17
+ common_constructor :application
18
+ delegate :type_name, to: :class
19
+
20
+ # @param path [Pathname]
21
+ # @return [Pathname]
22
+ def assert_main_at(path) # rubocop:disable Lint/UnusedMethodArgument
23
+ raise_abstract_method __method__
24
+ end
25
+
26
+ # @return [String]
27
+ def to_s
28
+ "#{type_name}[#{to_s_type_specific}]"
29
+ end
30
+
31
+ # @return [String]
32
+ def to_s_type_specific
33
+ ''
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module ApplicationStereotypes
5
+ class Base
6
+ enable_listable
7
+ lists.add_symbol :resource, :instance, :source, :source_generator
8
+ common_constructor :namespace_module, :resources do
9
+ self.resources = self.class.lists.resource.hash_keys_validate!(resources)
10
+ end
11
+
12
+ # @return [String]
13
+ def name
14
+ namespace_module.name.demodulize
15
+ end
16
+
17
+ # @return [String]
18
+ def to_s
19
+ name
20
+ end
21
+
22
+ lists.resource.each_value do |resource|
23
+ define_method "#{resource}_class" do
24
+ resources[resource]
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ class AutoLocalSourcePath
7
+ acts_as_instance_method
8
+ common_constructor :application
9
+
10
+ # @return [Pathname]
11
+ def result
12
+ application.scm.assert_main_at(fs_cache.path.to_pathname)
13
+ end
14
+
15
+ # @return [String]
16
+ def fs_object_id
17
+ application.id.to_s.parameterize
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module LocalInstance
7
+ LOCAL_INSTANCE_SUFFIX = 'dev'
8
+
9
+ # @return [String]
10
+ def local_instance_id
11
+ ::Avm::Instances::Ids.build(id, local_instance_suffix)
12
+ end
13
+
14
+ # @return [String]
15
+ def local_instance_suffix
16
+ LOCAL_INSTANCE_SUFFIX
17
+ end
18
+
19
+ private
20
+
21
+ # @return [Avm::Instances::Base]
22
+ def local_instance_uncached
23
+ instance(local_instance_suffix)
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module LocalSource
7
+ # @return [Pathname]
8
+ def local_source_path
9
+ user_local_source_path || auto_local_source_path
10
+ end
11
+
12
+ # @return [EacConfig::Entry]
13
+ def local_source_path_entry
14
+ ::EacConfig::Node.context.current.entry([local_instance_id, 'install', 'path'])
15
+ end
16
+
17
+ # @return [Path, nil]
18
+ def user_local_source_path
19
+ local_source_path_entry.value.if_present(&:to_pathname)
20
+ end
21
+
22
+ private
23
+
24
+ # @return [Avm::Sources::Base]
25
+ def local_source_uncached
26
+ ::Avm::Registry.sources.detect(local_source_path)
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module Naming
7
+ DEFAULT_NAME = '_Undefined_'
8
+
9
+ # @return [String]
10
+ def default_name
11
+ DEFAULT_NAME
12
+ end
13
+
14
+ # @return [String]
15
+ def name
16
+ name_from_configuration || default_name
17
+ end
18
+
19
+ # @return [String]
20
+ def name_from_configuration
21
+ entry(::Avm::Instances::EntryKeys::NAME).optional_value
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module Organization
7
+ DEFAULT_ORGANIZATION = '_undefined_'
8
+ ORGANIZATION_CONFIG_KEY = 'organization'
9
+
10
+ # @return [String]
11
+ def default_organization
12
+ DEFAULT_ORGANIZATION
13
+ end
14
+
15
+ # @return [String, nil]
16
+ def organization_by_configuration
17
+ entry(ORGANIZATION_CONFIG_KEY).optional_value
18
+ end
19
+
20
+ # @return [String]
21
+ def organization
22
+ organization_by_configuration || default_organization
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module Publishing
7
+ PUBLISHABLE_KEY = 'publishable'
8
+
9
+ def publishable?
10
+ publishable_value ? true : false
11
+ end
12
+
13
+ def stereotype_publishable?(stereotype)
14
+ return publishable? unless publishable_value.is_a?(::Hash)
15
+
16
+ parse_publishable_value(publishable_value[stereotype.stereotype_name], true)
17
+ end
18
+
19
+ private
20
+
21
+ def publishable_value
22
+ parse_publishable_value(entry(PUBLISHABLE_KEY).optional_value, false)
23
+ end
24
+
25
+ def parse_publishable_value(value, hash_to_true)
26
+ return value.with_indifferent_access if parse_publishable_value_hash?(value, hash_to_true)
27
+ return true if value.nil? || value == true
28
+ return false if value == false || value.is_a?(::EacRubyUtils::BlankNotBlank)
29
+
30
+ value ? true : false
31
+ end
32
+
33
+ def parse_publishable_value_hash?(value, hash_to_true)
34
+ !hash_to_true && value.is_a?(::Hash)
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module Scm
7
+ common_concern do
8
+ uri_components_entries_values 'scm', %w[repos_path ssh_username type]
9
+ end
10
+
11
+ # @return [Avm::ApplicationScms::Base]
12
+ def scm
13
+ @scm ||= ::Avm::Registry.application_scms.detect(self)
14
+ end
15
+
16
+ # @param value [String]
17
+ # @return [String]
18
+ def scm_repos_path_inherited_value_proc(value)
19
+ value.to_pathname.join(id).to_path
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ module Stereotype
7
+ # @return [Avm::ApplicationStereotypes::Base, nil]
8
+ def stereotype_by_configuration
9
+ entry('stereotype').optional_value.if_present do |v|
10
+ ::Avm::Registry.application_stereotypes.detect(v)
11
+ end
12
+ end
13
+
14
+ # @return [Avm::ApplicationStereotypes::Base, nil]
15
+ def stereotype_by_source
16
+ ::Avm::Registry.application_stereotypes.detect_optional(local_source.class)
17
+ end
18
+
19
+ private
20
+
21
+ # @return [Avm::ApplicationStereotypes::Base]
22
+ def stereotype_uncached
23
+ stereotype_by_configuration || stereotype_by_source ||
24
+ raise("Could not find stereotype for application \"#{self}\"")
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Applications
5
+ class Base
6
+ enable_simple_cache
7
+ include ::Avm::Entries::Base
8
+
9
+ AVM_TYPE = 'Application'
10
+
11
+ class << self
12
+ # @param id [String]
13
+ # @return [Avm::Applications::Base]
14
+ def by_id(id)
15
+ new(id)
16
+ end
17
+ end
18
+
19
+ common_constructor :id do
20
+ self.id = id.to_s
21
+ end
22
+
23
+ def to_s
24
+ id
25
+ end
26
+
27
+ def instance(suffix)
28
+ stereotype.instance_class.new(self, suffix)
29
+ end
30
+
31
+ require_sub __FILE__, include_modules: true, require_mode: :kernel
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'active_support/callbacks'
4
+
5
+ module Avm
6
+ module Data
7
+ module Callbacks
8
+ common_concern do
9
+ include ::ActiveSupport::Callbacks
10
+
11
+ %i[dump load].each do |action|
12
+ define_callbacks action
13
+
14
+ %i[before after].each do |callback|
15
+ method_name = "#{callback}_#{action}"
16
+ singleton_class.class_eval do
17
+ define_method method_name do |callback_method = nil, &block|
18
+ if callback_method
19
+ set_callback action, callback, callback_method
20
+ else
21
+ set_callback action, callback, &block
22
+ end
23
+ self
24
+ end
25
+ end
26
+
27
+ define_method method_name do |callback_method = nil, &block|
28
+ singleton_class.send(method_name, callback_method, &block)
29
+ self
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module Data
5
+ class Clearer < ::Avm::Data::Performer
6
+ def cannot_perform_reason
7
+ nil
8
+ end
9
+
10
+ protected
11
+
12
+ def internal_perform
13
+ data_owner.clear(*include_excludes_arguments)
14
+ end
15
+ end
16
+ end
17
+ end