avm-tools 0.68.0 → 0.69.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/lib/avm/eac_rails_base0/apache_host.rb +17 -0
- data/lib/avm/eac_rails_base0/deploy.rb +50 -0
- data/lib/avm/eac_rails_base0/instance.rb +14 -0
- data/lib/avm/eac_redmine_base0/deploy.rb +2 -2
- data/lib/avm/eac_redmine_base0/instance.rb +2 -2
- data/lib/avm/eac_webapp_base0/apache_host.rb +103 -0
- data/lib/avm/eac_webapp_base0/deploy.rb +102 -0
- data/lib/avm/eac_webapp_base0/deploy/appended_directories.rb +25 -0
- data/lib/avm/eac_webapp_base0/deploy/file_unit.rb +41 -0
- data/lib/avm/eac_webapp_base0/deploy/git_info.rb +49 -0
- data/lib/avm/eac_webapp_base0/deploy/version.rb +20 -0
- data/lib/avm/eac_webapp_base0/instance.rb +50 -0
- data/lib/avm/eac_webapp_base0/runner/apache_host.rb +39 -0
- data/lib/avm/eac_webapp_base0/runner/data.rb +25 -0
- data/lib/avm/eac_webapp_base0/runner/data/dump.rb +69 -0
- data/lib/avm/eac_webapp_base0/runner/data/load.rb +66 -0
- data/lib/avm/eac_webapp_base0/runner/deploy.rb +59 -0
- data/lib/avm/stereotypes/eac_wordpress_base0/apache_host.rb +2 -2
- data/lib/avm/stereotypes/eac_wordpress_base0/deploy.rb +2 -2
- data/lib/avm/stereotypes/eac_wordpress_base0/instance.rb +2 -2
- data/lib/avm/tools/runner/eac_rails_base0.rb +2 -2
- data/lib/avm/tools/runner/eac_rails_base0/apache_host.rb +3 -26
- data/lib/avm/tools/runner/eac_rails_base0/data.rb +2 -2
- data/lib/avm/tools/runner/eac_rails_base0/deploy.rb +3 -3
- data/lib/avm/tools/runner/eac_redmine_base0/data.rb +1 -1
- data/lib/avm/tools/runner/eac_redmine_base0/data/dump.rb +2 -2
- data/lib/avm/tools/runner/eac_redmine_base0/deploy.rb +2 -2
- data/lib/avm/tools/runner/eac_redmine_base0/project_rename.rb +1 -0
- data/lib/avm/tools/runner/eac_wordpress_base0/apache_host.rb +3 -25
- data/lib/avm/tools/runner/eac_wordpress_base0/data.rb +2 -2
- data/lib/avm/tools/runner/eac_wordpress_base0/deploy.rb +2 -2
- data/lib/avm/tools/version.rb +1 -1
- data/template/avm/{stereotypes/eac_rails_base0 → eac_rails_base0}/deploy/config/database.yml.template +0 -0
- data/template/avm/{stereotypes/eac_webapp_base0 → eac_webapp_base0}/apache_host/no_ssl.conf +0 -0
- data/vendor/eac_cli/Gemfile +5 -0
- data/vendor/eac_cli/eac_cli.gemspec +18 -0
- data/vendor/eac_cli/lib/eac_cli.rb +7 -0
- data/vendor/eac_cli/lib/eac_cli/default_runner.rb +22 -0
- data/vendor/eac_cli/lib/eac_cli/definition.rb +72 -0
- data/vendor/eac_cli/lib/eac_cli/definition/argument_option.rb +13 -0
- data/vendor/eac_cli/lib/eac_cli/definition/base_option.rb +26 -0
- data/vendor/eac_cli/lib/eac_cli/definition/boolean_option.rb +13 -0
- data/vendor/eac_cli/lib/eac_cli/definition/positional_argument.rb +27 -0
- data/vendor/eac_cli/lib/eac_cli/docopt/doc_builder.rb +77 -0
- data/vendor/eac_cli/lib/eac_cli/docopt/runner_extension.rb +45 -0
- data/vendor/eac_cli/lib/eac_cli/parser.rb +14 -0
- data/vendor/eac_cli/lib/eac_cli/parser/collector.rb +56 -0
- data/vendor/eac_cli/lib/eac_cli/parser/error.rb +15 -0
- data/vendor/eac_cli/lib/eac_cli/parser/options_collection.rb +105 -0
- data/vendor/eac_cli/lib/eac_cli/parser/parse_result.rb +21 -0
- data/vendor/eac_cli/lib/eac_cli/parser/positional_collection.rb +49 -0
- data/vendor/eac_cli/lib/eac_cli/runner.rb +87 -0
- data/vendor/eac_cli/lib/eac_cli/runner/context.rb +18 -0
- data/vendor/eac_cli/lib/eac_cli/version.rb +5 -0
- data/vendor/eac_cli/spec/lib/eac_cli/runner_spec.rb +70 -0
- data/vendor/eac_cli/spec/rubocop_spec.rb +7 -0
- data/vendor/eac_cli/spec/spec_helper.rb +100 -0
- data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/gem.rb +10 -0
- data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/multiple.rb +5 -34
- data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/multiple/decorated_gem.rb +42 -0
- data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/tests/multiple/result.rb +25 -0
- data/vendor/eac_ruby_gems_utils/lib/eac_ruby_gems_utils/version.rb +1 -1
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/common_concern.rb +4 -4
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner.rb +6 -0
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_class_methods.rb +1 -1
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/console/docopt_runner/_subcommands.rb +8 -2
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/inflector.rb +18 -0
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/listable/value.rb +3 -2
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/string.rb +4 -0
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/patches/string/inflector.rb +9 -0
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/struct.rb +47 -0
- data/vendor/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
- data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/inflector_spec.rb +15 -0
- data/vendor/eac_ruby_utils/spec/lib/eac_ruby_utils/struct_spec.rb +46 -0
- metadata +50 -18
- data/lib/avm/stereotypes/eac_rails_base0/apache_host.rb +0 -19
- data/lib/avm/stereotypes/eac_rails_base0/deploy.rb +0 -52
- data/lib/avm/stereotypes/eac_rails_base0/instance.rb +0 -16
- data/lib/avm/stereotypes/eac_webapp_base0/apache_host.rb +0 -97
- data/lib/avm/stereotypes/eac_webapp_base0/deploy.rb +0 -104
- data/lib/avm/stereotypes/eac_webapp_base0/deploy/appended_directories.rb +0 -27
- data/lib/avm/stereotypes/eac_webapp_base0/deploy/file_unit.rb +0 -43
- data/lib/avm/stereotypes/eac_webapp_base0/deploy/git_info.rb +0 -51
- data/lib/avm/stereotypes/eac_webapp_base0/deploy/version.rb +0 -22
- data/lib/avm/stereotypes/eac_webapp_base0/instance.rb +0 -52
- data/lib/avm/stereotypes/eac_webapp_base0/runner/data.rb +0 -27
- data/lib/avm/stereotypes/eac_webapp_base0/runner/data/dump.rb +0 -71
- data/lib/avm/stereotypes/eac_webapp_base0/runner/data/load.rb +0 -68
- data/lib/avm/stereotypes/eac_webapp_base0/runner/deploy.rb +0 -61
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Avm
|
|
4
|
+
module EacWebappBase0
|
|
5
|
+
class Deploy
|
|
6
|
+
module Version
|
|
7
|
+
VERSION_TARGET_PATH = 'VERSION'
|
|
8
|
+
|
|
9
|
+
def version
|
|
10
|
+
([::Time.now, commit_sha1] + version_git_refs).join('|')
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def version_git_refs
|
|
14
|
+
git_remote_hashs.select { |_name, sha1| sha1 == commit_sha1 }.keys
|
|
15
|
+
.map { |ref| ref.gsub(%r{\Arefs/}, '') }.reject { |ref| ref == 'HEAD' }
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'avm/instances/base'
|
|
4
|
+
require 'avm/stereotypes/postgresql/instance_with'
|
|
5
|
+
require 'avm/data/instance/files_unit'
|
|
6
|
+
require 'avm/data/instance/package'
|
|
7
|
+
require 'avm/eac_webapp_base0/deploy/file_unit'
|
|
8
|
+
|
|
9
|
+
module Avm
|
|
10
|
+
module EacWebappBase0
|
|
11
|
+
class Instance < ::Avm::Instances::Base
|
|
12
|
+
include ::Avm::Stereotypes::Postgresql::InstanceWith
|
|
13
|
+
|
|
14
|
+
def stereotype_name
|
|
15
|
+
self.class.name.desconstantize.demodulize
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def data_dump(argv = [])
|
|
19
|
+
run_subcommand(::Avm::Tools::Runner::EacWordpressBase0::Data::Dump, argv)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def data_dump_runner_class
|
|
23
|
+
"::Avm::Tools::Runner::#{stereotype_name}::Data::Dump".constantize
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def run_subcommand(subcommand_class, argv)
|
|
27
|
+
parent = ::OpenStruct.new(instance: self)
|
|
28
|
+
subcommand_class.new(argv: argv, parent: parent).run
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def data_package
|
|
32
|
+
@data_package ||= ::Avm::Data::Instance::Package.new(
|
|
33
|
+
self, units: { database: database_unit }.merge(files_units)
|
|
34
|
+
)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def database_unit
|
|
38
|
+
pg.data_unit
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
private
|
|
42
|
+
|
|
43
|
+
def files_units
|
|
44
|
+
self.class.const_get('FILES_UNITS').transform_values do |fs_path_subpath|
|
|
45
|
+
::Avm::Data::Instance::FilesUnit.new(self, fs_path_subpath)
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'eac_cli/default_runner'
|
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
|
5
|
+
|
|
6
|
+
module Avm
|
|
7
|
+
module EacWebappBase0
|
|
8
|
+
module Runner
|
|
9
|
+
class ApacheHost < ::EacRubyUtils::Console::DocoptRunner
|
|
10
|
+
include ::EacCli::DefaultRunner
|
|
11
|
+
|
|
12
|
+
stereotype_name = name.deconstantize.demodulize
|
|
13
|
+
runner_definition do
|
|
14
|
+
desc "Configure Apache virtual host for #{stereotype_name} instance."
|
|
15
|
+
bool_opt '-c', '--certbot', 'Install certbot.'
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def run
|
|
19
|
+
options
|
|
20
|
+
result = stereotype_apache_host_class.new(context(:instance),
|
|
21
|
+
stereotype_apache_host_options).run
|
|
22
|
+
if result.error?
|
|
23
|
+
fatal_error result.to_s
|
|
24
|
+
else
|
|
25
|
+
infov 'Result', result.label
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def stereotype_apache_host_class
|
|
30
|
+
"#{context(:instance).class.name.deconstantize}::ApacheHost".constantize
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def stereotype_apache_host_options
|
|
34
|
+
{ certbot: options.fetch('--certbot') }
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'eac_ruby_utils/console/docopt_runner'
|
|
4
|
+
require 'eac_ruby_utils/require_sub'
|
|
5
|
+
|
|
6
|
+
module Avm
|
|
7
|
+
module EacWebappBase0
|
|
8
|
+
module Runner
|
|
9
|
+
class Data < ::EacRubyUtils::Console::DocoptRunner
|
|
10
|
+
::EacRubyUtils.require_sub(__FILE__)
|
|
11
|
+
|
|
12
|
+
DOC = <<~DOCOPT
|
|
13
|
+
Data utilities for EacRailsBase0 instances.
|
|
14
|
+
|
|
15
|
+
Usage:
|
|
16
|
+
__PROGRAM__ __SUBCOMMANDS__
|
|
17
|
+
__PROGRAM__ -h | --help
|
|
18
|
+
|
|
19
|
+
Options:
|
|
20
|
+
-h --help Show this screen.
|
|
21
|
+
DOCOPT
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'active_support/core_ext/numeric/time'
|
|
4
|
+
require 'eac_ruby_utils/console/speaker'
|
|
5
|
+
require 'eac_ruby_utils/simple_cache'
|
|
6
|
+
require 'avm/data/package/dump'
|
|
7
|
+
|
|
8
|
+
module Avm
|
|
9
|
+
module EacWebappBase0
|
|
10
|
+
module Runner
|
|
11
|
+
class Data < ::EacRubyUtils::Console::DocoptRunner
|
|
12
|
+
class Dump < ::EacRubyUtils::Console::DocoptRunner
|
|
13
|
+
include ::EacRubyUtils::SimpleCache
|
|
14
|
+
include ::EacRubyUtils::Console::Speaker
|
|
15
|
+
|
|
16
|
+
DUMP_EXPIRE_TIME = 1.day
|
|
17
|
+
DEFAULT_DUMP_PATH_ENTRY_SUFFIX = 'data.default_dump_path'
|
|
18
|
+
NO_DUMP_MESSAGE = 'Dump "%s" already exist and rewrite options was no setted nor ' \
|
|
19
|
+
'dump was expired.'
|
|
20
|
+
|
|
21
|
+
DOC = <<~DOCUMENT
|
|
22
|
+
Dump utility for EacRailsBase instance.
|
|
23
|
+
|
|
24
|
+
Usage:
|
|
25
|
+
__PROGRAM__ [options]
|
|
26
|
+
|
|
27
|
+
Options:
|
|
28
|
+
-h --help Show this screen.
|
|
29
|
+
--rewrite Forces dump overwrite.
|
|
30
|
+
--dump-path=<dump_path> Set DUMP_PATH variable.
|
|
31
|
+
DOCUMENT
|
|
32
|
+
|
|
33
|
+
def run
|
|
34
|
+
infov 'Instance to dump', "#{context(:instance)} (#{context(:instance).class})"
|
|
35
|
+
if package_dump.runnable?
|
|
36
|
+
package_dump.run
|
|
37
|
+
else
|
|
38
|
+
warn(package_dump.cannot_run_reason)
|
|
39
|
+
end
|
|
40
|
+
success("Dump path: \"#{dump_path}\"")
|
|
41
|
+
dump_path
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
private
|
|
45
|
+
|
|
46
|
+
def package_dump_uncached
|
|
47
|
+
context(:instance).data_package.dump(dump_path, existing: package_dump_existing)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def dump_path
|
|
51
|
+
options.fetch('--dump-path') || default_dump_path
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def default_dump_path
|
|
55
|
+
context(:instance).read_entry(DEFAULT_DUMP_PATH_ENTRY_SUFFIX)
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
def package_dump_existing
|
|
59
|
+
if options.fetch('--rewrite')
|
|
60
|
+
::Avm::Data::Package::Dump::EXISTING_ROTATE
|
|
61
|
+
else
|
|
62
|
+
::Avm::Data::Package::Dump::EXISTING_ROTATE_EXPIRED
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'active_support/core_ext/numeric/time'
|
|
4
|
+
require 'eac_ruby_utils/console/speaker'
|
|
5
|
+
require 'eac_ruby_utils/simple_cache'
|
|
6
|
+
|
|
7
|
+
module Avm
|
|
8
|
+
module EacWebappBase0
|
|
9
|
+
module Runner
|
|
10
|
+
class Data < ::EacRubyUtils::Console::DocoptRunner
|
|
11
|
+
class Load < ::EacRubyUtils::Console::DocoptRunner
|
|
12
|
+
include ::EacRubyUtils::SimpleCache
|
|
13
|
+
include ::EacRubyUtils::Console::Speaker
|
|
14
|
+
|
|
15
|
+
DOC = <<~DOCUMENT
|
|
16
|
+
Load utility for EacRailsBase instance.
|
|
17
|
+
|
|
18
|
+
Usage:
|
|
19
|
+
__PROGRAM__ (<dump-path>|--source-instance=<source-instance>)
|
|
20
|
+
__PROGRAM__ -h | --help
|
|
21
|
+
|
|
22
|
+
Options:
|
|
23
|
+
-h --help Show this screen.
|
|
24
|
+
-S --source-instance=<source-instance> Informa a instância a ser extraída o dump.
|
|
25
|
+
DOCUMENT
|
|
26
|
+
|
|
27
|
+
def run
|
|
28
|
+
return ::Dev::Result.error("Dump \"#{dump_path}\" does not exist") unless
|
|
29
|
+
::File.exist?(dump_path)
|
|
30
|
+
|
|
31
|
+
load_dump
|
|
32
|
+
success("Dump loaded from \"#{dump_path}\"")
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def dump_path_uncached
|
|
36
|
+
return options.fetch('<dump-path>').to_s if options.fetch('<dump-path>').present?
|
|
37
|
+
return source_instance_dump_path if options.fetch('--source-instance').present?
|
|
38
|
+
|
|
39
|
+
raise "Dump path unknown (Options: #{options})"
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def source_instance_dump_path
|
|
43
|
+
context(:instance).class.by_id(
|
|
44
|
+
options.fetch('--source-instance')
|
|
45
|
+
).data_dump
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def load_dump
|
|
49
|
+
info "Loading dump \"#{dump_path}\"..."
|
|
50
|
+
package_load.run
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def dump_instance_method
|
|
54
|
+
:dump_database
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
private
|
|
58
|
+
|
|
59
|
+
def package_load_uncached
|
|
60
|
+
context(:instance).data_package.load(dump_path)
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'avm/path_string'
|
|
4
|
+
require 'eac_ruby_utils/console/docopt_runner'
|
|
5
|
+
require 'eac_ruby_utils/console/speaker'
|
|
6
|
+
|
|
7
|
+
module Avm
|
|
8
|
+
module EacWebappBase0
|
|
9
|
+
module Runner
|
|
10
|
+
class Deploy < ::EacRubyUtils::Console::DocoptRunner
|
|
11
|
+
include ::EacRubyUtils::Console::Speaker
|
|
12
|
+
|
|
13
|
+
DOC = <<~DOCOPT
|
|
14
|
+
Deploy for %%STEREOTYPE_NAME%% instance.
|
|
15
|
+
|
|
16
|
+
Usage:
|
|
17
|
+
__PROGRAM__ [options]
|
|
18
|
+
__PROGRAM__ -h | --help
|
|
19
|
+
|
|
20
|
+
Options:
|
|
21
|
+
-h --help Show this screen.
|
|
22
|
+
-r --reference=<git-reference> Git reference to deploy.
|
|
23
|
+
-a --append-dirs=<append-dirs> Append directories to deploy (List separated by ":").
|
|
24
|
+
DOCOPT
|
|
25
|
+
def initialize(settings = {})
|
|
26
|
+
super settings.merge(doc: DOC.gsub('%%STEREOTYPE_NAME%%', stereotype_name))
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def deploy_class
|
|
30
|
+
stereotype_module.const_get('Deploy')
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def stereotype_module
|
|
34
|
+
::Avm::Stereotypes.const_get(stereotype_name)
|
|
35
|
+
rescue ::NameError
|
|
36
|
+
::Avm.const_get(stereotype_name)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def stereotype_name
|
|
40
|
+
self.class.name.deconstantize.demodulize
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
def run
|
|
44
|
+
result = deploy_class.new(context(:instance), deploy_options).run
|
|
45
|
+
if result.error?
|
|
46
|
+
fatal_error result.to_s
|
|
47
|
+
else
|
|
48
|
+
infov 'Result', result.label
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def deploy_options
|
|
53
|
+
{ reference: options.fetch('--reference'),
|
|
54
|
+
appended_directories: ::Avm::PathString.paths(options.fetch('--append-dirs')) }
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'avm/
|
|
3
|
+
require 'avm/eac_webapp_base0/apache_host'
|
|
4
4
|
|
|
5
5
|
module Avm
|
|
6
6
|
module Stereotypes
|
|
7
7
|
module EacWordpressBase0
|
|
8
|
-
class ApacheHost < ::Avm::
|
|
8
|
+
class ApacheHost < ::Avm::EacWebappBase0::ApacheHost
|
|
9
9
|
def document_root
|
|
10
10
|
instance.read_entry(:fs_path)
|
|
11
11
|
end
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'avm/
|
|
3
|
+
require 'avm/eac_webapp_base0/deploy'
|
|
4
4
|
|
|
5
5
|
module Avm
|
|
6
6
|
module Stereotypes
|
|
7
7
|
module EacWordpressBase0
|
|
8
|
-
class Deploy < ::Avm::
|
|
8
|
+
class Deploy < ::Avm::EacWebappBase0::Deploy
|
|
9
9
|
end
|
|
10
10
|
end
|
|
11
11
|
end
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'avm/instances/entry_keys'
|
|
4
|
-
require 'avm/
|
|
4
|
+
require 'avm/eac_webapp_base0/instance'
|
|
5
5
|
|
|
6
6
|
module Avm
|
|
7
7
|
module Stereotypes
|
|
8
8
|
module EacWordpressBase0
|
|
9
|
-
class Instance < ::Avm::
|
|
9
|
+
class Instance < ::Avm::EacWebappBase0::Instance
|
|
10
10
|
FILES_UNITS = { uploads: 'wp-content/uploads', themes: 'wp-content/themes' }.freeze
|
|
11
11
|
|
|
12
12
|
def database_unit
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
require 'eac_ruby_utils/console/docopt_runner'
|
|
4
4
|
require 'eac_ruby_utils/simple_cache'
|
|
5
|
-
require 'avm/
|
|
5
|
+
require 'avm/eac_rails_base0/instance'
|
|
6
6
|
require 'eac_ruby_utils/require_sub'
|
|
7
7
|
::EacRubyUtils.require_sub(__FILE__)
|
|
8
8
|
|
|
@@ -26,7 +26,7 @@ module Avm
|
|
|
26
26
|
private
|
|
27
27
|
|
|
28
28
|
def instance_uncached
|
|
29
|
-
::Avm::
|
|
29
|
+
::Avm::EacRailsBase0::Instance.by_id(options['<instance_id>'])
|
|
30
30
|
end
|
|
31
31
|
end
|
|
32
32
|
end
|
|
@@ -1,37 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require 'avm/eac_webapp_base0/runner/apache_host'
|
|
3
4
|
require 'eac_ruby_utils/console/docopt_runner'
|
|
4
|
-
require '
|
|
5
|
-
require 'avm/stereotypes/eac_rails_base0/apache_host'
|
|
5
|
+
require 'avm/eac_rails_base0/apache_host'
|
|
6
6
|
|
|
7
7
|
module Avm
|
|
8
8
|
module Tools
|
|
9
9
|
class Runner < ::EacRubyUtils::Console::DocoptRunner
|
|
10
10
|
class EacRailsBase0 < ::EacRubyUtils::Console::DocoptRunner
|
|
11
|
-
class ApacheHost < ::
|
|
12
|
-
include ::EacRubyUtils::Console::Speaker
|
|
13
|
-
|
|
14
|
-
DOC = <<~DOCOPT
|
|
15
|
-
Deploy for EacRailsBase0 instance.
|
|
16
|
-
|
|
17
|
-
Usage:
|
|
18
|
-
__PROGRAM__ [options]
|
|
19
|
-
__PROGRAM__ -h | --help
|
|
20
|
-
|
|
21
|
-
Options:
|
|
22
|
-
-h --help Show this screen.
|
|
23
|
-
DOCOPT
|
|
24
|
-
|
|
25
|
-
def run
|
|
26
|
-
result = ::Avm::Stereotypes::EacRailsBase0::ApacheHost.new(
|
|
27
|
-
context(:instance)
|
|
28
|
-
).run
|
|
29
|
-
if result.error?
|
|
30
|
-
fatal_error result.to_s
|
|
31
|
-
else
|
|
32
|
-
infov 'Result', result.label
|
|
33
|
-
end
|
|
34
|
-
end
|
|
11
|
+
class ApacheHost < ::Avm::EacWebappBase0::Runner::ApacheHost
|
|
35
12
|
end
|
|
36
13
|
end
|
|
37
14
|
end
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require 'avm/
|
|
3
|
+
require 'avm/eac_webapp_base0/runner/data'
|
|
4
4
|
require 'eac_ruby_utils/console/docopt_runner'
|
|
5
5
|
|
|
6
6
|
module Avm
|
|
7
7
|
module Tools
|
|
8
8
|
class Runner < ::EacRubyUtils::Console::DocoptRunner
|
|
9
9
|
class EacRailsBase0 < ::EacRubyUtils::Console::DocoptRunner
|
|
10
|
-
class Data < ::Avm::
|
|
10
|
+
class Data < ::Avm::EacWebappBase0::Runner::Data
|
|
11
11
|
end
|
|
12
12
|
end
|
|
13
13
|
end
|