18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
# File 'lib/roku_builder/plugins/core.rb', line 18
def self.parse_options(parser:, options:)
parser.separator "Commands:"
parser.on("--configure", "Copy base configuration file to the --config location. Default: '~/.roku_config.json'") do
options[:configure] = true
end
parser.on("--validate", "Validate configuration") do
options[:validate] = true
end
parser.on("-u", "--update-manifest", "Increment manifest build version") do
options[:increment] = true
end
parser.on("--do-stage", "Run the stager. Used for scripting. Always run --do-unstage after") do
options[:dostage] = true
end
parser.on("--do-unstage", "Run the unstager. Used for scripting. Always run --do-script first") do
options[:dounstage] = true
end
parser.separator ""
parser.separator "Config Options:"
parser.on("-e", "--edit PARAMS", "Edit config params when configuring. (eg. a:b, c:d,e:f)") do |p|
options[:edit_params] = p
end
parser.on("--config CONFIG", "Set a custom config file. Default: '~/.roku_config.json'") do |c|
options[:config] = c
end
parser.separator ""
parser.separator "Source Options:"
parser.on("-r", "--ref REF", "Git referance to use for sideloading") do |r|
options[:ref] = r
end
parser.on("-w", "--working", "Use working directory to sideload or test") do
options[:working] = true
end
parser.on("-c", "--current", "Use current directory to sideload or test. Overrides any project config") do
options[:current] = true
end
parser.on("-s", "--stage STAGE", "Set the stage to use. Default: 'production'") do |b|
options[:stage] = b
end
parser.on("-P", "--project ID", "Use a different project") do |p|
options[:project] = p
end
parser.separator ""
parser.separator "Other Options:"
parser.on("-L", "--console_log [FILE]", "Save monitor logs in file") do |l|
options[:logfile] = l || "config"
options[:logging] = true
end
parser.on("-C", "--clear_log [FILE]", "Clear saved monitor logs in file") do |l|
options[:logfile] = l || "config"
options[:clearfile] = true
end
parser.on("-O", "--out PATH", "Output file/folder. If PATH ends in .pkg/.zip/.jpg, file is assumed, otherwise folder is assumed") do |o|
options[:out] = o
end
parser.on("-I", "--in PATH", "Input file for sideloading") do |i|
options[:in] = i
end
parser.on("-D", "--device ID", "Use a different device corresponding to the given ID") do |d|
options[:device] = d
end
parser.on("--device-blocking", "Block and wait for a device if none is ready. Does not work with --device") do
options[:device_blocking] = true
end
parser.on("-V", "--verbose", "Print Info message") do
options[:verbose] = true
end
parser.on("--debug", "Print Debug messages") do
options[:debug] = true
end
parser.on("-h", "--help [PLUGIN]", "Show help") do |h|
help_text = self.get_help_text(parser: parser, options: options, plugin_name: h)
puts help_text
exit
end
parser.on("-v", "--version", "Show version") do
puts RokuBuilder::VERSION
exit
end
end
|