fluent_command_builder 0.8.11 → 0.8.12
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.
- data/lib/fluent_command_builder/command_builder_config.rb +31 -0
- data/lib/fluent_command_builder/command_builders/appcfg_python.rb +0 -8
- data/lib/fluent_command_builder/command_builders/appcfg_python_16.rb +8 -30
- data/lib/fluent_command_builder/command_builders/appcfg_python_17.rb +8 -30
- data/lib/fluent_command_builder/command_builders/aspnet_compiler.rb +1 -9
- data/lib/fluent_command_builder/command_builders/aspnet_compiler_20.rb +8 -30
- data/lib/fluent_command_builder/command_builders/aspnet_compiler_40.rb +8 -30
- data/lib/fluent_command_builder/command_builders/bundle.rb +0 -8
- data/lib/fluent_command_builder/command_builders/bundle_11.rb +8 -30
- data/lib/fluent_command_builder/command_builders/cucumber.rb +0 -8
- data/lib/fluent_command_builder/command_builders/cucumber_11.rb +8 -30
- data/lib/fluent_command_builder/command_builders/cucumber_12.rb +8 -30
- data/lib/fluent_command_builder/command_builders/dev_appserver_python.rb +0 -8
- data/lib/fluent_command_builder/command_builders/dev_appserver_python_16.rb +8 -30
- data/lib/fluent_command_builder/command_builders/dev_appserver_python_17.rb +8 -30
- data/lib/fluent_command_builder/command_builders/dotcover.rb +0 -8
- data/lib/fluent_command_builder/command_builders/dotcover_10.rb +8 -30
- data/lib/fluent_command_builder/command_builders/dotcover_11.rb +8 -30
- data/lib/fluent_command_builder/command_builders/dotcover_12.rb +8 -30
- data/lib/fluent_command_builder/command_builders/dotcover_20.rb +8 -30
- data/lib/fluent_command_builder/command_builders/fastlinkchecker.rb +0 -8
- data/lib/fluent_command_builder/command_builders/fastlinkchecker_21.rb +8 -30
- data/lib/fluent_command_builder/command_builders/installutil.rb +0 -8
- data/lib/fluent_command_builder/command_builders/installutil_11.rb +8 -30
- data/lib/fluent_command_builder/command_builders/installutil_20.rb +8 -30
- data/lib/fluent_command_builder/command_builders/installutil_35.rb +8 -30
- data/lib/fluent_command_builder/command_builders/installutil_40.rb +8 -30
- data/lib/fluent_command_builder/command_builders/msbuild.rb +0 -8
- data/lib/fluent_command_builder/command_builders/msbuild_20.rb +8 -30
- data/lib/fluent_command_builder/command_builders/msbuild_30.rb +8 -30
- data/lib/fluent_command_builder/command_builders/msbuild_35.rb +8 -30
- data/lib/fluent_command_builder/command_builders/msbuild_40.rb +8 -30
- data/lib/fluent_command_builder/command_builders/msdeploy.rb +0 -8
- data/lib/fluent_command_builder/command_builders/msdeploy_71.rb +8 -30
- data/lib/fluent_command_builder/command_builders/mstest.rb +0 -8
- data/lib/fluent_command_builder/command_builders/mstest_100.rb +8 -30
- data/lib/fluent_command_builder/command_builders/mstest_80.rb +8 -30
- data/lib/fluent_command_builder/command_builders/mstest_90.rb +8 -30
- data/lib/fluent_command_builder/command_builders/netsh.rb +0 -8
- data/lib/fluent_command_builder/command_builders/netsh_61.rb +8 -30
- data/lib/fluent_command_builder/command_builders/nuget.rb +0 -8
- data/lib/fluent_command_builder/command_builders/nuget_20.rb +8 -30
- data/lib/fluent_command_builder/command_builders/nunit.rb +0 -8
- data/lib/fluent_command_builder/command_builders/nunit_25.rb +8 -30
- data/lib/fluent_command_builder/command_builders/nunit_26.rb +8 -30
- data/lib/fluent_command_builder/command_builders/rake.rb +0 -8
- data/lib/fluent_command_builder/command_builders/rake_09.rb +8 -30
- data/lib/fluent_command_builder/command_builders/security_osx.rb +0 -8
- data/lib/fluent_command_builder/command_builders/security_osx_107.rb +13 -30
- data/lib/fluent_command_builder/command_builders/security_osx_108.rb +187 -0
- data/lib/fluent_command_builder/command_builders/sevenzip.rb +0 -8
- data/lib/fluent_command_builder/command_builders/sevenzip_920.rb +8 -30
- data/lib/fluent_command_builder/command_builders/simian.rb +0 -8
- data/lib/fluent_command_builder/command_builders/simian_23.rb +8 -30
- data/lib/fluent_command_builder/command_builders/team_foundation.rb +0 -8
- data/lib/fluent_command_builder/command_builders/team_foundation_100.rb +8 -30
- data/lib/fluent_command_builder/command_builders/team_foundation_tee.rb +0 -8
- data/lib/fluent_command_builder/command_builders/team_foundation_tee_100.rb +8 -30
- data/lib/fluent_command_builder/command_builders/team_foundation_tee_101.rb +8 -30
- data/lib/fluent_command_builder/command_builders/xcodebuild.rb +0 -8
- data/lib/fluent_command_builder/command_builders/xcodebuild_43.rb +8 -30
- data/lib/fluent_command_builder/command_builders/xcodebuild_44.rb +8 -30
- data/lib/fluent_command_builder/path_validator.rb +25 -12
- data/lib/fluent_command_builder/underlying_builder.rb +10 -19
- data/lib/fluent_command_builder/version_validator.rb +33 -21
- data/lib/fluent_command_builder.rb +5 -4
- metadata +8 -8
- data/lib/fluent_command_builder/command_builder_factory.rb +0 -43
- data/lib/fluent_command_builder/default_path_validator.rb +0 -33
@@ -1,47 +1,25 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
3
|
require File.expand_path(File.dirname(__FILE__) + '/../command_base')
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/../
|
4
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_config')
|
5
5
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
6
6
|
|
7
7
|
module FluentCommandBuilder
|
8
|
-
def team_foundation_100
|
9
|
-
FluentCommandBuilder::TeamFoundation::V100.create { |b| yield b if block_given? }
|
10
|
-
end
|
11
8
|
module TeamFoundation
|
12
9
|
module V100
|
13
10
|
VERSION = '10.0'
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
end
|
20
|
-
def self.default_path
|
21
|
-
@default_path ||= nil
|
22
|
-
end
|
23
|
-
def self.default_path=(value)
|
24
|
-
validator = DefaultPathValidator.new value, FluentCommandBuilder::TeamFoundation::COMMAND_NAME, exact_version
|
25
|
-
validator.validate
|
26
|
-
@default_path = value
|
11
|
+
@@config = CommandBuilderConfig.new FluentCommandBuilder::TeamFoundation::COMMAND_NAME, VERSION
|
12
|
+
@@config.version_detector = FluentCommandBuilder::TeamFoundation.version_detector
|
13
|
+
def configure_team_foundation
|
14
|
+
yield @@config
|
15
|
+
@@config.validate_path :warn
|
27
16
|
end
|
28
|
-
def
|
29
|
-
|
30
|
-
yield @version_validation_options if block_given?
|
31
|
-
@version_validation_options
|
32
|
-
end
|
33
|
-
def self.create
|
34
|
-
b = UnderlyingBuilder.new FluentCommandBuilder::TeamFoundation::COMMAND_NAME, self.exact_version
|
35
|
-
b.path = self.default_path
|
36
|
-
b.version_validation_options = self.version_validation_options
|
37
|
-
b.version_detector = FluentCommandBuilder::TeamFoundation.version_detector
|
17
|
+
def team_foundation
|
18
|
+
b = UnderlyingBuilder.new @@config
|
38
19
|
c = TeamFoundation.new(b)
|
39
20
|
yield b if block_given?
|
40
21
|
c
|
41
22
|
end
|
42
|
-
def team_foundation
|
43
|
-
FluentCommandBuilder::TeamFoundation::V100.create { |b| yield b if block_given? }
|
44
|
-
end
|
45
23
|
class TeamFoundation < CommandBase
|
46
24
|
def initialize(underlying_builder)
|
47
25
|
super underlying_builder
|
@@ -1,12 +1,8 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
|
-
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_factory')
|
4
3
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
5
4
|
|
6
5
|
module FluentCommandBuilder
|
7
|
-
def team_foundation_tee(&block)
|
8
|
-
TeamFoundationTEE.create &block
|
9
|
-
end
|
10
6
|
module TeamFoundationTEE
|
11
7
|
COMMAND_NAME = 'tf'
|
12
8
|
def self.version_detector
|
@@ -18,9 +14,5 @@ module FluentCommandBuilder
|
|
18
14
|
def self.version(path=nil)
|
19
15
|
self.version_detector.version path
|
20
16
|
end
|
21
|
-
def self.create(&block)
|
22
|
-
f = CommandBuilderFactory.new TeamFoundationTEE
|
23
|
-
f.create &block
|
24
|
-
end
|
25
17
|
end
|
26
18
|
end
|
@@ -1,47 +1,25 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
3
|
require File.expand_path(File.dirname(__FILE__) + '/../command_base')
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/../
|
4
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_config')
|
5
5
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
6
6
|
|
7
7
|
module FluentCommandBuilder
|
8
|
-
def team_foundation_tee_100
|
9
|
-
FluentCommandBuilder::TeamFoundationTEE::V100.create { |b| yield b if block_given? }
|
10
|
-
end
|
11
8
|
module TeamFoundationTEE
|
12
9
|
module V100
|
13
10
|
VERSION = '10.0'
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
end
|
20
|
-
def self.default_path
|
21
|
-
@default_path ||= nil
|
22
|
-
end
|
23
|
-
def self.default_path=(value)
|
24
|
-
validator = DefaultPathValidator.new value, FluentCommandBuilder::TeamFoundationTEE::COMMAND_NAME, exact_version
|
25
|
-
validator.validate
|
26
|
-
@default_path = value
|
11
|
+
@@config = CommandBuilderConfig.new FluentCommandBuilder::TeamFoundationTEE::COMMAND_NAME, VERSION
|
12
|
+
@@config.version_detector = FluentCommandBuilder::TeamFoundationTEE.version_detector
|
13
|
+
def configure_team_foundation_tee
|
14
|
+
yield @@config
|
15
|
+
@@config.validate_path :warn
|
27
16
|
end
|
28
|
-
def
|
29
|
-
|
30
|
-
yield @version_validation_options if block_given?
|
31
|
-
@version_validation_options
|
32
|
-
end
|
33
|
-
def self.create
|
34
|
-
b = UnderlyingBuilder.new FluentCommandBuilder::TeamFoundationTEE::COMMAND_NAME, self.exact_version
|
35
|
-
b.path = self.default_path
|
36
|
-
b.version_validation_options = self.version_validation_options
|
37
|
-
b.version_detector = FluentCommandBuilder::TeamFoundationTEE.version_detector
|
17
|
+
def team_foundation_tee
|
18
|
+
b = UnderlyingBuilder.new @@config
|
38
19
|
c = TeamFoundationTEE.new(b)
|
39
20
|
yield b if block_given?
|
40
21
|
c
|
41
22
|
end
|
42
|
-
def team_foundation_tee
|
43
|
-
FluentCommandBuilder::TeamFoundationTEE::V100.create { |b| yield b if block_given? }
|
44
|
-
end
|
45
23
|
class TeamFoundationTEE < CommandBase
|
46
24
|
def initialize(underlying_builder)
|
47
25
|
super underlying_builder
|
@@ -1,47 +1,25 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
3
|
require File.expand_path(File.dirname(__FILE__) + '/../command_base')
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/../
|
4
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_config')
|
5
5
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
6
6
|
|
7
7
|
module FluentCommandBuilder
|
8
|
-
def team_foundation_tee_101
|
9
|
-
FluentCommandBuilder::TeamFoundationTEE::V101.create { |b| yield b if block_given? }
|
10
|
-
end
|
11
8
|
module TeamFoundationTEE
|
12
9
|
module V101
|
13
10
|
VERSION = '10.1'
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
end
|
20
|
-
def self.default_path
|
21
|
-
@default_path ||= nil
|
22
|
-
end
|
23
|
-
def self.default_path=(value)
|
24
|
-
validator = DefaultPathValidator.new value, FluentCommandBuilder::TeamFoundationTEE::COMMAND_NAME, exact_version
|
25
|
-
validator.validate
|
26
|
-
@default_path = value
|
11
|
+
@@config = CommandBuilderConfig.new FluentCommandBuilder::TeamFoundationTEE::COMMAND_NAME, VERSION
|
12
|
+
@@config.version_detector = FluentCommandBuilder::TeamFoundationTEE.version_detector
|
13
|
+
def configure_team_foundation_tee
|
14
|
+
yield @@config
|
15
|
+
@@config.validate_path :warn
|
27
16
|
end
|
28
|
-
def
|
29
|
-
|
30
|
-
yield @version_validation_options if block_given?
|
31
|
-
@version_validation_options
|
32
|
-
end
|
33
|
-
def self.create
|
34
|
-
b = UnderlyingBuilder.new FluentCommandBuilder::TeamFoundationTEE::COMMAND_NAME, self.exact_version
|
35
|
-
b.path = self.default_path
|
36
|
-
b.version_validation_options = self.version_validation_options
|
37
|
-
b.version_detector = FluentCommandBuilder::TeamFoundationTEE.version_detector
|
17
|
+
def team_foundation_tee
|
18
|
+
b = UnderlyingBuilder.new @@config
|
38
19
|
c = TeamFoundationTEE.new(b)
|
39
20
|
yield b if block_given?
|
40
21
|
c
|
41
22
|
end
|
42
|
-
def team_foundation_tee
|
43
|
-
FluentCommandBuilder::TeamFoundationTEE::V101.create { |b| yield b if block_given? }
|
44
|
-
end
|
45
23
|
class TeamFoundationTEE < CommandBase
|
46
24
|
def initialize(underlying_builder)
|
47
25
|
super underlying_builder
|
@@ -1,12 +1,8 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
|
-
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_factory')
|
4
3
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
5
4
|
|
6
5
|
module FluentCommandBuilder
|
7
|
-
def xcodebuild(&block)
|
8
|
-
XCodeBuild.create &block
|
9
|
-
end
|
10
6
|
module XCodeBuild
|
11
7
|
COMMAND_NAME = 'xcodebuild'
|
12
8
|
def self.version_detector
|
@@ -18,9 +14,5 @@ module FluentCommandBuilder
|
|
18
14
|
def self.version(path=nil)
|
19
15
|
self.version_detector.version path
|
20
16
|
end
|
21
|
-
def self.create(&block)
|
22
|
-
f = CommandBuilderFactory.new XCodeBuild
|
23
|
-
f.create &block
|
24
|
-
end
|
25
17
|
end
|
26
18
|
end
|
@@ -1,47 +1,25 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
3
|
require File.expand_path(File.dirname(__FILE__) + '/../command_base')
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/../
|
4
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_config')
|
5
5
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
6
6
|
|
7
7
|
module FluentCommandBuilder
|
8
|
-
def xcodebuild_43
|
9
|
-
FluentCommandBuilder::XCodeBuild::V43.create { |b| yield b if block_given? }
|
10
|
-
end
|
11
8
|
module XCodeBuild
|
12
9
|
module V43
|
13
10
|
VERSION = '4.3'
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
end
|
20
|
-
def self.default_path
|
21
|
-
@default_path ||= nil
|
22
|
-
end
|
23
|
-
def self.default_path=(value)
|
24
|
-
validator = DefaultPathValidator.new value, FluentCommandBuilder::XCodeBuild::COMMAND_NAME, exact_version
|
25
|
-
validator.validate
|
26
|
-
@default_path = value
|
11
|
+
@@config = CommandBuilderConfig.new FluentCommandBuilder::XCodeBuild::COMMAND_NAME, VERSION
|
12
|
+
@@config.version_detector = FluentCommandBuilder::XCodeBuild.version_detector
|
13
|
+
def configure_xcodebuild
|
14
|
+
yield @@config
|
15
|
+
@@config.validate_path :warn
|
27
16
|
end
|
28
|
-
def
|
29
|
-
|
30
|
-
yield @version_validation_options if block_given?
|
31
|
-
@version_validation_options
|
32
|
-
end
|
33
|
-
def self.create
|
34
|
-
b = UnderlyingBuilder.new FluentCommandBuilder::XCodeBuild::COMMAND_NAME, self.exact_version
|
35
|
-
b.path = self.default_path
|
36
|
-
b.version_validation_options = self.version_validation_options
|
37
|
-
b.version_detector = FluentCommandBuilder::XCodeBuild.version_detector
|
17
|
+
def xcodebuild
|
18
|
+
b = UnderlyingBuilder.new @@config
|
38
19
|
c = XCodeBuild.new(b)
|
39
20
|
yield b if block_given?
|
40
21
|
c
|
41
22
|
end
|
42
|
-
def xcodebuild
|
43
|
-
FluentCommandBuilder::XCodeBuild::V43.create { |b| yield b if block_given? }
|
44
|
-
end
|
45
23
|
class XCodeBuild < CommandBase
|
46
24
|
def initialize(underlying_builder)
|
47
25
|
super underlying_builder
|
@@ -1,47 +1,25 @@
|
|
1
1
|
# Generated code. Do not modify.
|
2
2
|
|
3
3
|
require File.expand_path(File.dirname(__FILE__) + '/../command_base')
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/../
|
4
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_builder_config')
|
5
5
|
require File.expand_path(File.dirname(__FILE__) + '/../underlying_builder')
|
6
6
|
|
7
7
|
module FluentCommandBuilder
|
8
|
-
def xcodebuild_44
|
9
|
-
FluentCommandBuilder::XCodeBuild::V44.create { |b| yield b if block_given? }
|
10
|
-
end
|
11
8
|
module XCodeBuild
|
12
9
|
module V44
|
13
10
|
VERSION = '4.4'
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
end
|
20
|
-
def self.default_path
|
21
|
-
@default_path ||= nil
|
22
|
-
end
|
23
|
-
def self.default_path=(value)
|
24
|
-
validator = DefaultPathValidator.new value, FluentCommandBuilder::XCodeBuild::COMMAND_NAME, exact_version
|
25
|
-
validator.validate
|
26
|
-
@default_path = value
|
11
|
+
@@config = CommandBuilderConfig.new FluentCommandBuilder::XCodeBuild::COMMAND_NAME, VERSION
|
12
|
+
@@config.version_detector = FluentCommandBuilder::XCodeBuild.version_detector
|
13
|
+
def configure_xcodebuild
|
14
|
+
yield @@config
|
15
|
+
@@config.validate_path :warn
|
27
16
|
end
|
28
|
-
def
|
29
|
-
|
30
|
-
yield @version_validation_options if block_given?
|
31
|
-
@version_validation_options
|
32
|
-
end
|
33
|
-
def self.create
|
34
|
-
b = UnderlyingBuilder.new FluentCommandBuilder::XCodeBuild::COMMAND_NAME, self.exact_version
|
35
|
-
b.path = self.default_path
|
36
|
-
b.version_validation_options = self.version_validation_options
|
37
|
-
b.version_detector = FluentCommandBuilder::XCodeBuild.version_detector
|
17
|
+
def xcodebuild
|
18
|
+
b = UnderlyingBuilder.new @@config
|
38
19
|
c = XCodeBuild.new(b)
|
39
20
|
yield b if block_given?
|
40
21
|
c
|
41
22
|
end
|
42
|
-
def xcodebuild
|
43
|
-
FluentCommandBuilder::XCodeBuild::V44.create { |b| yield b if block_given? }
|
44
|
-
end
|
45
23
|
class XCodeBuild < CommandBase
|
46
24
|
def initialize(underlying_builder)
|
47
25
|
super underlying_builder
|
@@ -3,25 +3,38 @@ require File.expand_path(File.dirname(__FILE__) + '/printer')
|
|
3
3
|
module FluentCommandBuilder
|
4
4
|
class PathValidator
|
5
5
|
|
6
|
-
def initialize(
|
7
|
-
@
|
8
|
-
@command_name = command_name
|
9
|
-
@version = version
|
6
|
+
def initialize(command_builder_config)
|
7
|
+
@command_builder_config = command_builder_config
|
10
8
|
@printer = Printer.new
|
11
9
|
end
|
12
10
|
|
13
|
-
def validate
|
14
|
-
return if
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
11
|
+
def validate(validation_level=:warn)
|
12
|
+
return if File.exist? path
|
13
|
+
message = %Q[Path for command "#{command_name}", version "#{version}" does not exist. Path: #{path}]
|
14
|
+
|
15
|
+
case validation_level
|
16
|
+
when :warn
|
17
|
+
@printer.print_warning message
|
18
|
+
when :fatal
|
19
|
+
@printer.print_error message
|
20
|
+
abort
|
21
|
+
else
|
22
|
+
@printer.print_warning %Q[Path validation failed. Validation level "#{validation_level}" is not supported.]
|
23
|
+
end
|
19
24
|
end
|
20
25
|
|
21
26
|
private
|
22
27
|
|
23
|
-
def
|
24
|
-
|
28
|
+
def path
|
29
|
+
@command_builder_config.path
|
30
|
+
end
|
31
|
+
|
32
|
+
def command_name
|
33
|
+
@command_builder_config.command_name
|
34
|
+
end
|
35
|
+
|
36
|
+
def version
|
37
|
+
@command_builder_config.version
|
25
38
|
end
|
26
39
|
|
27
40
|
end
|
@@ -1,23 +1,16 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/argument_formatter')
|
2
2
|
require File.expand_path(File.dirname(__FILE__) + '/execution_context')
|
3
|
-
require File.expand_path(File.dirname(__FILE__) + '/path_validator')
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/version_validator')
|
5
3
|
|
6
4
|
module FluentCommandBuilder
|
7
5
|
class UnderlyingBuilder
|
8
6
|
include ArgumentFormatter
|
9
7
|
|
10
|
-
attr_reader :
|
11
|
-
attr_accessor :path, :version_detector, :version_validation_options
|
8
|
+
attr_reader :command_builder_config, :args, :passwords
|
12
9
|
|
13
|
-
def initialize(
|
14
|
-
@
|
15
|
-
@version = version
|
10
|
+
def initialize(command_builder_config)
|
11
|
+
@command_builder_config = command_builder_config
|
16
12
|
@args = nil
|
17
13
|
@passwords = []
|
18
|
-
@version_validation_options = {}
|
19
|
-
@path = nil
|
20
|
-
@version_detector = nil
|
21
14
|
@execution_context = FluentCommandBuilder.execution_context
|
22
15
|
end
|
23
16
|
|
@@ -28,14 +21,14 @@ module FluentCommandBuilder
|
|
28
21
|
end
|
29
22
|
|
30
23
|
def executable
|
31
|
-
e =
|
24
|
+
e = path ? File.join(path, command_name) : command_name
|
32
25
|
e.gsub! '/', '\\' if e.include? '\\'
|
33
26
|
e
|
34
27
|
end
|
35
28
|
|
36
29
|
def execute
|
37
|
-
validate_path
|
38
|
-
validate_version
|
30
|
+
@command_builder_config.validate_path :fatal
|
31
|
+
@command_builder_config.validate_version
|
39
32
|
visible_command = @execution_context.formatter.format self
|
40
33
|
@execution_context.execute to_s, visible_command
|
41
34
|
end
|
@@ -46,14 +39,12 @@ module FluentCommandBuilder
|
|
46
39
|
|
47
40
|
private
|
48
41
|
|
49
|
-
def
|
50
|
-
|
51
|
-
v.validate
|
42
|
+
def path
|
43
|
+
@command_builder_config.path
|
52
44
|
end
|
53
45
|
|
54
|
-
def
|
55
|
-
|
56
|
-
v.validate
|
46
|
+
def command_name
|
47
|
+
@command_builder_config.command_name
|
57
48
|
end
|
58
49
|
|
59
50
|
end
|
@@ -3,19 +3,15 @@ require File.expand_path(File.dirname(__FILE__) + '/printer')
|
|
3
3
|
module FluentCommandBuilder
|
4
4
|
class VersionValidator
|
5
5
|
|
6
|
-
def initialize(
|
7
|
-
@
|
8
|
-
@path = path
|
9
|
-
@expected_version_string = expected_version
|
10
|
-
@version_detector = version_detector
|
11
|
-
@options = { enabled: true, warn_only: false }.merge options
|
6
|
+
def initialize(command_builder_config)
|
7
|
+
@command_builder_config = command_builder_config
|
12
8
|
@printer = Printer.new
|
13
9
|
end
|
14
10
|
|
15
|
-
def validate
|
16
|
-
return
|
11
|
+
def validate(validation_level)
|
12
|
+
return if validation_level == :off
|
17
13
|
|
18
|
-
@actual_version_string =
|
14
|
+
@actual_version_string = version_detector.version(path)
|
19
15
|
|
20
16
|
unless actual_version
|
21
17
|
@printer.print_warning error_message('unable to determine actual version')
|
@@ -24,27 +20,27 @@ module FluentCommandBuilder
|
|
24
20
|
|
25
21
|
unless is_valid?
|
26
22
|
message = error_message actual_version.to_s(expected_version.to_a.length)
|
27
|
-
|
28
|
-
|
23
|
+
|
24
|
+
case validation_level
|
25
|
+
when :warn
|
26
|
+
@printer.print_warning message
|
27
|
+
when :fatal
|
28
|
+
@printer.print_error message
|
29
|
+
abort
|
30
|
+
else
|
31
|
+
@printer.print_warning %Q[Version validation failed. Validation level "#{validation_level}" is not supported.]
|
32
|
+
end
|
29
33
|
end
|
30
34
|
end
|
31
35
|
|
32
36
|
private
|
33
37
|
|
34
|
-
def enabled?
|
35
|
-
@options[:enabled]
|
36
|
-
end
|
37
|
-
|
38
|
-
def warn_only?
|
39
|
-
@options[:warn_only]
|
40
|
-
end
|
41
|
-
|
42
38
|
def is_valid?
|
43
39
|
actual_version.to_a.first(expected_version.to_a.length) == expected_version.to_a
|
44
40
|
end
|
45
41
|
|
46
42
|
def expected_version
|
47
|
-
@expected_version ||= Version.new(
|
43
|
+
@expected_version ||= Version.new(expected_version_string)
|
48
44
|
end
|
49
45
|
|
50
46
|
def actual_version
|
@@ -52,7 +48,23 @@ module FluentCommandBuilder
|
|
52
48
|
end
|
53
49
|
|
54
50
|
def error_message(actual_version)
|
55
|
-
%Q[Version validation for command "#{
|
51
|
+
%Q[Version validation for command "#{command_name}" failed. Expected version #{expected_version} but was #{actual_version}.]
|
52
|
+
end
|
53
|
+
|
54
|
+
def path
|
55
|
+
@command_builder_config.path
|
56
|
+
end
|
57
|
+
|
58
|
+
def command_name
|
59
|
+
@command_builder_config.command_name
|
60
|
+
end
|
61
|
+
|
62
|
+
def expected_version_string
|
63
|
+
@command_builder_config.version
|
64
|
+
end
|
65
|
+
|
66
|
+
def version_detector
|
67
|
+
@command_builder_config.version_detector
|
56
68
|
end
|
57
69
|
|
58
70
|
end
|
@@ -1,3 +1,7 @@
|
|
1
|
+
Dir[File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/version_detectors/*.rb')].each { |f| require f }
|
2
|
+
Dir[File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_executors/*.rb')].each { |f| require f }
|
3
|
+
Dir[File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_formatters/*.rb')].each { |f| require f }
|
4
|
+
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/path_finder')
|
1
5
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/appcfg_python.rb')
|
2
6
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/appcfg_python_16.rb')
|
3
7
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/appcfg_python_17.rb')
|
@@ -46,6 +50,7 @@ require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/comma
|
|
46
50
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/rake_09.rb')
|
47
51
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/security_osx.rb')
|
48
52
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/security_osx_107.rb')
|
53
|
+
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/security_osx_108.rb')
|
49
54
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/sevenzip.rb')
|
50
55
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/sevenzip_920.rb')
|
51
56
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/simian.rb')
|
@@ -58,7 +63,3 @@ require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/comma
|
|
58
63
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/xcodebuild.rb')
|
59
64
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/xcodebuild_43.rb')
|
60
65
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/xcodebuild_44.rb')
|
61
|
-
Dir[File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/version_detectors/*.rb')].each { |f| require f }
|
62
|
-
Dir[File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_executors/*.rb')].each { |f| require f }
|
63
|
-
Dir[File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_formatters/*.rb')].each { |f| require f }
|
64
|
-
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/path_finder')
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fluent_command_builder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.12
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-09-
|
12
|
+
date: 2012-09-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70319504655360 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70319504655360
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: term-ansicolor
|
27
|
-
requirement: &
|
27
|
+
requirement: &70319504654920 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70319504654920
|
36
36
|
description: Fluent Command Builder makes building command lines easy and clean.
|
37
37
|
email: matthew-github@matthewriley.name
|
38
38
|
executables: []
|
@@ -41,7 +41,7 @@ extra_rdoc_files: []
|
|
41
41
|
files:
|
42
42
|
- lib/fluent_command_builder/argument_formatter.rb
|
43
43
|
- lib/fluent_command_builder/command_base.rb
|
44
|
-
- lib/fluent_command_builder/
|
44
|
+
- lib/fluent_command_builder/command_builder_config.rb
|
45
45
|
- lib/fluent_command_builder/command_builders/appcfg_python.rb
|
46
46
|
- lib/fluent_command_builder/command_builders/appcfg_python_16.rb
|
47
47
|
- lib/fluent_command_builder/command_builders/appcfg_python_17.rb
|
@@ -90,6 +90,7 @@ files:
|
|
90
90
|
- lib/fluent_command_builder/command_builders/rake_09.rb
|
91
91
|
- lib/fluent_command_builder/command_builders/security_osx.rb
|
92
92
|
- lib/fluent_command_builder/command_builders/security_osx_107.rb
|
93
|
+
- lib/fluent_command_builder/command_builders/security_osx_108.rb
|
93
94
|
- lib/fluent_command_builder/command_builders/sevenzip.rb
|
94
95
|
- lib/fluent_command_builder/command_builders/sevenzip_920.rb
|
95
96
|
- lib/fluent_command_builder/command_builders/simian.rb
|
@@ -109,7 +110,6 @@ files:
|
|
109
110
|
- lib/fluent_command_builder/command_executors/system_executor.rb
|
110
111
|
- lib/fluent_command_builder/command_formatters/hidden_password_formatter.rb
|
111
112
|
- lib/fluent_command_builder/command_formatters/null_formatter.rb
|
112
|
-
- lib/fluent_command_builder/default_path_validator.rb
|
113
113
|
- lib/fluent_command_builder/execution_context.rb
|
114
114
|
- lib/fluent_command_builder/path_finder.rb
|
115
115
|
- lib/fluent_command_builder/path_finders/unix_path_finder.rb
|
@@ -1,43 +0,0 @@
|
|
1
|
-
require File.expand_path(File.dirname(__FILE__) + '/printer')
|
2
|
-
require File.expand_path(File.dirname(__FILE__) + '/version')
|
3
|
-
|
4
|
-
module FluentCommandBuilder
|
5
|
-
class CommandBuilderFactory
|
6
|
-
|
7
|
-
def initialize(command_module)
|
8
|
-
@command_module = command_module
|
9
|
-
@printer = Printer.new
|
10
|
-
end
|
11
|
-
|
12
|
-
def create(&block)
|
13
|
-
validate_version
|
14
|
-
|
15
|
-
begin
|
16
|
-
version_module.create &block
|
17
|
-
rescue
|
18
|
-
message = %Q[Builder for command "#{@command_module::COMMAND_NAME}", version "#{version.to_s(2)}" does not exist. Please consider contributing.]
|
19
|
-
@printer.print_error message
|
20
|
-
raise message
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
def validate_version
|
27
|
-
unless version
|
28
|
-
message = %Q[Failed to create builder for command "#{@command_module::COMMAND_NAME}". Unable to determine required version.]
|
29
|
-
@printer.print_error message
|
30
|
-
raise message
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
def version
|
35
|
-
@version ||= Version.version_or_nil(@command_module.version)
|
36
|
-
end
|
37
|
-
|
38
|
-
def version_module
|
39
|
-
eval "#{@command_module.name}::V#{version.compact}"
|
40
|
-
end
|
41
|
-
|
42
|
-
end
|
43
|
-
end
|