eac_tools 0.110.0 → 0.111.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 (109) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +55 -51
  3. data/lib/eac_tools/version.rb +1 -1
  4. data/sub/avm-eac_rails_base1/avm-eac_rails_base1.gemspec +3 -3
  5. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/instances/base/install.rb +25 -0
  6. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/instances/base.rb +2 -0
  7. data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/version.rb +1 -1
  8. data/sub/avm-eac_rails_base1/template/avm/eac_rails_base1/instances/apache_path/extra_content.conf +1 -0
  9. data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +26 -0
  10. data/sub/{avm-eac_rails_base0/lib/avm/eac_rails_base0 → avm-eac_redmine_base0/lib/avm/eac_redmine_base0}/instances/apache_host.rb +1 -1
  11. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/database.rb +27 -0
  12. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/files.rb +18 -0
  13. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/gitolite.rb +52 -0
  14. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/install.rb +43 -0
  15. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/nodejs.rb +19 -0
  16. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/web.rb +17 -0
  17. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb +63 -0
  18. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/deploy.rb +16 -0
  19. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +110 -0
  20. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/entity_base.rb +31 -0
  21. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/project.rb +21 -0
  22. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/root.rb +17 -0
  23. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/wiki_page.rb +50 -0
  24. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api.rb +10 -0
  25. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/docker.rb +15 -0
  26. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/read.rb +25 -0
  27. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/write.rb +68 -0
  28. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page.rb +26 -0
  29. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project.rb +22 -0
  30. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project_rename.rb +53 -0
  31. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base/default_settings.rb +40 -0
  32. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +34 -0
  33. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/core_update.rb +125 -0
  34. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/core_update.rb +61 -0
  35. data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/docker.rb +16 -0
  36. data/sub/{avm-eac_rails_base0/lib/avm/eac_rails_base0 → avm-eac_redmine_base0/lib/avm/eac_redmine_base0}/version.rb +2 -2
  37. data/sub/{avm-eac_rails_base0/lib/avm/eac_rails_base0.rb → avm-eac_redmine_base0/lib/avm/eac_redmine_base0.rb} +6 -1
  38. data/sub/avm-eac_redmine_base0/locale/en.yml +6 -0
  39. data/sub/avm-eac_redmine_base0/locale/pt-BR.yml +6 -0
  40. data/sub/{avm-eac_rails_base0/spec/lib/avm/eac_rails_base0 → avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0}/instances/apache_host_spec.rb +2 -2
  41. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec.rb +24 -0
  42. data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec_files/config.yml +10 -0
  43. data/sub/{avm-eac_rails_base0 → avm-eac_redmine_base0}/spec/spec_helper.rb +1 -1
  44. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/install.sh.template +46 -0
  45. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/secrets.yml +8 -0
  46. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile.template +37 -0
  47. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_host_dockerfile +8 -0
  48. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_http_virtualhost.conf.template +10 -0
  49. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_https_virtualhost.conf.template +16 -0
  50. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_path_dockerfile +5 -0
  51. data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/start.sh.template +53 -0
  52. data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +2 -2
  53. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/deploy.rb +1 -5
  54. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/install.rb +6 -1
  55. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy.rb +2 -4
  56. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
  57. metadata +59 -93
  58. data/sub/avm-eac_postgresql_base0/avm-eac_postgresql_base0.gemspec +0 -20
  59. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance/assert.rb +0 -75
  60. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance/commands.rb +0 -70
  61. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance/data_unit.rb +0 -63
  62. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance.rb +0 -46
  63. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance_with.rb +0 -22
  64. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/version.rb +0 -7
  65. data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0.rb +0 -11
  66. data/sub/avm-eac_postgresql_base0/spec/spec_helper.rb +0 -5
  67. data/sub/avm-eac_rails_base0/Gemfile +0 -8
  68. data/sub/avm-eac_rails_base0/avm-eac_rails_base0.gemspec +0 -20
  69. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instances/apache_path.rb +0 -10
  70. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instances/base.rb +0 -21
  71. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instances/deploy.rb +0 -51
  72. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/source_generators/base.rb +0 -10
  73. data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/sources/base.rb +0 -37
  74. data/sub/avm-eac_rails_base0/spec/lib/avm/eac_rails_base0/instances/apache_path_spec.rb +0 -20
  75. data/sub/avm-eac_rails_base0/spec/lib/avm/eac_rails_base0/instances/apache_path_spec_files/stub-app_0_apache_path.conf +0 -12
  76. data/sub/avm-eac_rails_base0/spec/meta/rubocop_spec.rb +0 -3
  77. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/instances/deploy/config/database.yml.template +0 -21
  78. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/instances/deploy/config/envvars.d/email.yml.template +0 -11
  79. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Gemfile +0 -11
  80. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Rakefile +0 -8
  81. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/config/manifest.js +0 -3
  82. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/javascripts/application.js +0 -1
  83. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/stylesheets/application.scss +0 -1
  84. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/application_controller.rb +0 -4
  85. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/welcome_controller.rb +0 -5
  86. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/views/welcome/index.html.erb +0 -1
  87. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/bundle +0 -5
  88. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rails +0 -11
  89. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rake +0 -11
  90. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/yarn +0 -11
  91. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/application.rb +0 -11
  92. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/boot.rb +0 -5
  93. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/cable.yml +0 -8
  94. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/credentials.yml.enc +0 -1
  95. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/environment.rb +0 -7
  96. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/puma.rb +0 -39
  97. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/routes.rb +0 -5
  98. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/spring.rb +0 -8
  99. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config.ru +0 -7
  100. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/db/schema.rb +0 -1
  101. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability.rb +0 -20
  102. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability_mapping.rb +0 -10
  103. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/public/favicon.ico +0 -0
  104. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/code/rubocop_spec.rb +0 -3
  105. data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/spec_helper.rb +0 -8
  106. data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb +0 -57
  107. /data/sub/{avm-eac_postgresql_base0 → avm-eac_redmine_base0}/Gemfile +0 -0
  108. /data/sub/{avm-eac_rails_base0/spec/lib/avm/eac_rails_base0 → avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0}/instances/apache_host_spec_files/apache_host_spec_no_ssl_content.conf +0 -0
  109. /data/sub/{avm-eac_postgresql_base0 → avm-eac_redmine_base0}/spec/meta/rubocop_spec.rb +0 -0
@@ -0,0 +1,61 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Sources
6
+ module Runners
7
+ class CoreUpdate
8
+ runner_with :help do
9
+ arg_opt '-u', '--url', 'Core\'s package URL.'
10
+ arg_opt '-v', '--version', 'Core\'s version.'
11
+ desc 'Update instance\' core.'
12
+ end
13
+
14
+ def run
15
+ start_banner
16
+ validate
17
+ update
18
+ end
19
+
20
+ private
21
+
22
+ def start_banner
23
+ infov 'URL', url
24
+ infov 'Version', version
25
+ end
26
+
27
+ def update
28
+ ::Avm::EacRedmineBase0::Sources::CoreUpdate
29
+ .new(runner_context.call(:subject), version, url).run
30
+ end
31
+
32
+ def url
33
+ parsed.url || url_by_version
34
+ end
35
+
36
+ def url_by_version
37
+ parsed.version.if_present do |v|
38
+ "https://www.redmine.org/releases/redmine-#{v}.tar.gz"
39
+ end
40
+ end
41
+
42
+ def validate
43
+ %w[url version].each do |attr|
44
+ fatal_error "\"#{attr}\" is blank. See avaiable options." if send(attr).blank?
45
+ end
46
+ end
47
+
48
+ def version
49
+ parsed.version || version_by_url
50
+ end
51
+
52
+ def version_by_url
53
+ parsed.url.if_present do |v|
54
+ /(\d+.\d+.\d+)/.if_match(v, false) { |m| m[1] }
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRedmineBase0
5
+ module Sources
6
+ module Runners
7
+ class Docker < ::Avm::EacGenericBase0::Sources::Docker::Runner
8
+ # @return [Avm::EacUbuntuBase0::DockerImage]
9
+ def docker_image
10
+ ::Avm::EacUbuntuBase0::DockerImage.new
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avm
4
- module EacRailsBase0
5
- VERSION = '0.11.2'
4
+ module EacRedmineBase0
5
+ VERSION = '0.25.0'
6
6
  end
7
7
  end
@@ -4,8 +4,13 @@ require 'eac_ruby_utils'
4
4
  EacRubyUtils::RootModuleSetup.perform __FILE__
5
5
 
6
6
  module Avm
7
- module EacRailsBase0
7
+ module EacRedmineBase0
8
8
  end
9
9
  end
10
10
 
11
+ require 'avm'
12
+ require 'avm/eac_generic_base0'
11
13
  require 'avm/eac_rails_base1'
14
+ require 'avm/eac_ubuntu_base0'
15
+ require 'eac_fs'
16
+ require 'eac_rest'
@@ -0,0 +1,6 @@
1
+ en:
2
+ avm:
3
+ eac_redmine_base0:
4
+ sources:
5
+ core_update:
6
+ git_commit_message: "Core: update to '%{version}'."
@@ -0,0 +1,6 @@
1
+ pt-BR:
2
+ avm:
3
+ eac_redmine_base0:
4
+ sources:
5
+ core_update:
6
+ git_commit_message: "Core: atualiza para '%{version}'."
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- RSpec.describe Avm::EacRailsBase0::Instances::ApacheHost do
3
+ RSpec.describe Avm::EacRedmineBase0::Instances::ApacheHost do
4
4
  describe '#no_ssl_site_content' do
5
- let(:instance) { Avm::EacRailsBase0::Instances::Base.by_id('stub-app_0') }
5
+ let(:instance) { Avm::EacRedmineBase0::Instances::Base.by_id('stub-app_0') }
6
6
  let(:apache_host) { described_class.new(instance) }
7
7
  let(:fixtures_dir) { Pathname.new('apache_host_spec_files').expand_path(__dir__) }
8
8
  let(:expected_content) { fixtures_dir.join('apache_host_spec_no_ssl_content.conf').read }
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.describe Avm::EacRedmineBase0::Instances::Base, '#gitolite' do
4
+ include_examples 'entries_values', __FILE__, {
5
+ 'app_0' => {
6
+ 'gitolite.username' => 'git',
7
+ 'gitolite.path' => '/var/lib/git',
8
+ 'gitolite.scheme' => 'file',
9
+ 'gitolite.hostname' => 'localhost'
10
+ },
11
+ 'app_1' => {
12
+ 'gitolite.username' => 'git1',
13
+ 'gitolite.path' => '/var/lib/git1',
14
+ 'gitolite.scheme' => 'file',
15
+ 'gitolite.hostname' => 'localhost'
16
+ },
17
+ 'app_2' => {
18
+ 'gitolite.username' => 'git2',
19
+ 'gitolite.path' => '/home/git2',
20
+ 'gitolite.scheme' => 'file',
21
+ 'gitolite.hostname' => 'localhost'
22
+ }
23
+ }
24
+ end
@@ -0,0 +1,10 @@
1
+ ---
2
+ app_0: {}
3
+ app_1:
4
+ gitolite:
5
+ username: git1
6
+ id: app_0
7
+ app_2:
8
+ gitolite:
9
+ username: git2
10
+ path: /home/git2
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'avm/eac_rails_base0'
3
+ require 'avm/eac_redmine_base0'
4
4
  require 'eac_ruby_gem_support'
5
5
  EacRubyUtils::Rspec.default_setup_create(File.expand_path('..', __dir__))
6
6
  EacRubyUtils::Rspec.default_setup.stub_eac_config_node
@@ -0,0 +1,46 @@
1
+ # Ruby
2
+ export ruby_version='%%INSTALL.RUBY.VERSION%%'
3
+ export passenger_start_timeout='%%INSTALL.PASSENGER_START_TIMEOUT%%'
4
+
5
+ # NodeJs
6
+ export nodejs_version='%%INSTALL.NODEJS.VERSION%%'
7
+
8
+ # Database
9
+ export postgresql_internal='%%DATABASE_INTERNAL%%'
10
+ export postgresql_host='%%DATABASE.HOSTNAME%%'
11
+ export postgresql_port='%%DATABASE.PORT%%'
12
+ export postgresql_database='%%DATABASE.NAME%%'
13
+ export postgresql_user='%%DATABASE.USERNAME%%'
14
+ export postgresql_password='%%DATABASE.PASSWORD%%'
15
+ export postgresql_version='%%POSTGRESQL.VERSION%%'
16
+ export postgresql_extra_settings='%%DATABASE.EXTRA%%'
17
+
18
+ # Web
19
+ if [ '%%WEB.SCHEME%%' == 'https' ]; then
20
+ export address_https='true'
21
+ else
22
+ export address_https='false'
23
+ fi
24
+ export address_host='%%WEB.AUTHORITY%%'
25
+ export address_path='%%WEB.PATH%%'
26
+
27
+ # Git
28
+ export git_repositories_hierarchical_organisation=false
29
+ export gitolite_user='%%GITOLITE.USERNAME%%'
30
+ export gitolite_user_home='%%GITOLITE.PATH%%'
31
+ export redmine_git_hosting_ssh_key_name=redmine_git_hosting_id
32
+
33
+ # Mail settings
34
+ export smtp_server='%%MAILER.SMTP.ADDRESS%%'
35
+ export smtp_port='%%MAILER.SMTP.PORT%%'
36
+ export smtp_domain='%%MAILER.SMTP.DOMAIN%%'
37
+ export smtp_tls='%%MAILER.SMTP.TLS%%'
38
+ export smtp_enable_starttls_auto='%%MAILER.SMTP.STARTTLS_AUTO%%'
39
+ export smtp_openssl_verify_mode='%%MAILER.SMTP.OPENSSL_VERIFY_MODE%%'
40
+ export smtp_authentication='%%MAILER.SMTP.AUTHENTICATION%%'
41
+ export smtp_username='%%MAILER.SMTP.USERNAME%%'
42
+ export smtp_password='%%MAILER.SMTP.PASSWORD%%'
43
+ export mail_from='%%MAILER.FROM%%'
44
+
45
+ # Extra
46
+ %%INSTALL.EXTRA%%
@@ -0,0 +1,8 @@
1
+ development:
2
+ secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
3
+
4
+ test:
5
+ secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
6
+
7
+ production:
8
+ secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
@@ -0,0 +1,37 @@
1
+ FROM '%%base_image%%'
2
+ USER root
3
+
4
+ # Redmine / Código-fonte
5
+ RUN echo '%%redmine_source_git_id%%' '%%redmine_user_home%%/redmine_source_git_id'
6
+ ADD '%%redmine_source_path%%' '%%redmine_path%%/'
7
+ RUN chown -R '%%redmine_user%%:%%redmine_user%%' '%%redmine_user_home%%'
8
+
9
+ # Redmine / Configuração de instalação
10
+ USER '%%redmine_user%%'
11
+ WORKDIR '%%redmine_user_home%%'
12
+ COPY install_settings.sh "%%redmine_path%%/config/install.sh"
13
+
14
+ # Redmine / Instalação
15
+ USER '%%redmine_user%%'
16
+ WORKDIR '%%redmine_user_home%%'
17
+ RUN SKIP_DATABASE='%%skip_database%%' \
18
+ '%%redmine_path%%/plugins/redmine_installer/installer/run.sh' '%%installer_target_task%%'
19
+
20
+ # Apache / Configuração do virtualhost
21
+ %%apache_setup%%
22
+
23
+ # Portas
24
+ EXPOSE 80/tcp 443/tcp
25
+
26
+ # Servidor SSH
27
+ %%ssh_server_install%%
28
+
29
+ # Execução
30
+ USER root
31
+ COPY start.sh '%%start_path%%'
32
+ RUN /bin/chmod +x '%%start_path%%'
33
+ RUN /bin/chown '%%redmine_user%%:%%redmine_user%%' '%%start_path%%'
34
+ RUN chmod 755 '%%redmine_user_home%%'
35
+ USER '%%redmine_user%%'
36
+ WORKDIR '%%redmine_user_home%%'
37
+ CMD '%%start_path%%'
@@ -0,0 +1,8 @@
1
+ COPY apache_http_virtualhost.conf /etc/apache2/sites-available/redmine.conf
2
+ COPY apache_https_virtualhost.conf /etc/apache2/sites-available/redmine_ssl.conf
3
+ USER root
4
+ RUN a2ensite redmine
5
+ RUN a2ensite redmine_ssl
6
+ RUN a2dissite 000-default
7
+ RUN a2enmod ssl
8
+ RUN service apache2 restart
@@ -0,0 +1,10 @@
1
+ <VirtualHost _default_:80>
2
+ DocumentRoot "%%redmine_path%%/public"
3
+ PassengerEnabled On
4
+
5
+ <Directory "%%redmine_path%%/public" >
6
+ Allow from all
7
+ Options -MultiViews
8
+ Require all granted
9
+ </Directory>
10
+ </VirtualHost>
@@ -0,0 +1,16 @@
1
+ <IfModule mod_ssl.c>
2
+ <VirtualHost _default_:443>
3
+ SSLEngine on
4
+ SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
5
+ SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
6
+
7
+ DocumentRoot "%%redmine_path%%/public"
8
+ PassengerEnabled On
9
+
10
+ <Directory "%%redmine_path%%/public" >
11
+ Allow from all
12
+ Options -MultiViews
13
+ Require all granted
14
+ </Directory>
15
+ </VirtualHost>
16
+ </IfModule>
@@ -0,0 +1,5 @@
1
+ USER root
2
+ RUN a2ensite 000-default
3
+ RUN a2ensite default-ssl
4
+ RUN a2enmod ssl
5
+ RUN service apache2 restart
@@ -0,0 +1,53 @@
1
+ #!/bin/bash
2
+
3
+ set -u
4
+ set -e
5
+
6
+ source '%%redmine_path%%/plugins/redmine_installer/installer/environment.sh'
7
+
8
+ function title() {
9
+ infom ">>>> $1 <<<<"
10
+ }
11
+
12
+ function redmine_install() {
13
+ title 'Installing Redmine...'
14
+ "$INSTALL_ROOT/run.sh" '%%installer_target_task%%'
15
+ }
16
+
17
+ function apache_start() {
18
+ title 'Restarting Apache HTTPD service...'
19
+ sudo service apache2 restart
20
+ }
21
+
22
+ function ssh_start() {
23
+ title 'Restarting SSH service...'
24
+ sudo service ssh restart
25
+ }
26
+
27
+ function postgresql_start() {
28
+ if bool_r "$SKIP_DATABASE"; then return 0; fi
29
+ if ! bool_r "$postgresql_internal"; then return 0; fi
30
+
31
+ title 'Restarting PostgresSQL service...'
32
+ sudo service postgresql restart
33
+ }
34
+
35
+ function request_http_interface() {
36
+ local TARGET_URL='http://localhost%%web.path%%'
37
+ title "Requesting web interface in ${TARGET_URL}..."
38
+ wget --timeout '%%INSTALL.PASSENGER_START_TIMEOUT%%' "${TARGET_URL}"
39
+ }
40
+
41
+ function redmine_log() {
42
+ title 'Reading production log...'
43
+ LOG_FILE='%%redmine_path%%/log/production.log'
44
+ printf " * tail -f \"$LOG_FILE\":\n"
45
+ sudo tail -f "$LOG_FILE"
46
+ }
47
+
48
+ redmine_install
49
+ apache_start
50
+ ssh_start
51
+ postgresql_start
52
+ request_http_interface
53
+ redmine_log
@@ -17,8 +17,8 @@ Gem::Specification.new do |s|
17
17
  s.add_dependency 'avm-eac_generic_base0', '~> 0.15', '>= 0.15.2'
18
18
  s.add_dependency 'avm-eac_postgresql_base0', '~> 0.6'
19
19
  s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.7'
20
- s.add_dependency 'eac_ruby_utils', '~> 0.129', '>= 0.129.1'
20
+ s.add_dependency 'eac_ruby_utils', '~> 0.130'
21
21
  s.add_dependency 'htmlbeautifier', '~> 1.4', '>= 1.4.3'
22
22
 
23
- s.add_development_dependency 'eac_ruby_gem_support', '~> 0.12', '>= 0.12.1'
23
+ s.add_development_dependency 'eac_ruby_gem_support', '~> 0.12', '>= 0.12.2'
24
24
  end
@@ -9,11 +9,7 @@ module Avm
9
9
 
10
10
  # @param options [Class<Avm::EacWebappBase0::Instances::Deploy>]
11
11
  def deploy_class
12
- application.stereotype.namespace_module.then do |s|
13
- s.const_get('Instances').const_get('Deploy')
14
- rescue ::NameError
15
- s.const_get('Deploy')
16
- end
12
+ application.stereotype.namespace_module.const_get('Instances').const_get('Deploy')
17
13
  end
18
14
 
19
15
  # @param options [Hash]
@@ -6,12 +6,17 @@ module Avm
6
6
  class Base < ::Avm::Instances::Base
7
7
  module Install
8
8
  common_concern do
9
- uri_components_entries_values 'install', %w[apache_resource_name]
9
+ uri_components_entries_values 'install', %w[apache_resource_name request_test_timeout]
10
10
  end
11
11
 
12
12
  def install_apache_resource_name_default_value
13
13
  id
14
14
  end
15
+
16
+ # @return [Integer]
17
+ def install_request_test_timeout_default_value
18
+ ::EacEnvs::Http::Request::FaradayConnection::DEFAULT_TIMEOUT.to_seconds
19
+ end
15
20
  end
16
21
  end
17
22
  end
@@ -53,10 +53,8 @@ module Avm
53
53
 
54
54
  def request_test
55
55
  infom 'Requesting web interface...'
56
- uri = URI(instance.read_entry('web.url'))
57
- response = ::Net::HTTP.get_response(uri)
58
- infov 'Response status', response.code
59
- fatal_error "Request to #{uri} failed" unless response.code.to_i == 200
56
+ ::EacEnvs::Http::Request.new.url(instance.read_entry('web.url'))
57
+ .timeout(instance.install_request_test_timeout).response.raise_unless_200
60
58
  end
61
59
 
62
60
  protected
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacWebappBase0
5
- VERSION = '0.21.4'
5
+ VERSION = '0.22.0'
6
6
  end
7
7
  end