eac_tools 0.102.1 → 0.103.1

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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +46 -43
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +26 -0
  5. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/apache_host.rb +10 -0
  6. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/database.rb +27 -0
  7. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/files.rb +18 -0
  8. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/gitolite.rb +52 -0
  9. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/install.rb +43 -0
  10. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/nodejs.rb +19 -0
  11. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/web.rb +17 -0
  12. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb +53 -0
  13. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/deploy.rb +16 -0
  14. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +110 -0
  15. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/entity_base.rb +31 -0
  16. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/project.rb +21 -0
  17. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/root.rb +17 -0
  18. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/wiki_page.rb +50 -0
  19. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api.rb +10 -0
  20. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/docker.rb +15 -0
  21. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/read.rb +25 -0
  22. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/write.rb +68 -0
  23. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page.rb +26 -0
  24. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project.rb +22 -0
  25. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project_rename.rb +53 -0
  26. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +32 -0
  27. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/core_update.rb +125 -0
  28. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/core_update.rb +61 -0
  29. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/docker.rb +16 -0
  30. data/sub/{avm-git/lib/avm/git → avm-eac_redmine_base0/lib/avm/eac_redmine_base0}/version.rb +2 -2
  31. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0.rb +16 -0
  32. data/sub/avm-eac_redmine_base0/locale/en.yml +6 -0
  33. data/sub/avm-eac_redmine_base0/locale/pt-BR.yml +6 -0
  34. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/apache_host_spec.rb +22 -0
  35. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/apache_host_spec_files/apache_host_spec_no_ssl_content.conf +11 -0
  36. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec.rb +26 -0
  37. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec_files/config.yml +10 -0
  38. data/sub/{avm-git → avm-eac_redmine_base0}/spec/spec_helper.rb +3 -2
  39. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/install.sh.template +45 -0
  40. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/secrets.yml +8 -0
  41. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile.template +37 -0
  42. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_host_dockerfile +8 -0
  43. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_http_virtualhost.conf.template +10 -0
  44. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_https_virtualhost.conf.template +16 -0
  45. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_path_dockerfile +5 -0
  46. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/start.sh.template +52 -0
  47. data/sub/eac_cli/Gemfile +8 -0
  48. data/sub/eac_cli/eac_cli.gemspec +23 -0
  49. data/sub/eac_cli/lib/eac_cli/config/entry/options.rb +55 -0
  50. data/sub/eac_cli/lib/eac_cli/config/entry/undefined.rb +26 -0
  51. data/sub/eac_cli/lib/eac_cli/config/entry.rb +55 -0
  52. data/sub/eac_cli/lib/eac_cli/config.rb +15 -0
  53. data/sub/eac_cli/lib/eac_cli/core_ext.rb +4 -0
  54. data/sub/eac_cli/lib/eac_cli/default_runner.rb +12 -0
  55. data/sub/eac_cli/lib/eac_cli/definition/alternative.rb +101 -0
  56. data/sub/eac_cli/lib/eac_cli/definition/argument_option.rb +19 -0
  57. data/sub/eac_cli/lib/eac_cli/definition/boolean_option.rb +25 -0
  58. data/sub/eac_cli/lib/eac_cli/definition/error.rb +8 -0
  59. data/sub/eac_cli/lib/eac_cli/definition/option/initialize_args_parser.rb +48 -0
  60. data/sub/eac_cli/lib/eac_cli/definition/option.rb +70 -0
  61. data/sub/eac_cli/lib/eac_cli/definition/option_or_positional.rb +41 -0
  62. data/sub/eac_cli/lib/eac_cli/definition/positional.rb +50 -0
  63. data/sub/eac_cli/lib/eac_cli/definition.rb +104 -0
  64. data/sub/eac_cli/lib/eac_cli/enum.rb +42 -0
  65. data/sub/eac_cli/lib/eac_cli/old_configs/entry_reader.rb +76 -0
  66. data/sub/eac_cli/lib/eac_cli/old_configs/password_entry_reader.rb +14 -0
  67. data/sub/eac_cli/lib/eac_cli/old_configs/read_entry_options.rb +42 -0
  68. data/sub/eac_cli/lib/eac_cli/old_configs/store_passwords_entry_reader.rb +23 -0
  69. data/sub/eac_cli/lib/eac_cli/old_configs.rb +31 -0
  70. data/sub/eac_cli/lib/eac_cli/parser/alternative/any_options.rb +17 -0
  71. data/sub/eac_cli/lib/eac_cli/parser/alternative/argv.rb +19 -0
  72. data/sub/eac_cli/lib/eac_cli/parser/alternative/double_dash.rb +24 -0
  73. data/sub/eac_cli/lib/eac_cli/parser/alternative/long_options.rb +37 -0
  74. data/sub/eac_cli/lib/eac_cli/parser/alternative/option_argument.rb +29 -0
  75. data/sub/eac_cli/lib/eac_cli/parser/alternative/options.rb +29 -0
  76. data/sub/eac_cli/lib/eac_cli/parser/alternative/positionals.rb +30 -0
  77. data/sub/eac_cli/lib/eac_cli/parser/alternative/short_options.rb +54 -0
  78. data/sub/eac_cli/lib/eac_cli/parser/alternative.rb +99 -0
  79. data/sub/eac_cli/lib/eac_cli/parser/collector.rb +52 -0
  80. data/sub/eac_cli/lib/eac_cli/parser/error.rb +13 -0
  81. data/sub/eac_cli/lib/eac_cli/parser.rb +32 -0
  82. data/sub/eac_cli/lib/eac_cli/patches/object/runner_with.rb +22 -0
  83. data/sub/eac_cli/lib/eac_cli/patches/object.rb +5 -0
  84. data/sub/{avm-git/lib/avm/git/issue.rb → eac_cli/lib/eac_cli/patches.rb} +0 -7
  85. data/sub/eac_cli/lib/eac_cli/rspec/setup.rb +41 -0
  86. data/sub/eac_cli/lib/eac_cli/rspec.rb +7 -0
  87. data/sub/eac_cli/lib/eac_cli/runner/after_class_methods.rb +34 -0
  88. data/sub/eac_cli/lib/eac_cli/runner/class_runner.rb +32 -0
  89. data/sub/eac_cli/lib/eac_cli/runner/context.rb +57 -0
  90. data/sub/eac_cli/lib/eac_cli/runner/context_responders/base.rb +22 -0
  91. data/sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb +24 -0
  92. data/sub/eac_cli/lib/eac_cli/runner/context_responders/runner.rb +17 -0
  93. data/sub/eac_cli/lib/eac_cli/runner/context_responders/runner_missing_method.rb +29 -0
  94. data/sub/eac_cli/lib/eac_cli/runner/context_responders/set.rb +41 -0
  95. data/sub/{avm-git/lib/avm/git/launcher_stereotypes.rb → eac_cli/lib/eac_cli/runner/context_responders.rb} +3 -3
  96. data/sub/eac_cli/lib/eac_cli/runner/exit.rb +14 -0
  97. data/sub/eac_cli/lib/eac_cli/runner/for_context.rb +35 -0
  98. data/sub/eac_cli/lib/eac_cli/runner/instance_methods.rb +45 -0
  99. data/sub/eac_cli/lib/eac_cli/runner.rb +47 -0
  100. data/sub/eac_cli/lib/eac_cli/runner_with/confirmation/input_result.rb +60 -0
  101. data/sub/eac_cli/lib/eac_cli/runner_with/confirmation.rb +65 -0
  102. data/sub/eac_cli/lib/eac_cli/runner_with/help/builder/alternative.rb +61 -0
  103. data/sub/eac_cli/lib/eac_cli/runner_with/help/builder.rb +79 -0
  104. data/sub/eac_cli/lib/eac_cli/runner_with/help/layout.rb +38 -0
  105. data/sub/eac_cli/lib/eac_cli/runner_with/help.rb +51 -0
  106. data/sub/eac_cli/lib/eac_cli/runner_with/input.rb +32 -0
  107. data/sub/eac_cli/lib/eac_cli/runner_with/output.rb +54 -0
  108. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/asciidoc_formatter.rb +70 -0
  109. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/base_formatter.rb +12 -0
  110. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/csv_formatter.rb +21 -0
  111. data/sub/eac_cli/lib/eac_cli/runner_with/output_item/yaml_formatter.rb +16 -0
  112. data/sub/eac_cli/lib/eac_cli/runner_with/output_item.rb +47 -0
  113. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/base_formatter.rb +44 -0
  114. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/csv_formatter.rb +24 -0
  115. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/tty_formatter.rb +34 -0
  116. data/sub/eac_cli/lib/eac_cli/runner_with/output_list/yaml_formatter.rb +21 -0
  117. data/sub/eac_cli/lib/eac_cli/runner_with/output_list.rb +39 -0
  118. data/sub/eac_cli/lib/eac_cli/runner_with/subcommands/definition_concern.rb +10 -0
  119. data/sub/eac_cli/lib/eac_cli/runner_with/subcommands.rb +124 -0
  120. data/sub/eac_cli/lib/eac_cli/runner_with.rb +7 -0
  121. data/sub/eac_cli/lib/eac_cli/runner_with_set.rb +54 -0
  122. data/sub/eac_cli/lib/eac_cli/speaker/constants.rb +11 -0
  123. data/sub/eac_cli/lib/eac_cli/speaker/input_blocked.rb +14 -0
  124. data/sub/eac_cli/lib/eac_cli/speaker/input_requested.rb +8 -0
  125. data/sub/eac_cli/lib/eac_cli/speaker/list.rb +84 -0
  126. data/sub/eac_cli/lib/eac_cli/speaker/options.rb +42 -0
  127. data/sub/eac_cli/lib/eac_cli/speaker/request_from_list.rb +40 -0
  128. data/sub/eac_cli/lib/eac_cli/speaker.rb +114 -0
  129. data/sub/eac_cli/lib/eac_cli/version.rb +5 -0
  130. data/sub/eac_cli/lib/eac_cli.rb +14 -0
  131. data/sub/eac_cli/spec/lib/eac_cli/definition/alternative_spec.rb +18 -0
  132. data/sub/eac_cli/spec/lib/eac_cli/old_configs_spec.rb +14 -0
  133. data/sub/eac_cli/spec/lib/eac_cli/parser/alternative/subcommands_spec.rb +58 -0
  134. data/sub/eac_cli/spec/lib/eac_cli/parser/alternative_spec.rb +89 -0
  135. data/sub/eac_cli/spec/lib/eac_cli/runner/for_context_spec.rb +79 -0
  136. data/sub/eac_cli/spec/lib/eac_cli/runner_spec.rb +129 -0
  137. data/sub/eac_cli/spec/lib/eac_cli/runner_with/confirmation/input_result_spec.rb +36 -0
  138. data/sub/eac_cli/spec/lib/eac_cli/runner_with/confirmation_spec.rb +42 -0
  139. data/sub/eac_cli/spec/lib/eac_cli/runner_with/help/layout_spec.rb +21 -0
  140. data/sub/eac_cli/spec/lib/eac_cli/runner_with/help_spec.rb +51 -0
  141. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_list_spec.rb +57 -0
  142. data/sub/eac_cli/spec/lib/eac_cli/runner_with/output_spec.rb +81 -0
  143. data/sub/eac_cli/spec/lib/eac_cli/runner_with/subcommands_spec.rb +99 -0
  144. data/sub/eac_cli/spec/lib/eac_cli/speaker_spec.rb +36 -0
  145. data/sub/eac_cli/spec/rubocop_spec.rb +3 -0
  146. data/sub/eac_cli/spec/spec_helper.rb +4 -0
  147. metadata +157 -130
  148. data/sub/avm-git/avm-git.gemspec +0 -25
  149. data/sub/avm-git/lib/avm/git/application_scms/base/assert_main_at.rb +0 -44
  150. data/sub/avm-git/lib/avm/git/application_scms/base.rb +0 -18
  151. data/sub/avm-git/lib/avm/git/application_scms.rb +0 -9
  152. data/sub/avm-git/lib/avm/git/commit/class_methods.rb +0 -29
  153. data/sub/avm-git/lib/avm/git/commit/diff_tree_line.rb +0 -32
  154. data/sub/avm-git/lib/avm/git/commit/file.rb +0 -42
  155. data/sub/avm-git/lib/avm/git/commit.rb +0 -57
  156. data/sub/avm-git/lib/avm/git/issue/complete/commits.rb +0 -40
  157. data/sub/avm-git/lib/avm/git/issue/complete/git_subrepos.rb +0 -20
  158. data/sub/avm-git/lib/avm/git/issue/complete/local_branch.rb +0 -59
  159. data/sub/avm-git/lib/avm/git/issue/complete/local_tag.rb +0 -37
  160. data/sub/avm-git/lib/avm/git/issue/complete/push.rb +0 -60
  161. data/sub/avm-git/lib/avm/git/issue/complete/remote.rb +0 -33
  162. data/sub/avm-git/lib/avm/git/issue/complete/test.rb +0 -34
  163. data/sub/avm-git/lib/avm/git/issue/complete/tracker.rb +0 -21
  164. data/sub/avm-git/lib/avm/git/issue/complete/validation.rb +0 -36
  165. data/sub/avm-git/lib/avm/git/issue/complete/validations.rb +0 -54
  166. data/sub/avm-git/lib/avm/git/issue/complete/working_tree.rb +0 -19
  167. data/sub/avm-git/lib/avm/git/issue/complete.rb +0 -66
  168. data/sub/avm-git/lib/avm/git/launcher/base/class_methods.rb +0 -28
  169. data/sub/avm-git/lib/avm/git/launcher/base/dirty_files.rb +0 -21
  170. data/sub/avm-git/lib/avm/git/launcher/base/remotes.rb +0 -37
  171. data/sub/avm-git/lib/avm/git/launcher/base/subrepo.rb +0 -42
  172. data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +0 -54
  173. data/sub/avm-git/lib/avm/git/launcher/base.rb +0 -81
  174. data/sub/avm-git/lib/avm/git/launcher/error.rb +0 -13
  175. data/sub/avm-git/lib/avm/git/launcher/mirror_update.rb +0 -36
  176. data/sub/avm-git/lib/avm/git/launcher/publish_base.rb +0 -127
  177. data/sub/avm-git/lib/avm/git/launcher/remote.rb +0 -53
  178. data/sub/avm-git/lib/avm/git/launcher/sub_warp_base.rb +0 -36
  179. data/sub/avm-git/lib/avm/git/launcher/warp_base.rb +0 -63
  180. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/local_project_mixin.rb +0 -16
  181. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/publish.rb +0 -13
  182. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/warp.rb +0 -25
  183. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git.rb +0 -22
  184. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/publish.rb +0 -29
  185. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/warp.rb +0 -82
  186. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo.rb +0 -32
  187. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/publish.rb +0 -12
  188. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/warp.rb +0 -29
  189. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree.rb +0 -47
  190. data/sub/avm-git/lib/avm/git/launcher_stereotypes/provider.rb +0 -17
  191. data/sub/avm-git/lib/avm/git/organize/reference_update.rb +0 -32
  192. data/sub/avm-git/lib/avm/git/organize/repository.rb +0 -74
  193. data/sub/avm-git/lib/avm/git/organize.rb +0 -9
  194. data/sub/avm-git/lib/avm/git/revision_test.rb +0 -102
  195. data/sub/avm-git/lib/avm/git/runners/base/commit.rb +0 -96
  196. data/sub/avm-git/lib/avm/git/runners/base/deploy.rb +0 -108
  197. data/sub/avm-git/lib/avm/git/runners/base/dirty_files.rb +0 -42
  198. data/sub/avm-git/lib/avm/git/runners/base/organize.rb +0 -72
  199. data/sub/avm-git/lib/avm/git/runners/base/revisions_test.rb +0 -63
  200. data/sub/avm-git/lib/avm/git/runners/base/subrepo/check.rb +0 -45
  201. data/sub/avm-git/lib/avm/git/runners/base/subrepo/clone.rb +0 -80
  202. data/sub/avm-git/lib/avm/git/runners/base/subrepo/fix.rb +0 -69
  203. data/sub/avm-git/lib/avm/git/runners/base/subrepo.rb +0 -17
  204. data/sub/avm-git/lib/avm/git/runners/base.rb +0 -40
  205. data/sub/avm-git/lib/avm/git/runners.rb +0 -9
  206. data/sub/avm-git/lib/avm/git/scms/git/branch.rb +0 -28
  207. data/sub/avm-git/lib/avm/git/scms/git/branches.rb +0 -17
  208. data/sub/avm-git/lib/avm/git/scms/git/change_tracker.rb +0 -34
  209. data/sub/avm-git/lib/avm/git/scms/git/changed_file.rb +0 -25
  210. data/sub/avm-git/lib/avm/git/scms/git/changed_files.rb +0 -21
  211. data/sub/avm-git/lib/avm/git/scms/git/commit/deploy.rb +0 -37
  212. data/sub/avm-git/lib/avm/git/scms/git/commit/deploy_methods.rb +0 -24
  213. data/sub/avm-git/lib/avm/git/scms/git/commit.rb +0 -64
  214. data/sub/avm-git/lib/avm/git/scms/git/commit_dirty.rb +0 -32
  215. data/sub/avm-git/lib/avm/git/scms/git/commits.rb +0 -44
  216. data/sub/avm-git/lib/avm/git/scms/git/interval.rb +0 -28
  217. data/sub/avm-git/lib/avm/git/scms/git/milestones.rb +0 -18
  218. data/sub/avm-git/lib/avm/git/scms/git/remote.rb +0 -18
  219. data/sub/avm-git/lib/avm/git/scms/git/remotes.rb +0 -29
  220. data/sub/avm-git/lib/avm/git/scms/git/run_commit.rb +0 -54
  221. data/sub/avm-git/lib/avm/git/scms/git.rb +0 -46
  222. data/sub/avm-git/lib/avm/git/scms/git_sub_base/changed_file.rb +0 -19
  223. data/sub/avm-git/lib/avm/git/scms/git_sub_base/commit.rb +0 -23
  224. data/sub/avm-git/lib/avm/git/scms/git_sub_base/interval.rb +0 -23
  225. data/sub/avm-git/lib/avm/git/scms/git_sub_base.rb +0 -30
  226. data/sub/avm-git/lib/avm/git/scms/git_subrepo.rb +0 -33
  227. data/sub/avm-git/lib/avm/git/scms/git_subtree.rb +0 -29
  228. data/sub/avm-git/lib/avm/git/scms/provider.rb +0 -16
  229. data/sub/avm-git/lib/avm/git/scms.rb +0 -9
  230. data/sub/avm-git/lib/avm/git/subrepo_check/parent.rb +0 -48
  231. data/sub/avm-git/lib/avm/git/subrepo_check/remote.rb +0 -86
  232. data/sub/avm-git/lib/avm/git/subrepo_check/show_result.rb +0 -30
  233. data/sub/avm-git/lib/avm/git/subrepo_check.rb +0 -36
  234. data/sub/avm-git/lib/avm/git/subrepo_checks.rb +0 -57
  235. data/sub/avm-git/lib/avm/git/vendor/github.rb +0 -20
  236. data/sub/avm-git/lib/avm/git/vendor.rb +0 -9
  237. data/sub/avm-git/lib/avm/git.rb +0 -16
  238. data/sub/avm-git/locale/en.yml +0 -6
  239. data/sub/avm-git/locale/pt-BR.yml +0 -6
  240. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec.rb +0 -13
  241. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/add.source.out +0 -1
  242. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/add.target.yaml +0 -7
  243. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/modify.source.out +0 -1
  244. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/modify.target.yaml +0 -7
  245. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/remove.source.out +0 -1
  246. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/remove.target.yaml +0 -7
  247. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename.source.out +0 -2
  248. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename.target.yaml +0 -13
  249. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename_modify.source.out +0 -2
  250. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename_modify.target.yaml +0 -13
  251. data/sub/avm-git/spec/lib/avm/git/commit_spec.rb +0 -56
  252. data/sub/avm-git/spec/lib/avm/git/launcher/base_spec.rb +0 -45
  253. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec.rb +0 -83
  254. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_files/config.yml +0 -5
  255. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_settings.yml +0 -6
  256. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec.rb +0 -53
  257. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_files/config.yml +0 -3
  258. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_settings.yml +0 -6
  259. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec.rb +0 -126
  260. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append1/stub3.txt.template +0 -1
  261. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append2/stub4.txt +0 -1
  262. data/sub/avm-git/spec/lib/avm/git/scms/git/commit/deploy_spec.rb +0 -92
  263. data/sub/avm-git/spec/lib/avm/git/scms/git_spec.rb +0 -8
  264. data/sub/avm-git/spec/lib/avm/git/scms/git_subrepo_spec.rb +0 -8
  265. data/sub/avm-git/spec/lib/avm/git/vendor/github_spec.rb +0 -23
  266. /data/sub/{avm-git → avm-eac_redmine_base0}/Gemfile +0 -0
  267. /data/sub/{avm-git → avm-eac_redmine_base0}/spec/rubocop_spec.rb +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 190b18d503f3fd0fbf278c738604514541f821674d02f7341e2994ff2dfe350f
4
- data.tar.gz: 6a27fdf94ff94956fd101fe22c39f84e2c3da1b5d5139b2fe1e0220fad323547
3
+ metadata.gz: a14a2d3c04377c971fa57281231f46bc912e2a893273ffb2f81ec92077e02ca2
4
+ data.tar.gz: 1a82634e76a1bb0b9011211dc6496a13a75d0b25df803551f31aa057ef356bf8
5
5
  SHA512:
6
- metadata.gz: '078f12bcb53cccc2a264ce8d790f7ea965a02acf2f8f0c229314123095ce44181bd5d7258fea3c4f18c49b0dee86766a84a32520e1c8c7dd2b7301a3a043020f'
7
- data.tar.gz: f1ac013e6960db1380d8793b8faaee834766a3f6bfb1b47fbd94cdb4e8fe122960004d7a4e200a3c03715cff946be65b32694f5cb64b54712583c66b73176df2
6
+ metadata.gz: 30619647c892d8a5a4c63e6ce78d4c27be9b279c78024e089e8aaefd2553910127647f593b458f24f453fabcfe403f14b45340f5f08a62765aa4e3d263211627
7
+ data.tar.gz: e83e15985cabd61f2a2f43faeeff25ca8303a0a0d83f15d05ae32e94e5675b3c176cdc6062301c922955ca00c472eca5ce5bd929495c2f914ef50c5609374345
data/Gemfile.lock CHANGED
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eac_tools (0.102.1)
5
- avm (~> 0.97)
4
+ eac_tools (0.103.1)
5
+ avm (~> 0.97, >= 0.97.1)
6
6
  avm-eac_asciidoctor_base0 (~> 0.25)
7
7
  avm-eac_generic_base0 (~> 0.15, >= 0.15.1)
8
8
  avm-eac_github_base0 (~> 0.3)
@@ -13,7 +13,7 @@ PATH
13
13
  avm-eac_python_base0 (~> 0.2, >= 0.2.2)
14
14
  avm-eac_rails_base0 (~> 0.11, >= 0.11.1)
15
15
  avm-eac_rails_base1 (~> 0.10, >= 0.10.2)
16
- avm-eac_redmine_base0 (~> 0.22, >= 0.22.3)
16
+ avm-eac_redmine_base0 (~> 0.23, >= 0.23.1)
17
17
  avm-eac_redmine_plugin_base0 (~> 0.4, >= 0.4.1)
18
18
  avm-eac_ruby_base0 (~> 0.1)
19
19
  avm-eac_ruby_base1 (~> 0.38)
@@ -24,14 +24,25 @@ PATH
24
24
  eac_ruby_utils (~> 0.128, >= 0.128.3)
25
25
 
26
26
  PATH
27
- remote: sub/avm-git
27
+ remote: sub/avm-eac_redmine_base0
28
28
  specs:
29
- avm-git (0.20.2)
30
- avm (~> 0.97)
31
- avm-files (~> 0.9)
32
- eac_git (~> 0.18, >= 0.18.1)
29
+ avm-eac_redmine_base0 (0.23.1)
30
+ avm (~> 0.97, >= 0.97.1)
31
+ avm-eac_generic_base0 (~> 0.15, >= 0.15.1)
32
+ avm-eac_rails_base1 (~> 0.10, >= 0.10.2)
33
+ avm-eac_ubuntu_base0 (~> 0.6)
34
+ eac_fs (~> 0.19, >= 0.19.1)
35
+ eac_rest (~> 0.12)
33
36
  eac_ruby_utils (~> 0.128, >= 0.128.3)
34
- git (~> 1.19, >= 1.19.1)
37
+
38
+ PATH
39
+ remote: sub/eac_cli
40
+ specs:
41
+ eac_cli (0.44.1)
42
+ colorize (~> 0.8, >= 0.8.1)
43
+ eac_config (~> 0.15)
44
+ eac_ruby_utils (~> 0.128, >= 0.128.3)
45
+ tty-table (~> 0.12)
35
46
 
36
47
  GEM
37
48
  remote: https://rubygems.org/
@@ -57,9 +68,9 @@ GEM
57
68
  asciidoctor (2.0.23)
58
69
  ast (2.4.3)
59
70
  attr_extras (7.1.0)
60
- avm (0.97.0)
71
+ avm (0.97.1)
61
72
  clipboard (~> 1.4, >= 1.4.1)
62
- eac_cli (~> 0.43, >= 0.43.1)
73
+ eac_cli (~> 0.44)
63
74
  eac_config (~> 0.15)
64
75
  eac_docker (~> 0.7)
65
76
  eac_fs (~> 0.19, >= 0.19.1)
@@ -107,15 +118,6 @@ GEM
107
118
  avm-eac_ruby_base1 (~> 0.35, >= 0.35.1)
108
119
  avm-eac_webapp_base0 (~> 0.20, >= 0.20.1)
109
120
  eac_ruby_utils (~> 0.123)
110
- avm-eac_redmine_base0 (0.22.3)
111
- avm (~> 0.92)
112
- avm-eac_generic_base0 (~> 0.13)
113
- avm-eac_rails_base1 (~> 0.10)
114
- avm-eac_ubuntu_base0 (~> 0.5, >= 0.5.1)
115
- curb (~> 0.9, >= 0.9.11)
116
- eac_fs (~> 0.17)
117
- eac_rest (~> 0.12)
118
- eac_ruby_utils (~> 0.122)
119
121
  avm-eac_redmine_plugin_base0 (0.4.1)
120
122
  avm-eac_ruby_base1 (~> 0.33, >= 0.33.1)
121
123
  eac_ruby_utils (~> 0.121)
@@ -128,10 +130,10 @@ GEM
128
130
  avm-eac_generic_base0 (~> 0.15, >= 0.15.1)
129
131
  eac_envs-http (~> 0.7)
130
132
  eac_ruby_utils (~> 0.128, >= 0.128.3)
131
- avm-eac_ubuntu_base0 (0.5.1)
132
- avm (~> 0.86, >= 0.86.2)
133
- eac_ruby_utils (~> 0.121)
134
- eac_templates (~> 0.5, >= 0.5.1)
133
+ avm-eac_ubuntu_base0 (0.6.0)
134
+ avm (~> 0.97)
135
+ eac_ruby_utils (~> 0.128, >= 0.128.3)
136
+ eac_templates (~> 0.8, >= 0.8.1)
135
137
  avm-eac_webapp_base0 (0.21.1)
136
138
  avm (~> 0.96, >= 0.96.1)
137
139
  avm-eac_generic_base0 (~> 0.15, >= 0.15.1)
@@ -146,6 +148,12 @@ GEM
146
148
  eac_ruby_utils (~> 0.121)
147
149
  avm-files (0.9.0)
148
150
  avm (~> 0.95)
151
+ avm-git (0.20.2)
152
+ avm (~> 0.97)
153
+ avm-files (~> 0.9)
154
+ eac_git (~> 0.18, >= 0.18.1)
155
+ eac_ruby_utils (~> 0.128, >= 0.128.3)
156
+ git (~> 1.19, >= 1.19.1)
149
157
  avm-tools (0.163.3)
150
158
  avm (~> 0.96, >= 0.96.1)
151
159
  clipboard (~> 1.4, >= 1.4.1)
@@ -156,19 +164,13 @@ GEM
156
164
  concurrent-ruby (1.3.5)
157
165
  content-type (0.0.2)
158
166
  parslet (~> 2.0)
159
- curb (0.9.11)
160
167
  diff-lcs (1.6.2)
161
- eac_cli (0.44.0)
162
- colorize (~> 0.8, >= 0.8.1)
163
- eac_config (~> 0.15)
164
- eac_ruby_utils (~> 0.128, >= 0.128.3)
165
- tty-table (~> 0.12)
166
168
  eac_config (0.15.0)
167
169
  addressable (~> 2.8, >= 2.8.7)
168
170
  eac_ruby_utils (~> 0.127)
169
- eac_docker (0.7.0)
170
- eac_ruby_utils (~> 0.112)
171
- eac_templates (~> 0.3, >= 0.3.2)
171
+ eac_docker (0.8.0)
172
+ eac_ruby_utils (~> 0.128, >= 0.128.2)
173
+ eac_templates (~> 0.8, >= 0.8.1)
172
174
  eac_envs-http (0.7.0)
173
175
  eac_fs (~> 0.19)
174
176
  eac_ruby_utils (~> 0.128, >= 0.128.3)
@@ -233,7 +235,7 @@ GEM
233
235
  htmlbeautifier (1.4.3)
234
236
  i18n (1.14.7)
235
237
  concurrent-ruby (~> 1.0)
236
- json (2.13.0)
238
+ json (2.13.2)
237
239
  language_server-protocol (3.17.0.5)
238
240
  lint_roller (1.1.0)
239
241
  minitar (0.12.1)
@@ -248,7 +250,7 @@ GEM
248
250
  os (1.1.4)
249
251
  parallel (1.27.0)
250
252
  parseconfig (1.1.2)
251
- parser (3.3.8.0)
253
+ parser (3.3.9.0)
252
254
  ast (~> 2.4.1)
253
255
  racc
254
256
  parslet (2.0.0)
@@ -259,11 +261,11 @@ GEM
259
261
  prism (1.4.0)
260
262
  public_suffix (5.1.1)
261
263
  racc (1.8.1)
262
- rack (3.1.16)
264
+ rack (3.2.1)
263
265
  rainbow (3.1.1)
264
266
  random-port (0.7.1)
265
267
  rchardet (1.8.0)
266
- regexp_parser (2.10.0)
268
+ regexp_parser (2.11.2)
267
269
  rouge (3.30.0)
268
270
  rspec (3.13.1)
269
271
  rspec-core (~> 3.13.0)
@@ -277,8 +279,8 @@ GEM
277
279
  rspec-mocks (3.13.5)
278
280
  diff-lcs (>= 1.2.0, < 2.0)
279
281
  rspec-support (~> 3.13.0)
280
- rspec-support (3.13.4)
281
- rubocop (1.78.0)
282
+ rspec-support (3.13.5)
283
+ rubocop (1.80.2)
282
284
  json (~> 2.3)
283
285
  language_server-protocol (~> 3.17.0.2)
284
286
  lint_roller (~> 1.1.0)
@@ -286,19 +288,19 @@ GEM
286
288
  parser (>= 3.3.0.2)
287
289
  rainbow (>= 2.2.2, < 4.0)
288
290
  regexp_parser (>= 2.9.3, < 3.0)
289
- rubocop-ast (>= 1.45.1, < 2.0)
291
+ rubocop-ast (>= 1.46.0, < 2.0)
290
292
  ruby-progressbar (~> 1.7)
291
293
  unicode-display_width (>= 2.4.0, < 4.0)
292
294
  rubocop-ast (1.46.0)
293
295
  parser (>= 3.3.7.2)
294
296
  prism (~> 1.4)
295
- rubocop-rails (2.32.0)
297
+ rubocop-rails (2.33.3)
296
298
  activesupport (>= 4.2.0)
297
299
  lint_roller (~> 1.1)
298
300
  rack (>= 1.1)
299
301
  rubocop (>= 1.75.0, < 2.0)
300
302
  rubocop-ast (>= 1.44.0, < 2.0)
301
- rubocop-rspec (3.6.0)
303
+ rubocop-rspec (3.7.0)
302
304
  lint_roller (~> 1.1)
303
305
  rubocop (~> 1.72, >= 1.72.1)
304
306
  ruby-filemagic (0.7.3)
@@ -330,7 +332,8 @@ PLATFORMS
330
332
  x86_64-linux
331
333
 
332
334
  DEPENDENCIES
333
- avm-git!
335
+ avm-eac_redmine_base0!
336
+ eac_cli!
334
337
  eac_ruby_gem_support (~> 0.12)
335
338
  eac_tools!
336
339
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacTools
4
- VERSION = '0.102.1'
4
+ VERSION = '0.103.1'
5
5
  end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ $LOAD_PATH.push File.expand_path('lib', __dir__)
4
+
5
+ require 'avm/eac_redmine_base0/version'
6
+
7
+ Gem::Specification.new do |s|
8
+ s.name = 'avm-eac_redmine_base0'
9
+ s.version = Avm::EacRedmineBase0::VERSION
10
+ s.authors = ['Put here the authors']
11
+ s.summary = 'Put here de description.'
12
+
13
+ s.files = Dir['{lib,locale,template}/**/*']
14
+
15
+ s.required_ruby_version = '>= 2.7.0'
16
+
17
+ s.add_dependency 'avm', '~> 0.97', '>= 0.97.1'
18
+ s.add_dependency 'avm-eac_generic_base0', '~> 0.15', '>= 0.15.1'
19
+ s.add_dependency 'avm-eac_rails_base1', '~> 0.10', '>= 0.10.2'
20
+ s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.6'
21
+ s.add_dependency 'eac_fs', '~> 0.19', '>= 0.19.1'
22
+ s.add_dependency 'eac_rest', '~> 0.12'
23
+ s.add_dependency 'eac_ruby_utils', '~> 0.128', '>= 0.128.3'
24
+
25
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.12'
26
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class ApacheHost < ::Avm::EacRailsBase1::Instances::ApacheHost
7
+ end
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Base < ::Avm::EacRailsBase1::Instances::Base
7
+ module Database
8
+ DATABASE_INTERNAL_HOSTNAME = ::Avm::Instances::Base::AutoValues::Database::LOCAL_ADDRESS
9
+ DEFAULT_POSTGRESQL_VERSION = ''
10
+
11
+ common_concern do
12
+ uri_components_entries_values 'postgresql', %w[version]
13
+ end
14
+
15
+ def database_internal # rubocop:disable Naming/PredicateMethod
16
+ ::Avm::Instances::Base::AutoValues::Database::LOCAL_ADDRESSES
17
+ .include?(entry(::Avm::Instances::EntryKeys::DATABASE_HOSTNAME).value)
18
+ end
19
+
20
+ def postgresql_version_default_value
21
+ DEFAULT_POSTGRESQL_VERSION
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Base < ::Avm::EacRailsBase1::Instances::Base
7
+ module Files
8
+ FILES_SUBPATH = 'files'
9
+
10
+ # @return [Avm::Instances::Data::FilesUnit]
11
+ def files_data_unit
12
+ ::Avm::Instances::Data::FilesUnit.new(self, FILES_SUBPATH)
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Base < ::Avm::EacRailsBase1::Instances::Base
7
+ module Gitolite
8
+ GITOLITE_ENTRY_KEYS_PREFIX = 'gitolite'
9
+ DEFAULT_HOSTNAME = 'localhost'
10
+ DEFAULT_PATH_PARENT = '/var/lib'
11
+ DEFAULT_SCHEME = 'file'
12
+ DEFAULT_USERNAME = 'git'
13
+
14
+ common_concern do
15
+ uri_components_entries_values GITOLITE_ENTRY_KEYS_PREFIX
16
+ undef_method :gitolite_path_inherited_value_proc
17
+ end
18
+
19
+ # @return [Avm::Instances::Data::FilesUnit]
20
+ def gitolite_data_unit
21
+ ::Avm::Instances::Data::FilesUnit.new(self, gitolite_repositories_path,
22
+ sudo_user: entry('gitolite.username').value!)
23
+ end
24
+
25
+ def gitolite_hostname_default_value
26
+ DEFAULT_HOSTNAME
27
+ end
28
+
29
+ # @return [String]
30
+ def gitolite_path_default_value
31
+ gitolite_username_optional.if_present do |v|
32
+ ::File.join(DEFAULT_PATH_PARENT, v)
33
+ end
34
+ end
35
+
36
+ # @return [Pathname]
37
+ def gitolite_repositories_path
38
+ entry('gitolite.path').value!.to_pathname.join('repositories')
39
+ end
40
+
41
+ def gitolite_scheme_default_value
42
+ DEFAULT_SCHEME
43
+ end
44
+
45
+ def gitolite_username_default_value
46
+ DEFAULT_USERNAME
47
+ end
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Base < ::Avm::EacRailsBase1::Instances::Base
7
+ module Install
8
+ INSTALL_EXTRA_KEY = 'install.extra'
9
+ DEFAULT_INSTALL_EXTRA = ''
10
+
11
+ # @return [String]
12
+ def auto_install_extra
13
+ inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID, INSTALL_EXTRA_KEY) ||
14
+ DEFAULT_INSTALL_EXTRA
15
+ end
16
+
17
+ def run_installer
18
+ ::EacRubyUtils::Ruby.on_clean_environment do
19
+ installer_command.system!
20
+ end
21
+ end
22
+
23
+ def installer_command
24
+ host_env.command(installer_path, install_task)
25
+ end
26
+
27
+ def installer_path
28
+ ::File.join(install_path, 'plugins', 'redmine_installer', 'installer',
29
+ 'run.sh')
30
+ end
31
+
32
+ def install_task
33
+ if web_path_optional.present?
34
+ 'redmine_as_apache_path'
35
+ else
36
+ 'redmine_as_apache_base'
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Base < ::Avm::EacRailsBase1::Instances::Base
7
+ module Nodejs
8
+ DEFAULT_NODEJS_VERSION = '19.8.1'
9
+ NODEJS_VERSION_KEY = 'nodejs.version'
10
+
11
+ def auto_install_nodejs_version
12
+ inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID, NODEJS_VERSION_KEY) ||
13
+ DEFAULT_NODEJS_VERSION
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Base < ::Avm::EacRailsBase1::Instances::Base
7
+ module Web
8
+ def web_authority
9
+ web_hostname.if_present do |h|
10
+ h.to_s + web_port_optional.if_present('') { |p| ":#{p}" }
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'addressable/uri'
4
+
5
+ module Avm
6
+ module EacRedmineBase0
7
+ module Instances
8
+ class Base < ::Avm::EacRailsBase1::Instances::Base
9
+ require_sub __FILE__, include_modules: true
10
+ enable_simple_cache
11
+
12
+ include ::Avm::EacRubyBase1::Instances::Mixin
13
+
14
+ def docker_image_class
15
+ ::Avm::EacRedmineBase0::Instances::DockerImage
16
+ end
17
+
18
+ def docker_run_arguments
19
+ [
20
+ '--volume',
21
+ "#{install_path}:/home/myuser/eac_redmine_base0",
22
+ '--publish', "#{read_entry(:ssh_port)}:22",
23
+ '--publish', "#{read_entry(:http_port)}:80",
24
+ '--publish', "#{read_entry(:https_port)}:443"
25
+ ]
26
+ end
27
+
28
+ # @return [Avm::Instances::Data::Package]
29
+ def data_package_create
30
+ r = super.add_unit('files', files_data_unit).add_unit('gitolite', gitolite_data_unit)
31
+ r.after_load { instance.run_installer }
32
+ r
33
+ end
34
+
35
+ # @return [Addressable::URI]
36
+ def root_url
37
+ r = ::Addressable::URI.parse(read_entry(::Avm::Instances::EntryKeys::WEB_URL))
38
+ r.query_values = nil
39
+ r
40
+ end
41
+
42
+ private
43
+
44
+ # @return [Avm::EacRedmineBase0::Instances::RestApi]
45
+ def rest_api_uncached
46
+ url = root_url
47
+ url.query_values = { key: admin_api_key }
48
+ ::Avm::EacRedmineBase0::Instances::RestApi.new(url)
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class Deploy < ::Avm::EacRailsBase1::Instances::Deploy
7
+ set_callback :assert_instance_branch, :after, :run_installer
8
+
9
+ def run_installer
10
+ infom 'Running installer'
11
+ instance.run_installer
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,110 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class DockerImage < ::Avm::Instances::DockerImage
7
+ enable_simple_cache
8
+
9
+ APACHE_HOST_DOCKERFILE_SUBPATH = 'apache_host_dockerfile'
10
+ APACHE_PATH_DOCKERFILE_SUBPATH = 'apache_path_dockerfile'
11
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_BLANK = 'redmine_as_apache_base'
12
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_PRESENT = 'redmine_as_apache_path'
13
+ REDMINE_SOURCE_HOST_SUBPATH = 'redmine_source'
14
+ SSH_SERVER_INSTALL = <<~CODE
15
+ RUN sudo apt-get install -y openssh-server
16
+ EXPOSE 22/tcp
17
+ CODE
18
+
19
+ delegate :database_internal, to: :instance
20
+
21
+ def avm_fs_cache_object_id
22
+ instance.id
23
+ end
24
+
25
+ def apache_setup
26
+ template.child(apache_setup_dockerfile).apply(self)
27
+ end
28
+
29
+ # @return [String]
30
+ def apache_setup_dockerfile
31
+ web_path_present? ? APACHE_PATH_DOCKERFILE_SUBPATH : APACHE_HOST_DOCKERFILE_SUBPATH
32
+ end
33
+
34
+ def base_image
35
+ eac_ubuntu_base0_instance.docker_image.provide.id
36
+ end
37
+
38
+ def installer_target_task
39
+ if web_path_present?
40
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_PRESENT
41
+ else
42
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_BLANK
43
+ end
44
+ end
45
+
46
+ def redmine_user
47
+ eac_ubuntu_base0_instance.docker_image.user_name
48
+ end
49
+
50
+ def redmine_user_home
51
+ eac_ubuntu_base0_instance.docker_image.user_home
52
+ end
53
+
54
+ def redmine_path
55
+ "#{redmine_user_home}/redmine_app"
56
+ end
57
+
58
+ def skip_database
59
+ ENV.fetch('SKIP_DATABASE', nil)
60
+ end
61
+
62
+ # Optionally install the SSH server.
63
+ # @return [String]
64
+ def ssh_server_install
65
+ ENV.fetch('SSH_SERVER', false).to_bool ? SSH_SERVER_INSTALL : ''
66
+ end
67
+
68
+ def start_path
69
+ '/start.sh'
70
+ end
71
+
72
+ def web_path_present?
73
+ ::Addressable::URI.parse(instance.web_url).path.present?
74
+ end
75
+
76
+ def write_in_provide_dir
77
+ super
78
+
79
+ ::Avm::EacRedmineBase0::Instances::Deploy.template.child('config')
80
+ .child('install.sh')
81
+ .apply_to_file(variables_source, provide_dir.join('install_settings.sh'))
82
+ end
83
+
84
+ private
85
+
86
+ def eac_ubuntu_base0_instance
87
+ r = ::Avm::EacUbuntuBase0::Instances::Base.by_id(instance.id)
88
+ r.docker_image_options = instance.docker_image_options
89
+ r
90
+ end
91
+
92
+ def git_repo_uncached
93
+ ::EacGit::Local.new(instance.source_instance.install_path)
94
+ end
95
+
96
+ def redmine_source_git_id
97
+ git_repo.rev_parse('HEAD')
98
+ end
99
+
100
+ def redmine_source_path_uncached
101
+ r = provide_dir.join(REDMINE_SOURCE_HOST_SUBPATH)
102
+ ::FileUtils.rm_rf(r.to_path)
103
+ r.mkpath
104
+ git_repo.commit(redmine_source_git_id).archive_to_dir(r).system!
105
+ REDMINE_SOURCE_HOST_SUBPATH
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class RestApi < ::EacRest::Api
7
+ class EntityBase < ::EacRest::Entity
8
+ def build_request(url_suffix)
9
+ api.request_json("#{url_suffix}.json")
10
+ end
11
+
12
+ def data_from_response(response)
13
+ raise "\"#{response.url}\" returned non-ok status: #{response.status}" unless
14
+ response.status.to_s.start_with?('2')
15
+
16
+ return {} if response.body_str.blank?
17
+
18
+ response.body_data
19
+ rescue ::JSON::ParserError
20
+ raise "\"#{response.url}\" returned invalid JSON: \"#{response.body_str}\" " \
21
+ "(Status: #{response.status})"
22
+ end
23
+
24
+ def fetch_data(url_suffix)
25
+ data_from_response(build_request(url_suffix).response)
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Instances
6
+ class RestApi < ::EacRest::Api
7
+ class Project < ::Avm::EacRedmineBase0::Instances::RestApi::EntityBase
8
+ # @return [String]
9
+ def prefix
10
+ "/projects/#{id}"
11
+ end
12
+
13
+ # @return [Avm::EacRedmineBase0::Instances::RestApi::WikiPage]
14
+ def wiki_page(name)
15
+ child_entity(::Avm::EacRedmineBase0::Instances::RestApi::WikiPage, name)
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end