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.
- checksums.yaml +4 -4
- data/Gemfile.lock +55 -51
- data/lib/eac_tools/version.rb +1 -1
- data/sub/avm-eac_rails_base1/avm-eac_rails_base1.gemspec +3 -3
- data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/instances/base/install.rb +25 -0
- data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/instances/base.rb +2 -0
- data/sub/avm-eac_rails_base1/lib/avm/eac_rails_base1/version.rb +1 -1
- data/sub/avm-eac_rails_base1/template/avm/eac_rails_base1/instances/apache_path/extra_content.conf +1 -0
- data/sub/avm-eac_redmine_base0/avm-eac_redmine_base0.gemspec +26 -0
- 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
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/database.rb +27 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/files.rb +18 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/gitolite.rb +52 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/install.rb +43 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/nodejs.rb +19 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base/web.rb +17 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/base.rb +63 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/deploy.rb +16 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/docker_image.rb +110 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/entity_base.rb +31 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/project.rb +21 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/root.rb +17 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api/wiki_page.rb +50 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/rest_api.rb +10 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/docker.rb +15 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/read.rb +25 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page/write.rb +68 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project/wiki_page.rb +26 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project.rb +22 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/instances/runners/project_rename.rb +53 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base/default_settings.rb +40 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/base.rb +34 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/core_update.rb +125 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/core_update.rb +61 -0
- data/sub/avm-eac_redmine_base0/lib/avm/eac_redmine_base0/sources/runners/docker.rb +16 -0
- data/sub/{avm-eac_rails_base0/lib/avm/eac_rails_base0 → avm-eac_redmine_base0/lib/avm/eac_redmine_base0}/version.rb +2 -2
- data/sub/{avm-eac_rails_base0/lib/avm/eac_rails_base0.rb → avm-eac_redmine_base0/lib/avm/eac_redmine_base0.rb} +6 -1
- data/sub/avm-eac_redmine_base0/locale/en.yml +6 -0
- data/sub/avm-eac_redmine_base0/locale/pt-BR.yml +6 -0
- 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
- data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec.rb +24 -0
- data/sub/avm-eac_redmine_base0/spec/lib/avm/eac_redmine_base0/instances/base/gitolite_spec_files/config.yml +10 -0
- data/sub/{avm-eac_rails_base0 → avm-eac_redmine_base0}/spec/spec_helper.rb +1 -1
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/install.sh.template +46 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/deploy/config/secrets.yml +8 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/Dockerfile.template +37 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_host_dockerfile +8 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_http_virtualhost.conf.template +10 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_https_virtualhost.conf.template +16 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/apache_path_dockerfile +5 -0
- data/sub/avm-eac_redmine_base0/template/avm/eac_redmine_base0/instances/docker_image/start.sh.template +53 -0
- data/sub/avm-eac_webapp_base0/avm-eac_webapp_base0.gemspec +2 -2
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/deploy.rb +1 -5
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/base/install.rb +6 -1
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy.rb +2 -4
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
- metadata +59 -93
- data/sub/avm-eac_postgresql_base0/avm-eac_postgresql_base0.gemspec +0 -20
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance/assert.rb +0 -75
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance/commands.rb +0 -70
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance/data_unit.rb +0 -63
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance.rb +0 -46
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/instance_with.rb +0 -22
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0/version.rb +0 -7
- data/sub/avm-eac_postgresql_base0/lib/avm/eac_postgresql_base0.rb +0 -11
- data/sub/avm-eac_postgresql_base0/spec/spec_helper.rb +0 -5
- data/sub/avm-eac_rails_base0/Gemfile +0 -8
- data/sub/avm-eac_rails_base0/avm-eac_rails_base0.gemspec +0 -20
- data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instances/apache_path.rb +0 -10
- data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instances/base.rb +0 -21
- data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/instances/deploy.rb +0 -51
- data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/source_generators/base.rb +0 -10
- data/sub/avm-eac_rails_base0/lib/avm/eac_rails_base0/sources/base.rb +0 -37
- data/sub/avm-eac_rails_base0/spec/lib/avm/eac_rails_base0/instances/apache_path_spec.rb +0 -20
- 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
- data/sub/avm-eac_rails_base0/spec/meta/rubocop_spec.rb +0 -3
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/instances/deploy/config/database.yml.template +0 -21
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/instances/deploy/config/envvars.d/email.yml.template +0 -11
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Gemfile +0 -11
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/Rakefile +0 -8
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/config/manifest.js +0 -3
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/javascripts/application.js +0 -1
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/assets/stylesheets/application.scss +0 -1
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/application_controller.rb +0 -4
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/controllers/welcome_controller.rb +0 -5
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/app/views/welcome/index.html.erb +0 -1
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/bundle +0 -5
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rails +0 -11
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/rake +0 -11
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/bin/yarn +0 -11
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/application.rb +0 -11
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/boot.rb +0 -5
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/cable.yml +0 -8
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/credentials.yml.enc +0 -1
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/environment.rb +0 -7
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/puma.rb +0 -39
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/routes.rb +0 -5
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config/spring.rb +0 -8
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/config.ru +0 -7
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/db/schema.rb +0 -1
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability.rb +0 -20
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/lib/ability_mapping.rb +0 -10
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/public/favicon.ico +0 -0
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/code/rubocop_spec.rb +0 -3
- data/sub/avm-eac_rails_base0/template/avm/eac_rails_base0/source_generators/base/spec/spec_helper.rb +0 -8
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/runners/data/load.rb +0 -57
- /data/sub/{avm-eac_postgresql_base0 → avm-eac_redmine_base0}/Gemfile +0 -0
- /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
- /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
|
|
@@ -4,8 +4,13 @@ require 'eac_ruby_utils'
|
|
|
4
4
|
EacRubyUtils::RootModuleSetup.perform __FILE__
|
|
5
5
|
|
|
6
6
|
module Avm
|
|
7
|
-
module
|
|
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'
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
RSpec.describe Avm::
|
|
3
|
+
RSpec.describe Avm::EacRedmineBase0::Instances::ApacheHost do
|
|
4
4
|
describe '#no_ssl_site_content' do
|
|
5
|
-
let(:instance) { Avm::
|
|
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,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,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,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,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.
|
|
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.
|
|
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.
|
|
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
|
-
|
|
57
|
-
|
|
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
|