fluent_command_builder 0.1.29 → 0.2.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.
@@ -26,3 +26,4 @@ require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/comma
|
|
26
26
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/simian_23.rb')
|
27
27
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/tf_2010.rb')
|
28
28
|
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/tf_tee_2010.rb')
|
29
|
+
require File.expand_path(File.dirname(__FILE__) + '/fluent_command_builder/command_builders/xcodebuild_43.rb')
|
@@ -5,39 +5,28 @@ module FluentCommandBuilder
|
|
5
5
|
|
6
6
|
attr_accessor :command_name, :path
|
7
7
|
|
8
|
-
def initialize
|
8
|
+
def initialize(command_name, path=nil)
|
9
9
|
@command_name = command_name
|
10
10
|
@path = path
|
11
11
|
@args = ''
|
12
12
|
end
|
13
13
|
|
14
|
-
def format
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
14
|
+
def format(value, delimiter=' ', key_value_separator='=')
|
15
|
+
case
|
16
|
+
when value.kind_of?(Hash)
|
17
|
+
format_hash value, delimiter, key_value_separator
|
18
|
+
when value.kind_of?(Array)
|
19
|
+
format_array value, delimiter
|
20
|
+
else
|
21
|
+
value.to_s
|
22
22
|
end
|
23
|
-
|
24
|
-
value_as_array = case
|
25
|
-
when value.kind_of?(Hash)
|
26
|
-
hash_to_array value, key_value_separator
|
27
|
-
when value.kind_of?(Array)
|
28
|
-
value
|
29
|
-
else
|
30
|
-
[value.to_s]
|
31
|
-
end
|
32
|
-
value_as_string = array_to_s value_as_array, delimiter
|
33
|
-
quote_if_includes_space value_as_string
|
34
23
|
end
|
35
24
|
|
36
|
-
def append
|
25
|
+
def append(value)
|
37
26
|
@args << value.to_s
|
38
27
|
end
|
39
28
|
|
40
|
-
def append_arg
|
29
|
+
def append_arg(arg)
|
41
30
|
append " #{arg.to_s}"
|
42
31
|
end
|
43
32
|
|
@@ -57,15 +46,15 @@ module FluentCommandBuilder
|
|
57
46
|
executable
|
58
47
|
end
|
59
48
|
|
60
|
-
def
|
61
|
-
hash.map { |k, v| k.to_s + key_value_separator + v.to_s }
|
49
|
+
def format_hash(hash, delimiter, key_value_separator)
|
50
|
+
hash.map { |k, v| quote_if_includes_space(k.to_s) + key_value_separator + quote_if_includes_space(v.to_s) }.join delimiter
|
62
51
|
end
|
63
52
|
|
64
|
-
def
|
65
|
-
array.join delimiter
|
53
|
+
def format_array(array, delimiter)
|
54
|
+
array.map { |v| quote_if_includes_space v }.join delimiter
|
66
55
|
end
|
67
56
|
|
68
|
-
def quote_if_includes_space
|
57
|
+
def quote_if_includes_space(value)
|
69
58
|
value.to_s.include?(' ') ? %Q["#{value}"] : value
|
70
59
|
end
|
71
60
|
|
@@ -0,0 +1,141 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_base')
|
2
|
+
require File.expand_path(File.dirname(__FILE__) + '/../command_builder')
|
3
|
+
|
4
|
+
module FluentCommandBuilder
|
5
|
+
module XCodeBuild
|
6
|
+
module V43
|
7
|
+
COMMAND_NAME = 'xcodebuild'
|
8
|
+
class XCodeBuild < CommandBase
|
9
|
+
def initialize(builder)
|
10
|
+
super builder
|
11
|
+
end
|
12
|
+
def build_project(build_action=nil)
|
13
|
+
BuildProject.new @builder, build_action
|
14
|
+
end
|
15
|
+
def build_workspace(workspace_name, build_action=nil)
|
16
|
+
BuildWorkspace.new @builder, workspace_name, build_action
|
17
|
+
end
|
18
|
+
def version
|
19
|
+
Version.new @builder
|
20
|
+
end
|
21
|
+
def showsdks
|
22
|
+
@builder.append ' -showsdks'
|
23
|
+
yield @builder if block_given?
|
24
|
+
self
|
25
|
+
end
|
26
|
+
def list
|
27
|
+
@builder.append ' -list'
|
28
|
+
yield @builder if block_given?
|
29
|
+
self
|
30
|
+
end
|
31
|
+
def list_project(project_name)
|
32
|
+
@builder.append " -list -project #{@builder.format project_name}"
|
33
|
+
yield @builder if block_given?
|
34
|
+
self
|
35
|
+
end
|
36
|
+
def list_workspace(workspace_name)
|
37
|
+
@builder.append " -list -workspace #{@builder.format workspace_name}"
|
38
|
+
yield @builder if block_given?
|
39
|
+
self
|
40
|
+
end
|
41
|
+
end
|
42
|
+
class BuildProject < CommandBase
|
43
|
+
def initialize(builder, build_action=nil)
|
44
|
+
super builder
|
45
|
+
@builder.append ' '
|
46
|
+
@builder.append "#{@builder.format build_action, ' '}" unless build_action.nil?
|
47
|
+
end
|
48
|
+
def project(project_name)
|
49
|
+
@builder.append " -project #{@builder.format project_name}"
|
50
|
+
yield @builder if block_given?
|
51
|
+
self
|
52
|
+
end
|
53
|
+
def target(target_name)
|
54
|
+
@builder.append " -target #{@builder.format target_name}"
|
55
|
+
yield @builder if block_given?
|
56
|
+
self
|
57
|
+
end
|
58
|
+
def configuration(configuration_name)
|
59
|
+
@builder.append " -configuration #{@builder.format configuration_name}"
|
60
|
+
yield @builder if block_given?
|
61
|
+
self
|
62
|
+
end
|
63
|
+
def sdk(sdk_name)
|
64
|
+
@builder.append " -sdk #{@builder.format sdk_name}"
|
65
|
+
yield @builder if block_given?
|
66
|
+
self
|
67
|
+
end
|
68
|
+
def setting(setting, value)
|
69
|
+
@builder.append " #{@builder.format setting}=#{@builder.format value}"
|
70
|
+
yield @builder if block_given?
|
71
|
+
self
|
72
|
+
end
|
73
|
+
def user_default(value)
|
74
|
+
@builder.append " -userdefault=#{@builder.format value}"
|
75
|
+
yield @builder if block_given?
|
76
|
+
self
|
77
|
+
end
|
78
|
+
end
|
79
|
+
class BuildWorkspace < CommandBase
|
80
|
+
def initialize(builder, workspace_name, build_action=nil)
|
81
|
+
super builder
|
82
|
+
@builder.append " -workspace #{@builder.format workspace_name}"
|
83
|
+
@builder.append " #{@builder.format build_action, ' '}" unless build_action.nil?
|
84
|
+
end
|
85
|
+
def scheme(scheme_name)
|
86
|
+
@builder.append " -scheme #{@builder.format scheme_name}"
|
87
|
+
yield @builder if block_given?
|
88
|
+
self
|
89
|
+
end
|
90
|
+
def configuration(configuration_name)
|
91
|
+
@builder.append " -configuration #{@builder.format configuration_name}"
|
92
|
+
yield @builder if block_given?
|
93
|
+
self
|
94
|
+
end
|
95
|
+
def sdk(sdk_name)
|
96
|
+
@builder.append " -sdk #{@builder.format sdk_name}"
|
97
|
+
yield @builder if block_given?
|
98
|
+
self
|
99
|
+
end
|
100
|
+
def setting(setting, value)
|
101
|
+
@builder.append " #{@builder.format setting}=#{@builder.format value}"
|
102
|
+
yield @builder if block_given?
|
103
|
+
self
|
104
|
+
end
|
105
|
+
def user_default(value)
|
106
|
+
@builder.append " -userdefault=#{@builder.format value}"
|
107
|
+
yield @builder if block_given?
|
108
|
+
self
|
109
|
+
end
|
110
|
+
end
|
111
|
+
class Version < CommandBase
|
112
|
+
def initialize(builder)
|
113
|
+
super builder
|
114
|
+
@builder.append ' -version'
|
115
|
+
end
|
116
|
+
def sdk(sdk_name)
|
117
|
+
@builder.append " -sdk #{@builder.format sdk_name}"
|
118
|
+
yield @builder if block_given?
|
119
|
+
self
|
120
|
+
end
|
121
|
+
def info_item(info_item)
|
122
|
+
@builder.append " #{@builder.format info_item}"
|
123
|
+
yield @builder if block_given?
|
124
|
+
self
|
125
|
+
end
|
126
|
+
end
|
127
|
+
def xcodebuild
|
128
|
+
builder = CommandBuilder.new COMMAND_NAME
|
129
|
+
command = XCodeBuild.new builder
|
130
|
+
yield builder if block_given?
|
131
|
+
command
|
132
|
+
end
|
133
|
+
end
|
134
|
+
end
|
135
|
+
def xcodebuild_43
|
136
|
+
builder = CommandBuilder.new XCodeBuild::V43::COMMAND_NAME
|
137
|
+
command = XCodeBuild::V43::XCodeBuild.new builder
|
138
|
+
yield builder if block_given?
|
139
|
+
command
|
140
|
+
end
|
141
|
+
end
|
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.
|
4
|
+
version: 0.2.0
|
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-05-
|
12
|
+
date: 2012-05-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70234007044380 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,7 +21,7 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70234007044380
|
25
25
|
description: A command line builder with a fluent interface written in Ruby.
|
26
26
|
email: matthew-github@matthewriley.name
|
27
27
|
executables: []
|
@@ -58,6 +58,7 @@ files:
|
|
58
58
|
- lib/fluent_command_builder/command_builders/simian_23.rb
|
59
59
|
- lib/fluent_command_builder/command_builders/tf_2010.rb
|
60
60
|
- lib/fluent_command_builder/command_builders/tf_tee_2010.rb
|
61
|
+
- lib/fluent_command_builder/command_builders/xcodebuild_43.rb
|
61
62
|
- lib/fluent_command_builder.rb
|
62
63
|
homepage: http://rubygems.org/gems/fluent_command_builder
|
63
64
|
licenses: []
|