@@ -5,14 +5,16 @@ import * as start from '../cmds/start';
5
5
import * as status from '../cmds/status' ;
6
6
import * as update from '../cmds/update' ;
7
7
8
- const CHROME = 'chrome' ;
9
- const chromeOption : yargs . Options = {
8
+ const CHROMEDRIVER_ALIAS = 'chrome' ;
9
+ const CHROMEDRIVER = 'chromedriver' ;
10
+ const chromedriverOption : yargs . Options = {
10
11
describe : 'Install or update chromedriver.' ,
11
12
default : true ,
12
13
type : 'boolean'
13
14
} ;
14
- const CHROME_LOGS = 'chrome_logs' ;
15
- const chromeLogsOption : yargs . Options = {
15
+ const CHROMEDRIVER_LOGS_ALIAS = 'chrome_logs' ;
16
+ const CHROMEDRIVER_LOGS = 'chromedriver_logs' ;
17
+ const chromedriverLogsOption : yargs . Options = {
16
18
describe : 'File path to chrome logs.' ,
17
19
type : 'string'
18
20
} ;
@@ -30,8 +32,9 @@ const edgeOption: yargs.Options = {
30
32
'"C:\Program Files (x86)\Microsoft Web Driver\MirosoftWebDriver.exe"' ,
31
33
type : 'string'
32
34
} ;
33
- const GECKO = 'gecko' ;
34
- const geckoOption : yargs . Options = {
35
+ const GECKODRIVER_ALIAS = 'gecko' ;
36
+ const GECKODRIVER = 'geckodriver' ;
37
+ const geckodriverOption : yargs . Options = {
35
38
describe : 'Install or update geckodriver.' ,
36
39
default : true ,
37
40
type : 'boolean'
@@ -41,8 +44,9 @@ const githubTokenOption: yargs.Options = {
41
44
describe : 'Use a GitHub token to prevent rate limit issues.' ,
42
45
type : 'string'
43
46
} ;
47
+ const IEDRIVER_ALIAS = 'ie' ;
44
48
const IEDRIVER = 'iedriver' ;
45
- const ieOption : yargs . Options = {
49
+ const iedriverOption : yargs . Options = {
46
50
describe : 'Install or update ie driver.' ,
47
51
default : false ,
48
52
type : 'boolean'
@@ -58,6 +62,31 @@ const logLevelOption: yargs.Options = {
58
62
default : 'info' ,
59
63
type : 'string'
60
64
} ;
65
+ const MAX_VERSIONS_CHROMEDRIVER_ALIAS = 'max_versions.chrome' ;
66
+ const MAX_VERSIONS_CHROMEDRIVER = 'max_versions.chromedriver' ;
67
+ const maxVersionsChromedriverOption : yargs . Options = {
68
+ describe : 'The chromedriver max version used only for update.' ,
69
+ type : 'string'
70
+ } ;
71
+ const MAX_VERSIONS_GECKODRIVER_ALIAS = 'max_versions.gecko' ;
72
+ const MAX_VERSIONS_GECKODRIVER = 'max_versions.geckodriver' ;
73
+ const maxVersionsGeckodriverOption : yargs . Options = {
74
+ describe : 'The geckodriver max version used only for update.' ,
75
+ type : 'string'
76
+ } ;
77
+ const MAX_VERSIONS_IEDRIVER_ALIAS = 'max_versions.ie' ;
78
+ const MAX_VERSIONS_IEDRIVER = 'max_versions.iedriver' ;
79
+ const maxVersionsIedriverOption : yargs . Options = {
80
+ describe : 'The ie driver max version used only for update.' ,
81
+ type : 'string'
82
+ } ;
83
+ const MAX_VERSIONS_SELENIUM_ALIAS = 'max_versions.standalone' ;
84
+ const MAX_VERSIONS_SELENIUM = 'max_versions.selenium' ;
85
+ const maxVersionsSeleniumOption : yargs . Options = {
86
+ describe : 'The selenium server standalone max version used only for update.' ,
87
+ type : 'string'
88
+ } ;
89
+
61
90
const OUT_DIR = 'out_dir' ;
62
91
const outDirOption : yargs . Options = {
63
92
describe : 'Location of output.' ,
@@ -68,34 +97,40 @@ const proxyOption: yargs.Options = {
68
97
describe : 'Use a proxy server to download files.' ,
69
98
type : 'string'
70
99
} ;
71
- const STANDALONE = 'standalone' ;
72
- const standaloneOption : yargs . Options = {
100
+ const SELENIUM_ALIAS = 'standalone' ;
101
+ const SELENIUM = 'selenium' ;
102
+ const seleniumOption : yargs . Options = {
73
103
describe : 'Install or update selenium server standalone.' ,
74
104
default : true ,
75
105
type : 'boolean'
76
106
} ;
77
- const STANDALONE_NODE = 'standalone_node' ;
78
- const standaloneNodeOption : yargs . Options = {
107
+ const SELENIUM_NODE_ALIAS = 'standalone_node' ;
108
+ const SELENIUM_NODE = 'selenium_node' ;
109
+ const seleniumNodeOption : yargs . Options = {
79
110
describe : 'Start the selenium server standalone with role set to "node".' ,
80
111
type : 'boolean'
81
112
} ;
82
- const VERSIONS_CHROME = 'versions.chrome' ;
83
- const versionsChromeOption : yargs . Options = {
113
+ const VERSIONS_CHROMEDRIVER_ALIAS = 'versions.chrome' ;
114
+ const VERSIONS_CHROMEDRIVER = 'versions.chromedriver' ;
115
+ const versionsChromedriverOption : yargs . Options = {
84
116
describe : 'The chromedriver version.' ,
85
117
type : 'string'
86
118
} ;
87
- const VERSIONS_GECKO = 'versions.gecko' ;
88
- const versionsGeckoOption : yargs . Options = {
119
+ const VERSIONS_GECKODRIVER_ALIAS = 'versions.gecko' ;
120
+ const VERSIONS_GECKODRIVER = 'versions.geckodriver' ;
121
+ const versionsGeckodriverOption : yargs . Options = {
89
122
describe : 'The geckodriver version.' ,
90
123
type : 'string'
91
124
} ;
92
- const VERSIONS_IE = 'versions.ie' ;
93
- const versionsIeOption : yargs . Options = {
125
+ const VERSIONS_IEDRIVER_ALIAS = 'versions.ie' ;
126
+ const VERSIONS_IEDRIVER = 'versions.iedriver' ;
127
+ const versionsIedriverOption : yargs . Options = {
94
128
describe : 'The ie driver version.' ,
95
129
type : 'string'
96
130
} ;
97
- const VERSIONS_STANDALONE = 'versions.standalone' ;
98
- const versionsStandaloneOption : yargs . Options = {
131
+ const VERSIONS_SELENIUM_ALIAS = 'versions.standalone' ;
132
+ const VERSIONS_SELENIUM = 'versions.selenium' ;
133
+ const versionsSeleniumOption : yargs . Options = {
99
134
describe : 'The selenium server standalone version.' ,
100
135
type : 'string'
101
136
} ;
@@ -122,20 +157,31 @@ yargs
122
157
. command (
123
158
'start' , 'Start up the selenium server.' ,
124
159
( yargs : yargs . Argv ) => {
125
- return yargs . option ( CHROME , chromeOption )
126
- . option ( CHROME_LOGS , chromeLogsOption )
160
+ return yargs
161
+ . option ( CHROMEDRIVER , chromedriverOption )
162
+ . alias ( CHROMEDRIVER_ALIAS , CHROMEDRIVER )
163
+ . option ( CHROMEDRIVER_LOGS , chromedriverLogsOption )
164
+ . alias ( CHROMEDRIVER_LOGS_ALIAS , CHROMEDRIVER_LOGS )
127
165
. option ( DETACH , detachOption )
128
166
. option ( EDGE , edgeOption )
129
- . option ( GECKO , geckoOption )
130
- . option ( IEDRIVER , ieOption )
167
+ . option ( GECKODRIVER , geckodriverOption )
168
+ . alias ( GECKODRIVER_ALIAS , GECKODRIVER )
169
+ . option ( IEDRIVER , iedriverOption )
170
+ . alias ( IEDRIVER_ALIAS , IEDRIVER )
131
171
. option ( LOG_LEVEL , logLevelOption )
132
172
. option ( OUT_DIR , outDirOption )
133
- . option ( STANDALONE , standaloneOption )
134
- . option ( STANDALONE_NODE , standaloneNodeOption )
135
- . option ( VERSIONS_CHROME , versionsChromeOption )
136
- . option ( VERSIONS_GECKO , versionsGeckoOption )
137
- . option ( VERSIONS_IE , versionsIeOption )
138
- . option ( VERSIONS_STANDALONE , versionsStandaloneOption ) ;
173
+ . option ( SELENIUM , seleniumOption )
174
+ . alias ( SELENIUM_ALIAS , SELENIUM )
175
+ . option ( SELENIUM_NODE , seleniumNodeOption )
176
+ . alias ( SELENIUM_NODE_ALIAS , SELENIUM_NODE )
177
+ . option ( VERSIONS_CHROMEDRIVER , versionsChromedriverOption )
178
+ . alias ( VERSIONS_CHROMEDRIVER_ALIAS , VERSIONS_CHROMEDRIVER )
179
+ . option ( VERSIONS_GECKODRIVER , versionsGeckodriverOption )
180
+ . alias ( VERSIONS_GECKODRIVER_ALIAS , VERSIONS_GECKODRIVER )
181
+ . option ( VERSIONS_IEDRIVER , versionsIedriverOption )
182
+ . alias ( VERSIONS_IEDRIVER_ALIAS , VERSIONS_IEDRIVER )
183
+ . option ( VERSIONS_SELENIUM , versionsSeleniumOption )
184
+ . alias ( VERSIONS_SELENIUM_ALIAS , VERSIONS_SELENIUM ) ;
139
185
} ,
140
186
( argv : yargs . Arguments ) => {
141
187
start . handler ( argv ) ;
@@ -153,19 +199,34 @@ yargs
153
199
'update' , 'Install or update selected binaries.' ,
154
200
( yargs : yargs . Argv ) => {
155
201
return yargs . option ( OUT_DIR , outDirOption )
156
- . option ( CHROME , chromeOption )
157
- . option ( GECKO , geckoOption )
202
+ . option ( CHROMEDRIVER , chromedriverOption )
203
+ . alias ( CHROMEDRIVER_ALIAS , CHROMEDRIVER )
204
+ . option ( GECKODRIVER , geckodriverOption )
205
+ . alias ( GECKODRIVER_ALIAS , GECKODRIVER )
158
206
. option ( GITHUB_TOKEN , githubTokenOption )
159
- . option ( IEDRIVER , ieOption )
207
+ . option ( IEDRIVER , iedriverOption )
208
+ . alias ( IEDRIVER_ALIAS , IEDRIVER )
160
209
. option ( IGNORE_SSL , ignoreSSLOption )
161
210
. option ( LOG_LEVEL , logLevelOption )
211
+ . option ( MAX_VERSIONS_CHROMEDRIVER , maxVersionsChromedriverOption )
212
+ . alias ( MAX_VERSIONS_CHROMEDRIVER_ALIAS , MAX_VERSIONS_CHROMEDRIVER )
213
+ . option ( MAX_VERSIONS_GECKODRIVER , maxVersionsGeckodriverOption )
214
+ . alias ( MAX_VERSIONS_GECKODRIVER_ALIAS , MAX_VERSIONS_GECKODRIVER )
215
+ . option ( MAX_VERSIONS_IEDRIVER , maxVersionsIedriverOption )
216
+ . alias ( MAX_VERSIONS_IEDRIVER_ALIAS , MAX_VERSIONS_IEDRIVER )
217
+ . option ( MAX_VERSIONS_SELENIUM , maxVersionsSeleniumOption )
162
218
. option ( OUT_DIR , outDirOption )
163
219
. option ( PROXY , proxyOption )
164
- . option ( STANDALONE , standaloneOption )
165
- . option ( VERSIONS_CHROME , versionsChromeOption )
166
- . option ( VERSIONS_GECKO , versionsGeckoOption )
167
- . option ( VERSIONS_IE , versionsIeOption )
168
- . option ( VERSIONS_STANDALONE , versionsStandaloneOption ) ;
220
+ . option ( SELENIUM , seleniumOption )
221
+ . alias ( SELENIUM_ALIAS , SELENIUM )
222
+ . option ( VERSIONS_CHROMEDRIVER , versionsChromedriverOption )
223
+ . alias ( VERSIONS_CHROMEDRIVER_ALIAS , VERSIONS_CHROMEDRIVER )
224
+ . option ( VERSIONS_GECKODRIVER , versionsGeckodriverOption )
225
+ . alias ( VERSIONS_GECKODRIVER_ALIAS , VERSIONS_GECKODRIVER )
226
+ . option ( VERSIONS_IEDRIVER , versionsIedriverOption )
227
+ . alias ( VERSIONS_IEDRIVER_ALIAS , VERSIONS_IEDRIVER )
228
+ . option ( VERSIONS_SELENIUM , versionsSeleniumOption )
229
+ . alias ( VERSIONS_SELENIUM_ALIAS , VERSIONS_SELENIUM ) ;
169
230
} ,
170
231
( argv : yargs . Arguments ) => {
171
232
update . handler ( argv ) ;
0 commit comments