eac_tools 0.102.1 → 0.103.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 (212) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +42 -34
  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 +12 -0
  6. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/database.rb +30 -0
  7. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/files.rb +22 -0
  8. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/gitolite.rb +55 -0
  9. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/install.rb +46 -0
  10. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/nodejs.rb +22 -0
  11. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/web.rb +20 -0
  12. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb +59 -0
  13. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/deploy.rb +19 -0
  14. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +116 -0
  15. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/entity_base.rb +35 -0
  16. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/project.rb +26 -0
  17. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/root.rb +21 -0
  18. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/wiki_page.rb +54 -0
  19. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api.rb +14 -0
  20. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/docker.rb +17 -0
  21. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/read.rb +27 -0
  22. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/write.rb +70 -0
  23. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page.rb +30 -0
  24. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project.rb +26 -0
  25. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project_rename.rb +56 -0
  26. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners.rb +14 -0
  27. data/sub/{avm-git/lib/avm/git/runners.rb → avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances.rb} +4 -2
  28. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +36 -0
  29. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/core_update.rb +131 -0
  30. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/core_update.rb +65 -0
  31. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/docker.rb +19 -0
  32. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners.rb +13 -0
  33. data/sub/{avm-git/lib/avm/git/organize.rb → avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources.rb} +4 -2
  34. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/version.rb +7 -0
  35. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0.rb +16 -0
  36. data/sub/avm-eac_redmine_base0/locale/en.yml +6 -0
  37. data/sub/avm-eac_redmine_base0/locale/pt-BR.yml +6 -0
  38. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/apache_host_spec.rb +22 -0
  39. 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
  40. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec.rb +26 -0
  41. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec_files/config.yml +10 -0
  42. data/sub/avm-eac_redmine_base0/spec/spec_helper.rb +6 -0
  43. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/install.sh.template +45 -0
  44. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/secrets.yml +8 -0
  45. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile.template +36 -0
  46. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_host_dockerfile +8 -0
  47. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_http_virtualhost.conf.template +10 -0
  48. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_https_virtualhost.conf.template +16 -0
  49. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_path_dockerfile +5 -0
  50. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/start.sh.template +52 -0
  51. data/sub/avm-eac_ubuntu_base0/Gemfile +8 -0
  52. data/sub/avm-eac_ubuntu_base0/avm-eac_ubuntu_base0.gemspec +21 -0
  53. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/apache/resource.rb +57 -0
  54. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/apache.rb +24 -0
  55. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/docker_image.rb +31 -0
  56. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/instances/base.rb +24 -0
  57. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/rspec/ssh_docker_server.rb +82 -0
  58. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/runners/base/docker.rb +15 -0
  59. data/sub/avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0/runners/base.rb +26 -0
  60. data/sub/{avm-git/lib/avm/git → avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0}/version.rb +2 -2
  61. data/sub/{avm-git/lib/avm/git.rb → avm-eac_ubuntu_base0/lib/avm/eac_ubuntu_base0.rb} +5 -8
  62. data/sub/avm-eac_ubuntu_base0/spec/lib/avm/eac_ubuntu_base0/docker_image_spec.rb +12 -0
  63. data/sub/avm-eac_ubuntu_base0/spec/lib/avm/eac_ubuntu_base0/rspec/ssh_docker_server_spec.rb +11 -0
  64. data/sub/avm-eac_ubuntu_base0/spec/lib/avm/eac_ubuntu_base0/runners/base/docker_spec.rb +11 -0
  65. data/sub/avm-eac_ubuntu_base0/spec/lib/avm/eac_ubuntu_base0/runners/base_spec.rb +5 -0
  66. data/sub/avm-eac_ubuntu_base0/spec/rubocop_spec.rb +3 -0
  67. data/sub/{avm-git → avm-eac_ubuntu_base0}/spec/spec_helper.rb +1 -1
  68. data/sub/avm-eac_ubuntu_base0/template/avm/eac_ubuntu_base0/docker_image/Dockerfile.template +27 -0
  69. data/sub/avm-eac_ubuntu_base0/template/avm/eac_ubuntu_base0/rspec/ssh_docker_server/Dockerfile.template +24 -0
  70. data/sub/avm-eac_ubuntu_base0/template/avm/eac_ubuntu_base0/rspec/ssh_docker_server/id_rsa +27 -0
  71. data/sub/avm-eac_ubuntu_base0/template/avm/eac_ubuntu_base0/rspec/ssh_docker_server/id_rsa.pub +1 -0
  72. data/sub/eac_docker/Gemfile +8 -0
  73. data/sub/eac_docker/eac_docker.gemspec +20 -0
  74. data/sub/eac_docker/lib/eac_docker/container.rb +83 -0
  75. data/sub/eac_docker/lib/eac_docker/debug.rb +13 -0
  76. data/sub/eac_docker/lib/eac_docker/executables.rb +15 -0
  77. data/sub/eac_docker/lib/eac_docker/images/base.rb +11 -0
  78. data/sub/eac_docker/lib/eac_docker/images/coded.rb +39 -0
  79. data/sub/eac_docker/lib/eac_docker/images/named.rb +26 -0
  80. data/sub/eac_docker/lib/eac_docker/images/templatized.rb +43 -0
  81. data/sub/eac_docker/lib/eac_docker/registry.rb +15 -0
  82. data/sub/eac_docker/lib/eac_docker/rspec/setup.rb +15 -0
  83. data/sub/eac_docker/lib/eac_docker/rspec/stub_image.rb +39 -0
  84. data/sub/eac_docker/lib/eac_docker/version.rb +5 -0
  85. data/sub/eac_docker/lib/eac_docker.rb +9 -0
  86. data/sub/eac_docker/spec/lib/eac_docker/executables_spec.rb +7 -0
  87. data/sub/eac_docker/spec/lib/eac_docker/images/coded_spec.rb +10 -0
  88. data/sub/eac_docker/spec/lib/eac_docker/images/coded_spec_files/image1/Dockerfile +1 -0
  89. data/sub/eac_docker/spec/lib/eac_docker/images/templatized_spec.rb +15 -0
  90. data/sub/eac_docker/spec/lib/eac_docker/images/templatized_spec_files/stub_docker_image/Dockerfile +1 -0
  91. data/sub/eac_docker/spec/rubocop_spec.rb +3 -0
  92. data/sub/eac_docker/spec/spec_helper.rb +5 -0
  93. metadata +101 -134
  94. data/sub/avm-git/avm-git.gemspec +0 -25
  95. data/sub/avm-git/lib/avm/git/application_scms/base/assert_main_at.rb +0 -44
  96. data/sub/avm-git/lib/avm/git/application_scms/base.rb +0 -18
  97. data/sub/avm-git/lib/avm/git/application_scms.rb +0 -9
  98. data/sub/avm-git/lib/avm/git/commit/class_methods.rb +0 -29
  99. data/sub/avm-git/lib/avm/git/commit/diff_tree_line.rb +0 -32
  100. data/sub/avm-git/lib/avm/git/commit/file.rb +0 -42
  101. data/sub/avm-git/lib/avm/git/commit.rb +0 -57
  102. data/sub/avm-git/lib/avm/git/issue/complete/commits.rb +0 -40
  103. data/sub/avm-git/lib/avm/git/issue/complete/git_subrepos.rb +0 -20
  104. data/sub/avm-git/lib/avm/git/issue/complete/local_branch.rb +0 -59
  105. data/sub/avm-git/lib/avm/git/issue/complete/local_tag.rb +0 -37
  106. data/sub/avm-git/lib/avm/git/issue/complete/push.rb +0 -60
  107. data/sub/avm-git/lib/avm/git/issue/complete/remote.rb +0 -33
  108. data/sub/avm-git/lib/avm/git/issue/complete/test.rb +0 -34
  109. data/sub/avm-git/lib/avm/git/issue/complete/tracker.rb +0 -21
  110. data/sub/avm-git/lib/avm/git/issue/complete/validation.rb +0 -36
  111. data/sub/avm-git/lib/avm/git/issue/complete/validations.rb +0 -54
  112. data/sub/avm-git/lib/avm/git/issue/complete/working_tree.rb +0 -19
  113. data/sub/avm-git/lib/avm/git/issue/complete.rb +0 -66
  114. data/sub/avm-git/lib/avm/git/issue.rb +0 -10
  115. data/sub/avm-git/lib/avm/git/launcher/base/class_methods.rb +0 -28
  116. data/sub/avm-git/lib/avm/git/launcher/base/dirty_files.rb +0 -21
  117. data/sub/avm-git/lib/avm/git/launcher/base/remotes.rb +0 -37
  118. data/sub/avm-git/lib/avm/git/launcher/base/subrepo.rb +0 -42
  119. data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +0 -54
  120. data/sub/avm-git/lib/avm/git/launcher/base.rb +0 -81
  121. data/sub/avm-git/lib/avm/git/launcher/error.rb +0 -13
  122. data/sub/avm-git/lib/avm/git/launcher/mirror_update.rb +0 -36
  123. data/sub/avm-git/lib/avm/git/launcher/publish_base.rb +0 -127
  124. data/sub/avm-git/lib/avm/git/launcher/remote.rb +0 -53
  125. data/sub/avm-git/lib/avm/git/launcher/sub_warp_base.rb +0 -36
  126. data/sub/avm-git/lib/avm/git/launcher/warp_base.rb +0 -63
  127. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/local_project_mixin.rb +0 -16
  128. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/publish.rb +0 -13
  129. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git/warp.rb +0 -25
  130. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git.rb +0 -22
  131. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/publish.rb +0 -29
  132. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo/warp.rb +0 -82
  133. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subrepo.rb +0 -32
  134. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/publish.rb +0 -12
  135. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree/warp.rb +0 -29
  136. data/sub/avm-git/lib/avm/git/launcher_stereotypes/git_subtree.rb +0 -47
  137. data/sub/avm-git/lib/avm/git/launcher_stereotypes/provider.rb +0 -17
  138. data/sub/avm-git/lib/avm/git/launcher_stereotypes.rb +0 -9
  139. data/sub/avm-git/lib/avm/git/organize/reference_update.rb +0 -32
  140. data/sub/avm-git/lib/avm/git/organize/repository.rb +0 -74
  141. data/sub/avm-git/lib/avm/git/revision_test.rb +0 -102
  142. data/sub/avm-git/lib/avm/git/runners/base/commit.rb +0 -96
  143. data/sub/avm-git/lib/avm/git/runners/base/deploy.rb +0 -108
  144. data/sub/avm-git/lib/avm/git/runners/base/dirty_files.rb +0 -42
  145. data/sub/avm-git/lib/avm/git/runners/base/organize.rb +0 -72
  146. data/sub/avm-git/lib/avm/git/runners/base/revisions_test.rb +0 -63
  147. data/sub/avm-git/lib/avm/git/runners/base/subrepo/check.rb +0 -45
  148. data/sub/avm-git/lib/avm/git/runners/base/subrepo/clone.rb +0 -80
  149. data/sub/avm-git/lib/avm/git/runners/base/subrepo/fix.rb +0 -69
  150. data/sub/avm-git/lib/avm/git/runners/base/subrepo.rb +0 -17
  151. data/sub/avm-git/lib/avm/git/runners/base.rb +0 -40
  152. data/sub/avm-git/lib/avm/git/scms/git/branch.rb +0 -28
  153. data/sub/avm-git/lib/avm/git/scms/git/branches.rb +0 -17
  154. data/sub/avm-git/lib/avm/git/scms/git/change_tracker.rb +0 -34
  155. data/sub/avm-git/lib/avm/git/scms/git/changed_file.rb +0 -25
  156. data/sub/avm-git/lib/avm/git/scms/git/changed_files.rb +0 -21
  157. data/sub/avm-git/lib/avm/git/scms/git/commit/deploy.rb +0 -37
  158. data/sub/avm-git/lib/avm/git/scms/git/commit/deploy_methods.rb +0 -24
  159. data/sub/avm-git/lib/avm/git/scms/git/commit.rb +0 -64
  160. data/sub/avm-git/lib/avm/git/scms/git/commit_dirty.rb +0 -32
  161. data/sub/avm-git/lib/avm/git/scms/git/commits.rb +0 -44
  162. data/sub/avm-git/lib/avm/git/scms/git/interval.rb +0 -28
  163. data/sub/avm-git/lib/avm/git/scms/git/milestones.rb +0 -18
  164. data/sub/avm-git/lib/avm/git/scms/git/remote.rb +0 -18
  165. data/sub/avm-git/lib/avm/git/scms/git/remotes.rb +0 -29
  166. data/sub/avm-git/lib/avm/git/scms/git/run_commit.rb +0 -54
  167. data/sub/avm-git/lib/avm/git/scms/git.rb +0 -46
  168. data/sub/avm-git/lib/avm/git/scms/git_sub_base/changed_file.rb +0 -19
  169. data/sub/avm-git/lib/avm/git/scms/git_sub_base/commit.rb +0 -23
  170. data/sub/avm-git/lib/avm/git/scms/git_sub_base/interval.rb +0 -23
  171. data/sub/avm-git/lib/avm/git/scms/git_sub_base.rb +0 -30
  172. data/sub/avm-git/lib/avm/git/scms/git_subrepo.rb +0 -33
  173. data/sub/avm-git/lib/avm/git/scms/git_subtree.rb +0 -29
  174. data/sub/avm-git/lib/avm/git/scms/provider.rb +0 -16
  175. data/sub/avm-git/lib/avm/git/scms.rb +0 -9
  176. data/sub/avm-git/lib/avm/git/subrepo_check/parent.rb +0 -48
  177. data/sub/avm-git/lib/avm/git/subrepo_check/remote.rb +0 -86
  178. data/sub/avm-git/lib/avm/git/subrepo_check/show_result.rb +0 -30
  179. data/sub/avm-git/lib/avm/git/subrepo_check.rb +0 -36
  180. data/sub/avm-git/lib/avm/git/subrepo_checks.rb +0 -57
  181. data/sub/avm-git/lib/avm/git/vendor/github.rb +0 -20
  182. data/sub/avm-git/lib/avm/git/vendor.rb +0 -9
  183. data/sub/avm-git/locale/en.yml +0 -6
  184. data/sub/avm-git/locale/pt-BR.yml +0 -6
  185. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec.rb +0 -13
  186. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/add.source.out +0 -1
  187. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/add.target.yaml +0 -7
  188. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/modify.source.out +0 -1
  189. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/modify.target.yaml +0 -7
  190. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/remove.source.out +0 -1
  191. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/remove.target.yaml +0 -7
  192. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename.source.out +0 -2
  193. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename.target.yaml +0 -13
  194. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename_modify.source.out +0 -2
  195. data/sub/avm-git/spec/lib/avm/git/commit/diff_tree_line_spec_files/rename_modify.target.yaml +0 -13
  196. data/sub/avm-git/spec/lib/avm/git/commit_spec.rb +0 -56
  197. data/sub/avm-git/spec/lib/avm/git/launcher/base_spec.rb +0 -45
  198. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec.rb +0 -83
  199. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_files/config.yml +0 -5
  200. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/publish_spec_settings.yml +0 -6
  201. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec.rb +0 -53
  202. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_files/config.yml +0 -3
  203. data/sub/avm-git/spec/lib/avm/git/launcher_stereotypes/git_subrepo/warp_spec_settings.yml +0 -6
  204. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec.rb +0 -126
  205. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append1/stub3.txt.template +0 -1
  206. data/sub/avm-git/spec/lib/avm/git/runners/base/deploy_spec_files/append2/stub4.txt +0 -1
  207. data/sub/avm-git/spec/lib/avm/git/scms/git/commit/deploy_spec.rb +0 -92
  208. data/sub/avm-git/spec/lib/avm/git/scms/git_spec.rb +0 -8
  209. data/sub/avm-git/spec/lib/avm/git/scms/git_subrepo_spec.rb +0 -8
  210. data/sub/avm-git/spec/lib/avm/git/vendor/github_spec.rb +0 -23
  211. /data/sub/{avm-git → avm-eac_redmine_base0}/Gemfile +0 -0
  212. /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: b98b7b8b92aaca076faeca89e67b782455d972b8ab38b1a974151e32f6d056af
4
+ data.tar.gz: a464eed90009f13f1c52d026fafcdfa008a26d7b8749b7f94c1bb16fac00ca04
5
5
  SHA512:
6
- metadata.gz: '078f12bcb53cccc2a264ce8d790f7ea965a02acf2f8f0c229314123095ce44181bd5d7258fea3c4f18c49b0dee86766a84a32520e1c8c7dd2b7301a3a043020f'
7
- data.tar.gz: f1ac013e6960db1380d8793b8faaee834766a3f6bfb1b47fbd94cdb4e8fe122960004d7a4e200a3c03715cff946be65b32694f5cb64b54712583c66b73176df2
6
+ metadata.gz: 1833aefe9b603010d3b41ea3da3d3c84f6c6323c56e7f2ee4e00b5e0c3e24133b382183f337999e7748da8d161aa0496f7f064ff20a36f8a7dc36ffe7c8a7479
7
+ data.tar.gz: 134cd3476d6d71293397c308dc76ce9977800315ab20a9e71aecf11ba96695a7e894d125e1ee738172f259494156222b0d08622e3d1c75470f8d710264324c79
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.0)
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)
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,31 @@ 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)
29
+ avm-eac_redmine_base0 (0.23.0)
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)
36
+ eac_ruby_utils (~> 0.128, >= 0.128.3)
37
+
38
+ PATH
39
+ remote: sub/avm-eac_ubuntu_base0
40
+ specs:
41
+ avm-eac_ubuntu_base0 (0.6.0)
30
42
  avm (~> 0.97)
31
- avm-files (~> 0.9)
32
- eac_git (~> 0.18, >= 0.18.1)
33
43
  eac_ruby_utils (~> 0.128, >= 0.128.3)
34
- git (~> 1.19, >= 1.19.1)
44
+ eac_templates (~> 0.8, >= 0.8.1)
45
+
46
+ PATH
47
+ remote: sub/eac_docker
48
+ specs:
49
+ eac_docker (0.8.0)
50
+ eac_ruby_utils (~> 0.128, >= 0.128.2)
51
+ eac_templates (~> 0.8, >= 0.8.1)
35
52
 
36
53
  GEM
37
54
  remote: https://rubygems.org/
@@ -57,9 +74,9 @@ GEM
57
74
  asciidoctor (2.0.23)
58
75
  ast (2.4.3)
59
76
  attr_extras (7.1.0)
60
- avm (0.97.0)
77
+ avm (0.97.1)
61
78
  clipboard (~> 1.4, >= 1.4.1)
62
- eac_cli (~> 0.43, >= 0.43.1)
79
+ eac_cli (~> 0.44)
63
80
  eac_config (~> 0.15)
64
81
  eac_docker (~> 0.7)
65
82
  eac_fs (~> 0.19, >= 0.19.1)
@@ -107,15 +124,6 @@ GEM
107
124
  avm-eac_ruby_base1 (~> 0.35, >= 0.35.1)
108
125
  avm-eac_webapp_base0 (~> 0.20, >= 0.20.1)
109
126
  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
127
  avm-eac_redmine_plugin_base0 (0.4.1)
120
128
  avm-eac_ruby_base1 (~> 0.33, >= 0.33.1)
121
129
  eac_ruby_utils (~> 0.121)
@@ -128,10 +136,6 @@ GEM
128
136
  avm-eac_generic_base0 (~> 0.15, >= 0.15.1)
129
137
  eac_envs-http (~> 0.7)
130
138
  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)
135
139
  avm-eac_webapp_base0 (0.21.1)
136
140
  avm (~> 0.96, >= 0.96.1)
137
141
  avm-eac_generic_base0 (~> 0.15, >= 0.15.1)
@@ -146,6 +150,12 @@ GEM
146
150
  eac_ruby_utils (~> 0.121)
147
151
  avm-files (0.9.0)
148
152
  avm (~> 0.95)
153
+ avm-git (0.20.2)
154
+ avm (~> 0.97)
155
+ avm-files (~> 0.9)
156
+ eac_git (~> 0.18, >= 0.18.1)
157
+ eac_ruby_utils (~> 0.128, >= 0.128.3)
158
+ git (~> 1.19, >= 1.19.1)
149
159
  avm-tools (0.163.3)
150
160
  avm (~> 0.96, >= 0.96.1)
151
161
  clipboard (~> 1.4, >= 1.4.1)
@@ -156,7 +166,6 @@ GEM
156
166
  concurrent-ruby (1.3.5)
157
167
  content-type (0.0.2)
158
168
  parslet (~> 2.0)
159
- curb (0.9.11)
160
169
  diff-lcs (1.6.2)
161
170
  eac_cli (0.44.0)
162
171
  colorize (~> 0.8, >= 0.8.1)
@@ -166,9 +175,6 @@ GEM
166
175
  eac_config (0.15.0)
167
176
  addressable (~> 2.8, >= 2.8.7)
168
177
  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)
172
178
  eac_envs-http (0.7.0)
173
179
  eac_fs (~> 0.19)
174
180
  eac_ruby_utils (~> 0.128, >= 0.128.3)
@@ -233,7 +239,7 @@ GEM
233
239
  htmlbeautifier (1.4.3)
234
240
  i18n (1.14.7)
235
241
  concurrent-ruby (~> 1.0)
236
- json (2.13.0)
242
+ json (2.13.2)
237
243
  language_server-protocol (3.17.0.5)
238
244
  lint_roller (1.1.0)
239
245
  minitar (0.12.1)
@@ -248,7 +254,7 @@ GEM
248
254
  os (1.1.4)
249
255
  parallel (1.27.0)
250
256
  parseconfig (1.1.2)
251
- parser (3.3.8.0)
257
+ parser (3.3.9.0)
252
258
  ast (~> 2.4.1)
253
259
  racc
254
260
  parslet (2.0.0)
@@ -259,11 +265,11 @@ GEM
259
265
  prism (1.4.0)
260
266
  public_suffix (5.1.1)
261
267
  racc (1.8.1)
262
- rack (3.1.16)
268
+ rack (3.2.0)
263
269
  rainbow (3.1.1)
264
270
  random-port (0.7.1)
265
271
  rchardet (1.8.0)
266
- regexp_parser (2.10.0)
272
+ regexp_parser (2.11.0)
267
273
  rouge (3.30.0)
268
274
  rspec (3.13.1)
269
275
  rspec-core (~> 3.13.0)
@@ -278,7 +284,7 @@ GEM
278
284
  diff-lcs (>= 1.2.0, < 2.0)
279
285
  rspec-support (~> 3.13.0)
280
286
  rspec-support (3.13.4)
281
- rubocop (1.78.0)
287
+ rubocop (1.79.2)
282
288
  json (~> 2.3)
283
289
  language_server-protocol (~> 3.17.0.2)
284
290
  lint_roller (~> 1.1.0)
@@ -286,7 +292,7 @@ GEM
286
292
  parser (>= 3.3.0.2)
287
293
  rainbow (>= 2.2.2, < 4.0)
288
294
  regexp_parser (>= 2.9.3, < 3.0)
289
- rubocop-ast (>= 1.45.1, < 2.0)
295
+ rubocop-ast (>= 1.46.0, < 2.0)
290
296
  ruby-progressbar (~> 1.7)
291
297
  unicode-display_width (>= 2.4.0, < 4.0)
292
298
  rubocop-ast (1.46.0)
@@ -330,7 +336,9 @@ PLATFORMS
330
336
  x86_64-linux
331
337
 
332
338
  DEPENDENCIES
333
- avm-git!
339
+ avm-eac_redmine_base0!
340
+ avm-eac_ubuntu_base0!
341
+ eac_docker!
334
342
  eac_ruby_gem_support (~> 0.12)
335
343
  eac_tools!
336
344
 
@@ -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.0'
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.9'
26
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/apache_host'
4
+
5
+ module Avm
6
+ module EacRedmineBase0
7
+ module Instances
8
+ class ApacheHost < ::Avm::EacRailsBase1::Instances::ApacheHost
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Instances
9
+ class Base < ::Avm::EacRailsBase1::Instances::Base
10
+ module Database
11
+ DATABASE_INTERNAL_HOSTNAME = ::Avm::Instances::Base::AutoValues::Database::LOCAL_ADDRESS
12
+ DEFAULT_POSTGRESQL_VERSION = ''
13
+
14
+ common_concern do
15
+ uri_components_entries_values 'postgresql', %w[version]
16
+ end
17
+
18
+ def database_internal # rubocop:disable Naming/PredicateMethod
19
+ ::Avm::Instances::Base::AutoValues::Database::LOCAL_ADDRESSES
20
+ .include?(entry(::Avm::Instances::EntryKeys::DATABASE_HOSTNAME).value)
21
+ end
22
+
23
+ def postgresql_version_default_value
24
+ DEFAULT_POSTGRESQL_VERSION
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/base'
4
+ require 'avm/instances/data/files_unit'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacRedmineBase0
9
+ module Instances
10
+ class Base < ::Avm::EacRailsBase1::Instances::Base
11
+ module Files
12
+ FILES_SUBPATH = 'files'
13
+
14
+ # @return [Avm::Instances::Data::FilesUnit]
15
+ def files_data_unit
16
+ ::Avm::Instances::Data::FilesUnit.new(self, FILES_SUBPATH)
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,55 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Instances
9
+ class Base < ::Avm::EacRailsBase1::Instances::Base
10
+ module Gitolite
11
+ GITOLITE_ENTRY_KEYS_PREFIX = 'gitolite'
12
+ DEFAULT_HOSTNAME = 'localhost'
13
+ DEFAULT_PATH_PARENT = '/var/lib'
14
+ DEFAULT_SCHEME = 'file'
15
+ DEFAULT_USERNAME = 'git'
16
+
17
+ common_concern do
18
+ uri_components_entries_values GITOLITE_ENTRY_KEYS_PREFIX
19
+ undef_method :gitolite_path_inherited_value_proc
20
+ end
21
+
22
+ # @return [Avm::Instances::Data::FilesUnit]
23
+ def gitolite_data_unit
24
+ ::Avm::Instances::Data::FilesUnit.new(self, gitolite_repositories_path,
25
+ sudo_user: entry('gitolite.username').value!)
26
+ end
27
+
28
+ def gitolite_hostname_default_value
29
+ DEFAULT_HOSTNAME
30
+ end
31
+
32
+ # @return [String]
33
+ def gitolite_path_default_value
34
+ gitolite_username_optional.if_present do |v|
35
+ ::File.join(DEFAULT_PATH_PARENT, v)
36
+ end
37
+ end
38
+
39
+ # @return [Pathname]
40
+ def gitolite_repositories_path
41
+ entry('gitolite.path').value!.to_pathname.join('repositories')
42
+ end
43
+
44
+ def gitolite_scheme_default_value
45
+ DEFAULT_SCHEME
46
+ end
47
+
48
+ def gitolite_username_default_value
49
+ DEFAULT_USERNAME
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Instances
9
+ class Base < ::Avm::EacRailsBase1::Instances::Base
10
+ module Install
11
+ INSTALL_EXTRA_KEY = 'install.extra'
12
+ DEFAULT_INSTALL_EXTRA = ''
13
+
14
+ # @return [String]
15
+ def auto_install_extra
16
+ inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID, INSTALL_EXTRA_KEY) ||
17
+ DEFAULT_INSTALL_EXTRA
18
+ end
19
+
20
+ def run_installer
21
+ ::EacRubyUtils::Ruby.on_clean_environment do
22
+ installer_command.system!
23
+ end
24
+ end
25
+
26
+ def installer_command
27
+ host_env.command(installer_path, install_task)
28
+ end
29
+
30
+ def installer_path
31
+ ::File.join(install_path, 'plugins', 'redmine_installer', 'installer',
32
+ 'run.sh')
33
+ end
34
+
35
+ def install_task
36
+ if web_path_optional.present?
37
+ 'redmine_as_apache_path'
38
+ else
39
+ 'redmine_as_apache_base'
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Instances
9
+ class Base < ::Avm::EacRailsBase1::Instances::Base
10
+ module Nodejs
11
+ DEFAULT_NODEJS_VERSION = '19.8.1'
12
+ NODEJS_VERSION_KEY = 'nodejs.version'
13
+
14
+ def auto_install_nodejs_version
15
+ inherited_entry_value(::Avm::Instances::EntryKeys::INSTALL_ID, NODEJS_VERSION_KEY) ||
16
+ DEFAULT_NODEJS_VERSION
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/base'
4
+ require 'eac_ruby_utils/core_ext'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Instances
9
+ class Base < ::Avm::EacRailsBase1::Instances::Base
10
+ module Web
11
+ def web_authority
12
+ web_hostname.if_present do |h|
13
+ h.to_s + web_port_optional.if_present('') { |p| ":#{p}" }
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'addressable/uri'
4
+ require 'avm/eac_redmine_base0/instances/apache_host'
5
+ require 'avm/eac_redmine_base0/instances/docker_image'
6
+ require 'avm/eac_redmine_base0/instances/runners'
7
+ require 'avm/eac_redmine_base0/instances/rest_api'
8
+ require 'avm/eac_rails_base1/instances/base'
9
+ require 'avm/eac_ruby_base1/instances/mixin'
10
+
11
+ module Avm
12
+ module EacRedmineBase0
13
+ module Instances
14
+ class Base < ::Avm::EacRailsBase1::Instances::Base
15
+ require_sub __FILE__, include_modules: true, require_dependency: true
16
+ enable_simple_cache
17
+
18
+ include ::Avm::EacRubyBase1::Instances::Mixin
19
+
20
+ def docker_image_class
21
+ ::Avm::EacRedmineBase0::Instances::DockerImage
22
+ end
23
+
24
+ def docker_run_arguments
25
+ [
26
+ '--volume',
27
+ "#{install_path}:/home/myuser/eac_redmine_base0",
28
+ '--publish', "#{read_entry(:ssh_port)}:22",
29
+ '--publish', "#{read_entry(:http_port)}:80",
30
+ '--publish', "#{read_entry(:https_port)}:443"
31
+ ]
32
+ end
33
+
34
+ # @return [Avm::Instances::Data::Package]
35
+ def data_package_create
36
+ r = super.add_unit('files', files_data_unit).add_unit('gitolite', gitolite_data_unit)
37
+ r.after_load { instance.run_installer }
38
+ r
39
+ end
40
+
41
+ # @return [Addressable::URI]
42
+ def root_url
43
+ r = ::Addressable::URI.parse(read_entry(::Avm::Instances::EntryKeys::WEB_URL))
44
+ r.query_values = nil
45
+ r
46
+ end
47
+
48
+ private
49
+
50
+ # @return [Avm::EacRedmineBase0::Instances::RestApi]
51
+ def rest_api_uncached
52
+ url = root_url
53
+ url.query_values = { key: admin_api_key }
54
+ ::Avm::EacRedmineBase0::Instances::RestApi.new(url)
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'avm/eac_rails_base1/instances/deploy'
4
+ require 'eac_ruby_utils/ruby'
5
+
6
+ module Avm
7
+ module EacRedmineBase0
8
+ module Instances
9
+ class Deploy < ::Avm::EacRailsBase1::Instances::Deploy
10
+ set_callback :assert_instance_branch, :after, :run_installer
11
+
12
+ def run_installer
13
+ infom 'Running installer'
14
+ instance.run_installer
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,116 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/core_ext'
4
+ require 'avm/eac_redmine_base0/instances/deploy'
5
+ require 'avm/eac_ubuntu_base0/instances/base'
6
+ require 'avm/instances/docker_image'
7
+ require 'eac_templates/core_ext'
8
+
9
+ module Avm
10
+ module EacRedmineBase0
11
+ module Instances
12
+ class DockerImage < ::Avm::Instances::DockerImage
13
+ enable_simple_cache
14
+
15
+ APACHE_HOST_DOCKERFILE_SUBPATH = 'apache_host_dockerfile'
16
+ APACHE_PATH_DOCKERFILE_SUBPATH = 'apache_path_dockerfile'
17
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_BLANK = 'redmine_as_apache_base'
18
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_PRESENT = 'redmine_as_apache_path'
19
+ REDMINE_SOURCE_HOST_SUBPATH = 'redmine_source'
20
+ SSH_SERVER_INSTALL = <<~CODE
21
+ RUN sudo apt-get install -y openssh-server
22
+ EXPOSE 22/tcp
23
+ CODE
24
+
25
+ delegate :database_internal, to: :instance
26
+
27
+ def avm_fs_cache_object_id
28
+ instance.id
29
+ end
30
+
31
+ def apache_setup
32
+ template.child(apache_setup_dockerfile).apply(self)
33
+ end
34
+
35
+ # @return [String]
36
+ def apache_setup_dockerfile
37
+ web_path_present? ? APACHE_PATH_DOCKERFILE_SUBPATH : APACHE_HOST_DOCKERFILE_SUBPATH
38
+ end
39
+
40
+ def base_image
41
+ eac_ubuntu_base0_instance.docker_image.provide.id
42
+ end
43
+
44
+ def installer_target_task
45
+ if web_path_present?
46
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_PRESENT
47
+ else
48
+ INSTALLER_TARGET_TASK_WITH_WEB_PATH_BLANK
49
+ end
50
+ end
51
+
52
+ def redmine_user
53
+ eac_ubuntu_base0_instance.docker_image.user_name
54
+ end
55
+
56
+ def redmine_user_home
57
+ eac_ubuntu_base0_instance.docker_image.user_home
58
+ end
59
+
60
+ def redmine_path
61
+ "#{redmine_user_home}/redmine_app"
62
+ end
63
+
64
+ def skip_database
65
+ ENV.fetch('SKIP_DATABASE', nil)
66
+ end
67
+
68
+ # Optionally install the SSH server.
69
+ # @return [String]
70
+ def ssh_server_install
71
+ ENV.fetch('SSH_SERVER', false).to_bool ? SSH_SERVER_INSTALL : ''
72
+ end
73
+
74
+ def start_path
75
+ '/start.sh'
76
+ end
77
+
78
+ def web_path_present?
79
+ ::Addressable::URI.parse(instance.web_url).path.present?
80
+ end
81
+
82
+ def write_in_provide_dir
83
+ super
84
+
85
+ ::Avm::EacRedmineBase0::Instances::Deploy.template.child('config')
86
+ .child('install.sh')
87
+ .apply_to_file(variables_source, provide_dir.join('install_settings.sh'))
88
+ end
89
+
90
+ private
91
+
92
+ def eac_ubuntu_base0_instance
93
+ r = ::Avm::EacUbuntuBase0::Instances::Base.by_id(instance.id)
94
+ r.docker_image_options = instance.docker_image_options
95
+ r
96
+ end
97
+
98
+ def git_repo_uncached
99
+ ::EacGit::Local.new(instance.source_instance.install_path)
100
+ end
101
+
102
+ def redmine_source_git_id
103
+ git_repo.rev_parse('HEAD')
104
+ end
105
+
106
+ def redmine_source_path_uncached
107
+ r = provide_dir.join(REDMINE_SOURCE_HOST_SUBPATH)
108
+ ::FileUtils.rm_rf(r.to_path)
109
+ r.mkpath
110
+ git_repo.commit(redmine_source_git_id).archive_to_dir(r).system!
111
+ REDMINE_SOURCE_HOST_SUBPATH
112
+ end
113
+ end
114
+ end
115
+ end
116
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_rest/api'
4
+ require 'eac_rest/entity'
5
+ require 'eac_ruby_utils/core_ext'
6
+
7
+ module Avm
8
+ module EacRedmineBase0
9
+ module Instances
10
+ class RestApi < ::EacRest::Api
11
+ class EntityBase < ::EacRest::Entity
12
+ def build_request(url_suffix)
13
+ api.request_json("#{url_suffix}.json")
14
+ end
15
+
16
+ def data_from_response(response)
17
+ raise "\"#{response.url}\" returned non-ok status: #{response.status}" unless
18
+ response.status.to_s.start_with?('2')
19
+
20
+ return {} if response.body_str.blank?
21
+
22
+ response.body_data
23
+ rescue ::JSON::ParserError
24
+ raise "\"#{response.url}\" returned invalid JSON: \"#{response.body_str}\" " \
25
+ "(Status: #{response.status})"
26
+ end
27
+
28
+ def fetch_data(url_suffix)
29
+ data_from_response(build_request(url_suffix).response)
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end