eac_tools 0.36.1 → 0.37.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +28 -27
- data/lib/eac_tools/version.rb +1 -1
- data/sub/avm/avm.gemspec +3 -1
- data/sub/avm/lib/avm/launcher/context.rb +6 -3
- data/sub/avm/lib/avm/launcher/paths/logical.rb +0 -1
- data/sub/avm/lib/avm/launcher/publish/base.rb +0 -2
- data/sub/avm/lib/avm/launcher/stereotype.rb +4 -4
- data/sub/avm/lib/avm/launcher_stereotypes.rb +9 -0
- data/sub/avm/lib/avm/registry/launcher_stereotypes.rb +11 -0
- data/sub/avm/lib/avm/registry.rb +2 -2
- data/sub/avm/lib/avm/rspec/setup/launcher.rb +19 -0
- data/sub/avm/lib/avm/rspec/setup.rb +4 -0
- data/sub/avm/lib/avm/rspec/source_generator.rb +16 -0
- data/sub/avm/lib/avm/version.rb +1 -1
- data/sub/avm-eac_ruby_base1/avm-eac_ruby_base1.gemspec +2 -2
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher/gem/build.rb +1 -0
- data/sub/{avm-tools/lib/avm/projects/stereotypes/ruby_gem → avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base}/local_project_mixin.rb +3 -3
- data/sub/{avm-tools/lib/avm/projects/stereotypes/ruby_gem → avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base}/publish.rb +4 -4
- data/sub/{avm-tools/lib/avm/projects/stereotypes/ruby_gem.rb → avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes/base.rb} +5 -5
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/launcher_stereotypes.rb +11 -0
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/setup.rb +16 -0
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec/source_generator.rb +22 -0
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/rspec.rb +11 -0
- data/sub/avm-eac_ruby_base1/lib/avm/eac_ruby_base1/version.rb +1 -1
- data/sub/{avm-tools/spec/lib/avm/launcher/ruby → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher}/gem/build_spec.rb +7 -4
- data/sub/{avm-tools/spec/lib/avm/launcher/ruby → avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher}/gem/specification_spec.rb +13 -4
- data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb +24 -0
- data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base_spec.rb +23 -0
- data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/sources/base_spec.rb +9 -0
- data/sub/avm-eac_ruby_base1/spec/spec_helper.rb +4 -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/deploy/build.rb +1 -1
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/{git_info.rb → scm.rb} +10 -5
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy/version.rb +2 -2
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/instances/deploy.rb +3 -2
- data/sub/avm-eac_webapp_base0/lib/avm/eac_webapp_base0/version.rb +1 -1
- data/sub/avm-git/avm-git.gemspec +4 -3
- data/sub/avm-git/lib/avm/git/launcher/base/underlying.rb +8 -10
- data/sub/avm-git/lib/avm/git/launcher/error.rb +3 -1
- data/sub/avm-git/lib/avm/git/launcher/warp_base.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git/local_project_mixin.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git/publish.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git/warp.rb +3 -3
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git_subrepo/publish.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git_subrepo/warp.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git_subrepo.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git_subtree/publish.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git_subtree/warp.rb +2 -2
- data/sub/{avm-tools/lib/avm/projects/stereotypes → avm-git/lib/avm/git/launcher_stereotypes}/git_subtree.rb +6 -6
- data/sub/avm-git/lib/avm/git/launcher_stereotypes/provider.rb +22 -0
- data/sub/avm-git/lib/avm/git/launcher_stereotypes.rb +11 -0
- data/sub/avm-git/lib/avm/git/version.rb +1 -1
- data/sub/{avm-tools/spec/lib/avm/launcher/git → avm-git/spec/lib/avm/git/launcher}/base_spec.rb +5 -5
- data/sub/avm-tools/avm-tools.gemspec +4 -4
- data/sub/avm-tools/lib/avm/projects/stereotypes.rb +4 -0
- data/sub/avm-tools/lib/avm/tools/runner/launcher_stereotypes/list.rb +42 -0
- data/sub/avm-tools/lib/avm/tools/runner/launcher_stereotypes.rb +16 -0
- data/sub/avm-tools/lib/avm/tools/version.rb +1 -1
- data/sub/avm-tools/spec/lib/avm/launcher/context_spec.rb +3 -3
- data/sub/avm-tools/spec/lib/avm/projects/stereotypes/git_subrepo/publish_spec.rb +3 -3
- data/sub/avm-tools/spec/lib/avm/projects/stereotypes/git_subrepo/warp_spec.rb +3 -3
- data/sub/avm-tools/spec/lib/avm/tools/runner/launcher_stereotypes/list_spec.rb +17 -0
- data/sub/eac_git/eac_git.gemspec +1 -1
- data/sub/eac_git/lib/eac_git/local/remote.rb +12 -1
- data/sub/eac_git/lib/eac_git/remote.rb +10 -5
- data/sub/eac_git/lib/eac_git/{remote → remote_like}/ls_result.rb +1 -1
- data/sub/eac_git/lib/eac_git/remote_like.rb +32 -0
- data/sub/eac_git/lib/eac_git/version.rb +1 -1
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/exec_error.rb +10 -0
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command/execute_result.rb +47 -0
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/envs/command.rb +3 -40
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup/setup_manager.rb +17 -0
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/rspec/setup.rb +8 -2
- data/sub/eac_ruby_utils/lib/eac_ruby_utils/version.rb +1 -1
- data/sub/eac_ruby_utils/spec/lib/eac_ruby_utils/rspec/setup/setup_manager_spec.rb +17 -0
- metadata +56 -38
- data/sub/avm-tools/spec/lib/avm/projects/stereotypes/ruby_gem/publish_spec.rb +0 -19
- data/sub/avm-tools/spec/lib/avm/projects/stereotypes/ruby_gem_spec.rb +0 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3a06d6cf3c9faa8f37538fc898007ccf3501d0fbff41a883ba7b36a9d8f9a366
|
4
|
+
data.tar.gz: 6bf1bd1dce7b5cedce59963194408964ed49ea4cf85a44609df482e29bddc9d0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55243dbe562ad019575f0014096a024aeb844723597fe4b00dc415c1f234a1424fca4d80498c7c679d9ace63fc0ead2c205b4a224ebf8bbca1f95d9fb96fd92d
|
7
|
+
data.tar.gz: 5b47516144519424c1d3345460f6d36b5fd9d011015a1daa7342b9656d9512e53d0954c59a4545f71395f0a0fcedb74bc352edc7ba6406bf33806fe7c46726e7
|
data/Gemfile.lock
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
eac_tools (0.
|
5
|
-
avm (~> 0.
|
4
|
+
eac_tools (0.37.1)
|
5
|
+
avm (~> 0.50)
|
6
6
|
avm-eac_asciidoctor_base0 (~> 0.7, >= 0.7.1)
|
7
7
|
avm-eac_generic_base0 (~> 0.5)
|
8
8
|
avm-eac_latex_base0 (~> 0.2, >= 0.2.1)
|
@@ -11,11 +11,11 @@ PATH
|
|
11
11
|
avm-eac_rails_base1 (~> 0.7)
|
12
12
|
avm-eac_redmine_base0 (~> 0.16)
|
13
13
|
avm-eac_redmine_plugin_base0 (~> 0.3)
|
14
|
-
avm-eac_ruby_base1 (~> 0.
|
15
|
-
avm-eac_webapp_base0 (~> 0.
|
14
|
+
avm-eac_ruby_base1 (~> 0.25)
|
15
|
+
avm-eac_webapp_base0 (~> 0.10)
|
16
16
|
avm-eac_wordpress_base0 (~> 0.2, >= 0.2.1)
|
17
|
-
avm-tools (~> 0.
|
18
|
-
eac_ruby_utils (~> 0.
|
17
|
+
avm-tools (~> 0.142, >= 0.142.1)
|
18
|
+
eac_ruby_utils (~> 0.105)
|
19
19
|
|
20
20
|
PATH
|
21
21
|
remote: sub/avm-eac_asciidoctor_base0
|
@@ -87,20 +87,20 @@ PATH
|
|
87
87
|
PATH
|
88
88
|
remote: sub/avm-eac_ruby_base1
|
89
89
|
specs:
|
90
|
-
avm-eac_ruby_base1 (0.
|
91
|
-
avm (~> 0.
|
90
|
+
avm-eac_ruby_base1 (0.25.0)
|
91
|
+
avm (~> 0.50)
|
92
92
|
avm-eac_generic_base0 (~> 0.5)
|
93
|
-
eac_ruby_utils (~> 0.
|
93
|
+
eac_ruby_utils (~> 0.105)
|
94
94
|
|
95
95
|
PATH
|
96
96
|
remote: sub/avm-eac_webapp_base0
|
97
97
|
specs:
|
98
|
-
avm-eac_webapp_base0 (0.
|
99
|
-
avm (~> 0.
|
98
|
+
avm-eac_webapp_base0 (0.10.0)
|
99
|
+
avm (~> 0.50)
|
100
100
|
avm-eac_generic_base0 (~> 0.5)
|
101
101
|
avm-eac_postgresql_base0 (~> 0.2)
|
102
102
|
avm-eac_ubuntu_base0 (~> 0.3)
|
103
|
-
eac_ruby_utils (~> 0.
|
103
|
+
eac_ruby_utils (~> 0.105)
|
104
104
|
|
105
105
|
PATH
|
106
106
|
remote: sub/avm-eac_wordpress_base0
|
@@ -123,25 +123,26 @@ PATH
|
|
123
123
|
PATH
|
124
124
|
remote: sub/avm-git
|
125
125
|
specs:
|
126
|
-
avm-git (0.
|
127
|
-
avm (~> 0.
|
126
|
+
avm-git (0.8.0)
|
127
|
+
avm (~> 0.50)
|
128
128
|
avm-files (~> 0.4, >= 0.4.1)
|
129
|
-
eac_git (~> 0.
|
130
|
-
eac_ruby_utils (~> 0.
|
129
|
+
eac_git (~> 0.13)
|
130
|
+
eac_ruby_utils (~> 0.105)
|
131
|
+
git (~> 1.12)
|
131
132
|
|
132
133
|
PATH
|
133
134
|
remote: sub/avm-tools
|
134
135
|
specs:
|
135
|
-
avm-tools (0.
|
136
|
+
avm-tools (0.142.1)
|
136
137
|
aranha-parsers (~> 0.14, >= 0.14.3)
|
137
|
-
avm (~> 0.
|
138
|
-
avm-eac_ruby_base1 (~> 0.
|
138
|
+
avm (~> 0.50)
|
139
|
+
avm-eac_ruby_base1 (~> 0.25)
|
139
140
|
avm-eac_ubuntu_base0 (~> 0.3)
|
140
141
|
avm-files (~> 0.4, >= 0.4.1)
|
141
|
-
avm-git (~> 0.
|
142
|
+
avm-git (~> 0.8)
|
142
143
|
clipboard (~> 1.3, >= 1.3.6)
|
143
144
|
curb (~> 0.9, >= 0.9.11)
|
144
|
-
eac_git (~> 0.
|
145
|
+
eac_git (~> 0.13)
|
145
146
|
eac_ruby_base0 (~> 0.17)
|
146
147
|
eac_templates (~> 0.3, >= 0.3.2)
|
147
148
|
git (~> 1.12)
|
@@ -150,12 +151,12 @@ PATH
|
|
150
151
|
PATH
|
151
152
|
remote: sub/avm
|
152
153
|
specs:
|
153
|
-
avm (0.
|
154
|
+
avm (0.50.0)
|
154
155
|
eac_cli (~> 0.28)
|
155
156
|
eac_config (~> 0.11, >= 0.11.1)
|
156
157
|
eac_docker (~> 0.5)
|
157
158
|
eac_git (~> 0.12, >= 0.12.3)
|
158
|
-
eac_ruby_utils (~> 0.
|
159
|
+
eac_ruby_utils (~> 0.105)
|
159
160
|
eac_templates (~> 0.3, >= 0.3.2)
|
160
161
|
filesize (~> 0.2)
|
161
162
|
htmlbeautifier (~> 1.4, >= 1.4.2)
|
@@ -194,8 +195,8 @@ PATH
|
|
194
195
|
PATH
|
195
196
|
remote: sub/eac_git
|
196
197
|
specs:
|
197
|
-
eac_git (0.
|
198
|
-
eac_ruby_utils (~> 0.
|
198
|
+
eac_git (0.13.0)
|
199
|
+
eac_ruby_utils (~> 0.105)
|
199
200
|
parseconfig (~> 1.1, >= 1.1.2)
|
200
201
|
|
201
202
|
PATH
|
@@ -210,7 +211,7 @@ PATH
|
|
210
211
|
PATH
|
211
212
|
remote: sub/eac_ruby_utils
|
212
213
|
specs:
|
213
|
-
eac_ruby_utils (0.
|
214
|
+
eac_ruby_utils (0.105.0)
|
214
215
|
activesupport (>= 4, < 7)
|
215
216
|
addressable (~> 2.8, >= 2.8.1)
|
216
217
|
bundler
|
@@ -237,7 +238,7 @@ GEM
|
|
237
238
|
faraday_middleware (~> 1.2)
|
238
239
|
nokogiri (~> 1.13, >= 1.13.8)
|
239
240
|
ofx-parser (~> 1.1)
|
240
|
-
asciidoctor (2.0.
|
241
|
+
asciidoctor (2.0.18)
|
241
242
|
ast (2.4.2)
|
242
243
|
avm-eac_postgresql_base0 (0.2.0)
|
243
244
|
avm (~> 0.12, >= 0.12.1)
|
data/lib/eac_tools/version.rb
CHANGED
data/sub/avm/avm.gemspec
CHANGED
@@ -16,12 +16,14 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.add_dependency 'eac_config', '~> 0.11', '>= 0.11.1'
|
17
17
|
s.add_dependency 'eac_docker', '~> 0.5'
|
18
18
|
s.add_dependency 'eac_git', '~> 0.12', '>= 0.12.3'
|
19
|
-
s.add_dependency 'eac_ruby_utils', '~> 0.
|
19
|
+
s.add_dependency 'eac_ruby_utils', '~> 0.105'
|
20
20
|
s.add_dependency 'eac_templates', '~> 0.3', '>= 0.3.2'
|
21
21
|
s.add_dependency 'filesize', '~> 0.2'
|
22
22
|
s.add_dependency 'htmlbeautifier', '~> 1.4', '>= 1.4.2'
|
23
23
|
s.add_dependency 'minitar', '~> 0.9'
|
24
24
|
|
25
25
|
s.add_development_dependency 'aranha-parsers', '~> 0.14', '~> 0.14.1'
|
26
|
+
s.add_development_dependency 'avm-eac_ruby_base1', '~> 0.24'
|
27
|
+
s.add_development_dependency 'avm-git', '~> 0.7'
|
26
28
|
s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5.1'
|
27
29
|
end
|
@@ -8,7 +8,6 @@ require 'avm/launcher/context/instance_discovery'
|
|
8
8
|
require 'avm/launcher/context/settings'
|
9
9
|
require 'avm/launcher/paths/logical'
|
10
10
|
require 'avm/launcher/project'
|
11
|
-
require 'avm/tools/self'
|
12
11
|
|
13
12
|
module Avm
|
14
13
|
module Launcher
|
@@ -43,6 +42,10 @@ module Avm
|
|
43
42
|
@recache = false
|
44
43
|
end
|
45
44
|
|
45
|
+
def fs_object_id
|
46
|
+
root.real.variableize
|
47
|
+
end
|
48
|
+
|
46
49
|
def instance(name)
|
47
50
|
instances.find { |i| i.name == name }
|
48
51
|
end
|
@@ -66,7 +69,7 @@ module Avm
|
|
66
69
|
end
|
67
70
|
|
68
71
|
def default_cache_root
|
69
|
-
|
72
|
+
fs_cache.path
|
70
73
|
end
|
71
74
|
|
72
75
|
def default_option(key)
|
@@ -78,7 +81,7 @@ module Avm
|
|
78
81
|
end
|
79
82
|
|
80
83
|
def default_settings_file
|
81
|
-
::
|
84
|
+
::File.join(::EacFs::Contexts.config.current.path, 'launcher.yaml')
|
82
85
|
end
|
83
86
|
|
84
87
|
def projects_uncached
|
@@ -35,8 +35,6 @@ module Avm
|
|
35
35
|
internal_check
|
36
36
|
rescue ::Avm::Launcher::Errors::Base => e
|
37
37
|
::Avm::Launcher::Publish::CheckResult.blocked("Error: #{e}")
|
38
|
-
rescue ::Avm::Launcher::Git::Error => e
|
39
|
-
::Avm::Launcher::Publish::CheckResult.blocked("Git error: #{e}")
|
40
38
|
end
|
41
39
|
end
|
42
40
|
end
|
@@ -7,11 +7,7 @@ module Avm
|
|
7
7
|
module Launcher
|
8
8
|
module Stereotype
|
9
9
|
class << self
|
10
|
-
attr_reader :stereotypes
|
11
|
-
|
12
10
|
def included(base)
|
13
|
-
@stereotypes ||= []
|
14
|
-
@stereotypes << base
|
15
11
|
base.extend(ClassMethods)
|
16
12
|
end
|
17
13
|
|
@@ -22,6 +18,10 @@ module Avm
|
|
22
18
|
def nogit_stereotypes
|
23
19
|
stereotypes - git_stereotypes
|
24
20
|
end
|
21
|
+
|
22
|
+
def stereotypes
|
23
|
+
::Avm::Registry.launcher_stereotypes.available
|
24
|
+
end
|
25
25
|
end
|
26
26
|
|
27
27
|
module ClassMethods
|
data/sub/avm/lib/avm/registry.rb
CHANGED
@@ -7,8 +7,8 @@ module Avm
|
|
7
7
|
module Registry
|
8
8
|
require_sub __FILE__
|
9
9
|
enable_listable
|
10
|
-
lists.add_symbol :category, :application_stereotypes, :instances, :
|
11
|
-
:source_generators, :sources
|
10
|
+
lists.add_symbol :category, :application_stereotypes, :instances, :launcher_stereotypes,
|
11
|
+
:runners, :scms, :source_generators, :sources
|
12
12
|
|
13
13
|
class << self
|
14
14
|
enable_simple_cache
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/core_ext'
|
4
|
+
require 'tmpdir'
|
5
|
+
|
6
|
+
module Avm
|
7
|
+
module Rspec
|
8
|
+
module Setup
|
9
|
+
module Launcher
|
10
|
+
def temp_launcher_context(settings_file = nil)
|
11
|
+
settings_file ||= temp_file
|
12
|
+
::Avm::Launcher::Context.current = ::Avm::Launcher::Context.new(
|
13
|
+
projects_root: ::Dir.mktmpdir, settings_file: settings_file, cache_root: ::Dir.mktmpdir
|
14
|
+
)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -1,14 +1,18 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'avm/rspec/source_generator'
|
3
4
|
require 'eac_ruby_utils/core_ext'
|
4
5
|
|
5
6
|
module Avm
|
6
7
|
module Rspec
|
7
8
|
module Setup
|
9
|
+
require_sub __FILE__
|
8
10
|
EXAMPLES = %w[entries_values in_avm_registry not_in_avm_registry].freeze
|
9
11
|
|
10
12
|
def self.extended(obj)
|
11
13
|
obj.setup_examples
|
14
|
+
obj.rspec_config.include(::Avm::Rspec::Setup::Launcher)
|
15
|
+
obj.rspec_config.include(::Avm::Rspec::SourceGenerator)
|
12
16
|
end
|
13
17
|
|
14
18
|
def setup_examples
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/core_ext'
|
4
|
+
|
5
|
+
module Avm
|
6
|
+
module Rspec
|
7
|
+
module SourceGenerator
|
8
|
+
# @return [Avm::Sources::Base]
|
9
|
+
def avm_source(stereotype_name, options = {})
|
10
|
+
target_path ||= options.delete(:target_path) || temp_dir.join('generated_app')
|
11
|
+
::Avm::Registry.source_generators.detect(stereotype_name, target_path, options).perform
|
12
|
+
::Avm::Registry.sources.detect(target_path)
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/sub/avm/lib/avm/version.rb
CHANGED
@@ -12,9 +12,9 @@ Gem::Specification.new do |s|
|
|
12
12
|
|
13
13
|
s.files = Dir['{lib,locale,template}/**/*']
|
14
14
|
|
15
|
-
s.add_dependency 'avm', '~> 0.
|
15
|
+
s.add_dependency 'avm', '~> 0.50'
|
16
16
|
s.add_dependency 'avm-eac_generic_base0', '~> 0.5'
|
17
|
-
s.add_dependency 'eac_ruby_utils', '~> 0.
|
17
|
+
s.add_dependency 'eac_ruby_utils', '~> 0.105'
|
18
18
|
|
19
19
|
s.add_development_dependency 'aranha-parsers', '~> 0.14', '>= 0.14.1'
|
20
20
|
s.add_development_dependency 'eac_ruby_gem_support', '~> 0.5.1'
|
@@ -5,9 +5,9 @@ require 'avm/version_number'
|
|
5
5
|
require 'eac_ruby_utils/core_ext'
|
6
6
|
|
7
7
|
module Avm
|
8
|
-
module
|
9
|
-
module
|
10
|
-
class
|
8
|
+
module EacRubyBase1
|
9
|
+
module LauncherStereotypes
|
10
|
+
class Base
|
11
11
|
module LocalProjectMixin
|
12
12
|
# @return [Avm::EacRubyBase1::Sources::Base]
|
13
13
|
def ruby_gem
|
@@ -10,9 +10,9 @@ require 'avm/launcher/publish/check_result'
|
|
10
10
|
require 'avm/eac_ruby_base1/launcher/gem'
|
11
11
|
|
12
12
|
module Avm
|
13
|
-
module
|
14
|
-
module
|
15
|
-
class
|
13
|
+
module EacRubyBase1
|
14
|
+
module LauncherStereotypes
|
15
|
+
class Base
|
16
16
|
class Publish < ::Avm::Launcher::Publish::Base
|
17
17
|
include ::EacRubyUtils::SimpleCache
|
18
18
|
enable_speaker
|
@@ -67,7 +67,7 @@ module Avm
|
|
67
67
|
end
|
68
68
|
|
69
69
|
def gem_spec_uncached
|
70
|
-
::Avm::
|
70
|
+
::Avm::EacRubyBase1::LauncherStereotypes::Base.load_gemspec(gemspec)
|
71
71
|
end
|
72
72
|
|
73
73
|
def gem_build_uncached
|
@@ -1,15 +1,15 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'avm/eac_ruby_base1/launcher/gem/specification'
|
4
3
|
require 'avm/launcher/stereotype'
|
4
|
+
require 'avm/eac_ruby_base1/launcher/gem/specification'
|
5
5
|
require 'eac_ruby_utils/core_ext'
|
6
6
|
|
7
7
|
module Avm
|
8
|
-
module
|
9
|
-
module
|
10
|
-
class
|
8
|
+
module EacRubyBase1
|
9
|
+
module LauncherStereotypes
|
10
|
+
class Base
|
11
11
|
require_sub __FILE__
|
12
|
-
include Avm::Launcher::Stereotype
|
12
|
+
include ::Avm::Launcher::Stereotype
|
13
13
|
|
14
14
|
class << self
|
15
15
|
def match?(path)
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avm/eac_ruby_base1/rspec/source_generator'
|
4
|
+
require 'eac_ruby_utils/core_ext'
|
5
|
+
|
6
|
+
module Avm
|
7
|
+
module EacRubyBase1
|
8
|
+
module Rspec
|
9
|
+
module Setup
|
10
|
+
def self.extended(obj)
|
11
|
+
obj.rspec_config.include(::Avm::EacRubyBase1::Rspec::SourceGenerator)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'eac_ruby_utils/core_ext'
|
4
|
+
|
5
|
+
module Avm
|
6
|
+
module EacRubyBase1
|
7
|
+
module Rspec
|
8
|
+
module SourceGenerator
|
9
|
+
APPLICATION_STEREOTYPE = 'EacRubyBase1'
|
10
|
+
DEFAULT_EAC_RUBY_GEM_SUPPORT_VERSION = '0.5.1'
|
11
|
+
DEFAULT_EAC_RUBY_UTILS_VERSION = '0.104.0'
|
12
|
+
|
13
|
+
# @return [Avm::EacRubyBase1::Sources::Base]
|
14
|
+
def avm_eac_ruby_base1_source(options = {})
|
15
|
+
options['eac-ruby-utils-version'] ||= DEFAULT_EAC_RUBY_UTILS_VERSION
|
16
|
+
options['eac-ruby-gem-support-version'] ||= DEFAULT_EAC_RUBY_GEM_SUPPORT_VERSION
|
17
|
+
avm_source(APPLICATION_STEREOTYPE, options)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -5,9 +5,12 @@ require 'avm/eac_ruby_base1/launcher/gem/build'
|
|
5
5
|
|
6
6
|
RSpec.describe ::Avm::EacRubyBase1::Launcher::Gem::Build do
|
7
7
|
describe '#output_file' do
|
8
|
-
let(:gem_dir)
|
8
|
+
let(:gem_dir) do
|
9
|
+
avm_eac_ruby_base1_source(target_path: temp_dir.join('ruby_gem_stub'))
|
10
|
+
.path.to_path
|
11
|
+
end
|
9
12
|
|
10
|
-
it 'builds .gem file' do
|
13
|
+
it 'builds .gem file' do # rubocop:disable RSpec/ExampleLength
|
11
14
|
expect(::File.directory?(gem_dir)).to eq true
|
12
15
|
build = described_class.new(gem_dir)
|
13
16
|
|
@@ -32,12 +35,12 @@ RSpec.describe ::Avm::EacRubyBase1::Launcher::Gem::Build do
|
|
32
35
|
expect(build.builded?).to eq false
|
33
36
|
end
|
34
37
|
|
35
|
-
def assert_open(build)
|
38
|
+
def assert_open(build) # rubocop:disable Metrics/AbcSize
|
36
39
|
expect(build.output_file.present?).to eq true
|
37
40
|
expect(build.builded?).to eq true
|
38
41
|
expect(::File.exist?(build.output_file)).to eq true
|
39
42
|
expect(::File.size(build.output_file)).to be_positive
|
40
|
-
expect(::File.basename(build.output_file)).to eq('ruby_gem_stub-
|
43
|
+
expect(::File.basename(build.output_file)).to eq('ruby_gem_stub-0.0.0.gem')
|
41
44
|
end
|
42
45
|
end
|
43
46
|
end
|
@@ -1,18 +1,27 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'avm/eac_ruby_base1/launcher/gem/specification'
|
4
|
+
|
3
5
|
RSpec.describe ::Avm::EacRubyBase1::Launcher::Gem::Specification do
|
4
|
-
let(:
|
6
|
+
let(:source_version) { '1.0.0.pre.stub' }
|
7
|
+
let(:source) do
|
8
|
+
r = avm_eac_ruby_base1_source(target_path: temp_dir.join('ruby_gem_stub'))
|
9
|
+
r.version = source_version
|
10
|
+
r
|
11
|
+
end
|
12
|
+
let(:gemspec_file) { source.gemspec_path.to_path }
|
13
|
+
let(:version_file) { source.version_file.path.to_path }
|
5
14
|
let(:instance) { described_class.new(gemspec_file) }
|
6
15
|
|
7
16
|
describe '#parse_version_file' do
|
8
|
-
it 'parses valid version file' do
|
9
|
-
file =
|
17
|
+
it 'parses valid version file' do # rubocop:disable RSpec/MultipleExpectations
|
18
|
+
file = version_file
|
10
19
|
expect(::File.exist?(file)).to eq true
|
11
20
|
version = described_class.parse_version_file(file)
|
12
21
|
expect(version).to eq('1.0.0.pre.stub')
|
13
22
|
end
|
14
23
|
|
15
|
-
it 'does not parse invalid version file' do
|
24
|
+
it 'does not parse invalid version file' do # rubocop:disable RSpec/MultipleExpectations
|
16
25
|
file = __FILE__
|
17
26
|
expect(::File.exist?(file)).to eq true
|
18
27
|
version = described_class.parse_version_file(file)
|
data/sub/avm-eac_ruby_base1/spec/lib/avm/eac_ruby_base1/launcher_stereotypes/base/publish_spec.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avm/launcher/context'
|
4
|
+
require 'avm/launcher/instances/base'
|
5
|
+
require 'avm/eac_ruby_base1/launcher_stereotypes/base/publish'
|
6
|
+
|
7
|
+
RSpec.describe ::Avm::EacRubyBase1::LauncherStereotypes::Base::Publish do
|
8
|
+
let(:context) do
|
9
|
+
r = temp_launcher_context
|
10
|
+
avm_eac_ruby_base1_source(target_path: r.root.real.to_pathname.join('ruby_gem_stub'))
|
11
|
+
r
|
12
|
+
end
|
13
|
+
|
14
|
+
describe '#publish' do
|
15
|
+
let(:instance) { context.instance('/ruby_gem_stub') }
|
16
|
+
|
17
|
+
it 'dries run publish for Ruby Gems' do
|
18
|
+
allow_any_instance_of(described_class).to receive(:gem_versions_uncached).and_return([]) # rubocop:disable RSpec/AnyInstance
|
19
|
+
expect(instance).to be_a ::Avm::Launcher::Instances::Base
|
20
|
+
context.publish_options = { confirm: false, new: true, stereotype: 'RubyGem' }
|
21
|
+
described_class.new(instance).run
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'avm/eac_ruby_base1/launcher_stereotypes/base'
|
4
|
+
|
5
|
+
RSpec.describe ::Avm::EacRubyBase1::LauncherStereotypes::Base do
|
6
|
+
describe '#load_gemspec' do
|
7
|
+
let(:dummy_dir) { avm_eac_ruby_base1_source(target_path: temp_dir.join(gemname)).path }
|
8
|
+
let(:gemname) { 'avm-eac_ruby_base1' }
|
9
|
+
let(:self_gemspec) { ::File.join(app_root_path, "#{gemname}.gemspec") }
|
10
|
+
let(:stub_gemspec) { ::File.join(dummy_dir, "#{gemname}.gemspec") }
|
11
|
+
let(:stub_expected_version) { '0.0.0' }
|
12
|
+
|
13
|
+
it 'does not return same version for different gemspecs with same name' do # rubocop:disable RSpec/ExampleLength, RSpec/MultipleExpectations
|
14
|
+
stub_spec = described_class.load_gemspec(stub_gemspec)
|
15
|
+
expect(stub_spec.version).to eq(stub_expected_version)
|
16
|
+
expect(stub_spec.name).to eq(gemname)
|
17
|
+
|
18
|
+
self_spec = described_class.load_gemspec(self_gemspec)
|
19
|
+
expect(self_spec.version).not_to eq(stub_expected_version)
|
20
|
+
expect(self_spec.name).to eq(gemname)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -1,7 +1,16 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'avm/eac_ruby_base1/sources/base'
|
4
|
+
require 'avm/version_number'
|
4
5
|
|
5
6
|
::RSpec.describe ::Avm::EacRubyBase1::Sources::Base do
|
7
|
+
let(:instance) { avm_eac_ruby_base1_source }
|
8
|
+
|
6
9
|
include_examples 'in_avm_registry', 'sources'
|
10
|
+
|
11
|
+
it { expect(instance).to be_a(described_class) }
|
12
|
+
|
13
|
+
it do
|
14
|
+
expect(instance.version).to eq(::Avm::VersionNumber.new('0.0.0'))
|
15
|
+
end
|
7
16
|
end
|
@@ -2,3 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'eac_ruby_utils/rspec/default_setup'
|
4
4
|
::EacRubyUtils::Rspec.default_setup_create(::File.expand_path('..', __dir__))
|
5
|
+
|
6
|
+
require 'eac_ruby_utils/speaker'
|
7
|
+
require 'eac_ruby_utils/rspec/stub_speaker'
|
8
|
+
::EacRubyUtils::Speaker.context.push(::EacRubyUtils::Rspec::StubSpeaker.new)
|
@@ -12,11 +12,11 @@ Gem::Specification.new do |s|
|
|
12
12
|
|
13
13
|
s.files = Dir['{lib,template}/**/*']
|
14
14
|
|
15
|
-
s.add_dependency 'avm', '~> 0.
|
15
|
+
s.add_dependency 'avm', '~> 0.50'
|
16
16
|
s.add_dependency 'avm-eac_generic_base0', '~> 0.5'
|
17
17
|
s.add_dependency 'avm-eac_postgresql_base0', '~> 0.2'
|
18
18
|
s.add_dependency 'avm-eac_ubuntu_base0', '~> 0.3'
|
19
|
-
s.add_dependency 'eac_ruby_utils', '~> 0.
|
19
|
+
s.add_dependency 'eac_ruby_utils', '~> 0.105'
|
20
20
|
|
21
21
|
s.add_development_dependency 'eac_ruby_gem_support', '~> 0.2'
|
22
22
|
end
|