Skip to content

Commit fb761bd

Browse files
authored
[build] Remove legacy rake helpers and unused code (#16978)
* [build] Remove unused rake utilities * Remove obsolete rake helpers * remove obsolete rake checks * [build] Remove obsolete atoms tasks except ios
1 parent 98690e2 commit fb761bd

File tree

14 files changed

+22
-581
lines changed

14 files changed

+22
-581
lines changed

.git-fixfiles

Lines changed: 0 additions & 3 deletions
This file was deleted.

Rakefile

Lines changed: 16 additions & 251 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ $LOAD_PATH.unshift File.expand_path('.')
66
require 'base64'
77
require 'json'
88
require 'rake'
9+
require 'rbconfig'
910
require 'net/http'
1011
require 'net/telnet'
1112
require 'stringio'
@@ -20,23 +21,8 @@ orig_verbose = verbose
2021
verbose(false)
2122

2223
# Location of all new (non-CrazyFun) methods
23-
require 'rake_tasks/selenium_rake/browsers'
24-
require 'rake_tasks/selenium_rake/checks'
25-
require 'rake_tasks/selenium_rake/cpp_formatter'
26-
require 'rake_tasks/selenium_rake/ie_generator'
27-
require 'rake_tasks/selenium_rake/java_formatter'
28-
require 'rake_tasks/selenium_rake/type_definitions_generator'
29-
30-
# Our modifications to the Rake / Bazel libraries
3124
require 'rake/task'
32-
require 'rake_tasks/rake/task'
33-
require 'rake_tasks/rake/dsl'
34-
require 'rake_tasks/bazel/task'
35-
36-
# These are the final items mixed into the global NS
37-
# These need moving into correct namespaces, and not be globally included
3825
require 'rake_tasks/bazel'
39-
require 'rake_tasks/python'
4026

4127
$DEBUG = orig_verbose != Rake::FileUtilsExt::DEFAULT
4228
$DEBUG = true if ENV['debug'] == 'true'
@@ -52,14 +38,9 @@ end
5238

5339
# If it looks like a bazel target, build it with bazel
5440
rule(%r{//.*}) do |task|
55-
task.out = Bazel.execute('build', %w[], task.name)
41+
Bazel.execute('build', %w[], task.name)
5642
end
5743

58-
# Spoof tasks to get CI working with bazel
59-
task '//java/test/org/openqa/selenium/environment/webserver:webserver:uber' => [
60-
'//java/test/org/openqa/selenium/environment:webserver'
61-
]
62-
6344
# use #java_release_targets to access this list
6445
JAVA_RELEASE_TARGETS = %w[
6546
//java/src/org/openqa/selenium/chrome:chrome.publish
@@ -139,163 +120,7 @@ task :update_manager do |_task, _arguments|
139120
@git.add('common/selenium_manager.bzl')
140121
end
141122

142-
# Ruby and Rust are automatically updated as part of version bumps in a separate step
143-
desc 'Update dependencies for the release'
144-
task :release_update do |_task, _arguments|
145-
Rake::Task[:update_multitool].invoke
146-
Rake::Task['java:update'].invoke
147-
Rake::Task['node:update'].invoke
148-
end
149-
150-
desc 'Update multitool binaries to latest releases'
151-
task :update_multitool do |_task, _arguments|
152-
puts 'Updating multitool binary versions'
153-
Bazel.execute('run', [], '//scripts:update_multitool_binaries')
154-
@git.add('multitool.lock.json')
155-
end
156-
157-
task all: [
158-
:'selenium-java',
159-
'//java/test/org/openqa/selenium/environment:webserver'
160-
]
161-
162-
task tests: [
163-
'//java/test/org/openqa/selenium/htmlunit:htmlunit',
164-
'//java/test/org/openqa/selenium/firefox:test-synthesized',
165-
'//java/test/org/openqa/selenium/ie:ie',
166-
'//java/test/org/openqa/selenium/chrome:chrome',
167-
'//java/test/org/openqa/selenium/edge:edge',
168-
'//java/test/org/openqa/selenium/support:small-tests',
169-
'//java/test/org/openqa/selenium/support:large-tests',
170-
'//java/test/org/openqa/selenium/remote:small-tests',
171-
'//java/test/org/openqa/selenium/remote/server/log:test',
172-
'//java/test/org/openqa/selenium/remote/server:small-tests'
173-
]
174-
task chrome: ['//java/src/org/openqa/selenium/chrome']
175-
task grid: [:'selenium-server-standalone']
176-
task ie: ['//java/src/org/openqa/selenium/ie']
177-
task firefox: ['//java/src/org/openqa/selenium/firefox']
178-
task remote: %i[remote_server remote_client]
179-
task remote_client: ['//java/src/org/openqa/selenium/remote']
180-
task remote_server: ['//java/src/org/openqa/selenium/remote/server']
181-
task safari: ['//java/src/org/openqa/selenium/safari']
182-
task selenium: ['//java/src/org/openqa/selenium:core']
183-
task support: ['//java/src/org/openqa/selenium/support']
184-
185-
desc 'Build the standalone server'
186-
task 'selenium-server-standalone' => '//java/src/org/openqa/selenium/grid:executable-grid'
187-
188-
task test_javascript: [
189-
'//javascript/atoms:test-chrome:run',
190-
'//javascript/webdriver:test-chrome:run',
191-
'//javascript/selenium-atoms:test-chrome:run',
192-
'//javascript/selenium-core:test-chrome:run'
193-
]
194-
task test_chrome: ['//java/test/org/openqa/selenium/chrome:chrome:run']
195-
task test_edge: ['//java/test/org/openqa/selenium/edge:edge:run']
196-
task test_chrome_atoms: [
197-
'//javascript/atoms:test-chrome:run',
198-
'//javascript/chrome-driver:test-chrome:run',
199-
'//javascript/webdriver:test-chrome:run'
200-
]
201-
task test_htmlunit: [
202-
'//java/test/org/openqa/selenium/htmlunit:htmlunit:run'
203-
]
204-
task test_grid: [
205-
'//java/test/org/openqa/grid/common:common:run',
206-
'//java/test/org/openqa/grid:grid:run',
207-
'//java/test/org/openqa/grid/e2e:e2e:run',
208-
'//java/test/org/openqa/selenium/remote:remote-driver-grid-tests:run'
209-
]
210-
task test_ie: [
211-
'//cpp/iedriverserver:win32',
212-
'//cpp/iedriverserver:x64',
213-
'//java/test/org/openqa/selenium/ie:ie:run'
214-
]
215-
task test_jobbie: [:test_ie]
216-
task test_firefox: ['//java/test/org/openqa/selenium/firefox:marionette:run']
217-
task test_remote_server: [
218-
'//java/test/org/openqa/selenium/remote/server:small-tests:run',
219-
'//java/test/org/openqa/selenium/remote/server/log:test:run'
220-
]
221-
task test_remote: [
222-
'//java/test/org/openqa/selenium/json:small-tests:run',
223-
'//java/test/org/openqa/selenium/remote:common-tests:run',
224-
'//java/test/org/openqa/selenium/remote:client-tests:run',
225-
'//java/test/org/openqa/selenium/remote:remote-driver-tests:run',
226-
:test_remote_server
227-
]
228-
task test_safari: ['//java/test/org/openqa/selenium/safari:safari:run']
229-
task test_support: [
230-
'//java/test/org/openqa/selenium/support:small-tests:run',
231-
'//java/test/org/openqa/selenium/support:large-tests:run'
232-
]
233-
234-
task :test_java_webdriver do
235-
if SeleniumRake::Checks.windows?
236-
Rake::Task['test_ie'].invoke
237-
elsif SeleniumRake::Checks.chrome?
238-
Rake::Task['test_chrome'].invoke
239-
elsif SeleniumRake::Checks.edge?
240-
Rake::Task['test_edge'].invoke
241-
else
242-
Rake::Task['test_htmlunit'].invoke
243-
Rake::Task['test_firefox'].invoke
244-
Rake::Task['test_remote_server'].invoke
245-
end
246-
end
247-
248-
task test_java: [
249-
'//java/test/org/openqa/selenium/atoms:test:run',
250-
:test_java_small_tests,
251-
:test_support,
252-
:test_java_webdriver,
253-
:test_selenium,
254-
'test_grid'
255-
]
256-
257-
task test_java_small_tests: [
258-
'//java/test/org/openqa/selenium:small-tests:run',
259-
'//java/test/org/openqa/selenium/json:small-tests:run',
260-
'//java/test/org/openqa/selenium/support:small-tests:run',
261-
'//java/test/org/openqa/selenium/remote:common-tests:run',
262-
'//java/test/org/openqa/selenium/remote:client-tests:run',
263-
'//java/test/org/openqa/grid/selenium/node:node:run',
264-
'//java/test/org/openqa/grid/selenium/proxy:proxy:run',
265-
'//java/test/org/openqa/selenium/remote/server:small-tests:run',
266-
'//java/test/org/openqa/selenium/remote/server/log:test:run'
267-
]
268-
269-
task :test do
270-
if SeleniumRake::Checks.python?
271-
Rake::Task['test_py'].invoke
272-
else
273-
Rake::Task['test_javascript'].invoke
274-
Rake::Task['test_java'].invoke
275-
end
276-
end
277-
278-
task test_py: [:py_prep_for_install_release, 'py:marionette_test']
279-
task build: %i[all firefox remote selenium tests]
280-
281-
desc 'Clean build artifacts.'
282-
task :clean do
283-
rm_rf 'build/'
284-
rm_rf 'java/build/'
285-
rm_rf 'dist/'
286-
end
287-
288-
# Create a new IEGenerator instance
289-
ie_generator = SeleniumRake::IEGenerator.new
290-
291-
# Generate a C++ Header file for mapping between magic numbers and #defines
292-
# in the C++ code.
293-
ie_generator.generate_type_mapping(
294-
name: 'ie_result_type_cpp',
295-
src: 'cpp/iedriver/result_types.txt',
296-
type: 'cpp',
297-
out: 'cpp/iedriver/IEReturnTypes.h'
298-
)
123+
task grid: ['java:grid']
299124

300125
desc 'Generate Javadocs'
301126
task javadocs: %i[//java/src/org/openqa/selenium/grid:all-javadocs] do
@@ -304,7 +129,8 @@ task javadocs: %i[//java/src/org/openqa/selenium/grid:all-javadocs] do
304129
out = 'bazel-bin/java/src/org/openqa/selenium/grid/all-javadocs.jar'
305130

306131
cmd = %(cd build/docs/api/java && jar xf "../../../../#{out}" 2>&1)
307-
cmd = cmd.tr('/', '\\').tr(':', ';') if SeleniumRake::Checks.windows?
132+
windows = RbConfig::CONFIG['host_os'] =~ /mswin|msys|mingw32/
133+
cmd = cmd.tr('/', '\\').tr(':', ';') if windows
308134
raise 'could not unpack javadocs' unless system(cmd)
309135

310136
File.open('build/docs/api/java/stylesheet.css', 'a') do |file|
@@ -325,11 +151,19 @@ task javadocs: %i[//java/src/org/openqa/selenium/grid:all-javadocs] do
325151
end
326152
end
327153

328-
file 'cpp/iedriver/sizzle.h' => ['//third_party/js/sizzle:sizzle:header'] do
329-
cp 'build/third_party/js/sizzle/sizzle.h', 'cpp/iedriver/sizzle.h'
154+
desc 'Update dependencies for the release'
155+
task :release_update do |_task, _arguments|
156+
Rake::Task[:update_multitool].invoke
157+
Rake::Task['java:update'].invoke
158+
Rake::Task['node:update'].invoke
330159
end
331160

332-
task sizzle_header: ['cpp/iedriver/sizzle.h']
161+
desc 'Update multitool binaries to latest releases'
162+
task :update_multitool do |_task, _arguments|
163+
puts 'Updating multitool binary versions'
164+
Bazel.execute('run', [], '//scripts:update_multitool_binaries')
165+
@git.add('multitool.lock.json')
166+
end
333167

334168
task ios_driver: [
335169
'//javascript/atoms/fragments:get_visible_text:ios',
@@ -513,56 +347,12 @@ task :authors do
513347
@git.add('AUTHORS')
514348
end
515349

516-
namespace :side do
517-
task atoms: [
518-
'//javascript/atoms/fragments:find-element'
519-
] do
520-
# TODO: move directly to IDE's directory once the repositories are merged
521-
mkdir_p 'build/javascript/atoms'
522-
523-
atom = 'bazel-bin/javascript/atoms/fragments/find-element.js'
524-
name = File.basename(atom)
525-
526-
puts "Generating #{atom} as #{name}"
527-
File.open(File.join(baseDir, name), 'w') do |f|
528-
f << "// GENERATED CODE - DO NOT EDIT\n"
529-
f << 'module.exports = '
530-
f << File.read(atom).strip
531-
f << ";\n"
532-
end
533-
end
534-
end
535-
536350
def node_version
537351
File.foreach('javascript/selenium-webdriver/package.json') do |line|
538352
return line.split(':').last.strip.tr('",', '') if line.include?('version')
539353
end
540354
end
541355
namespace :node do
542-
atom_list = %w[
543-
//javascript/atoms/fragments:find-elements
544-
//javascript/atoms/fragments:is-displayed
545-
//javascript/webdriver/atoms:get-attribute
546-
]
547-
548-
task atoms: atom_list do
549-
base_dir = 'javascript/selenium-webdriver/lib/atoms'
550-
mkdir_p base_dir
551-
552-
['bazel-bin/javascript/atoms/fragments/is-displayed.js',
553-
'bazel-bin/javascript/webdriver/atoms/get-attribute.js',
554-
'bazel-bin/javascript/atoms/fragments/find-elements.js'].each do |atom|
555-
name = File.basename(atom)
556-
puts "Generating #{atom} as #{name}"
557-
File.open(File.join(base_dir, name), 'w') do |f|
558-
f << "// GENERATED CODE - DO NOT EDIT\n"
559-
f << 'module.exports = '
560-
f << File.read(atom).strip
561-
f << ";\n"
562-
end
563-
end
564-
end
565-
566356
desc 'Build Node npm package'
567357
task :build do |_task, arguments|
568358
args = arguments.to_a.compact
@@ -830,25 +620,6 @@ namespace :rb do
830620
Bazel.execute('build', args, '//rb:selenium-devtools') if devtools || !webdriver
831621
end
832622

833-
task :atoms do
834-
base_dir = 'rb/lib/selenium/webdriver/atoms'
835-
mkdir_p base_dir
836-
837-
{
838-
'//javascript/atoms/fragments:find-elements': 'findElements.js',
839-
'//javascript/atoms/fragments:is-displayed': 'isDisplayed.js',
840-
'//javascript/webdriver/atoms:get-attribute': 'getAttribute.js'
841-
}.each do |target, name|
842-
puts "Generating #{target} as #{name}"
843-
844-
atom = Bazel.execute('build', [], target.to_s)
845-
846-
File.open(File.join(base_dir, name), 'w') do |f|
847-
f << File.read(atom).strip
848-
end
849-
end
850-
end
851-
852623
desc 'Update generated Ruby files for local development'
853624
task :local_dev do
854625
puts 'installing ruby, this may take a minute'
@@ -1522,12 +1293,6 @@ namespace :all do
15221293
end
15231294
end
15241295

1525-
at_exit do
1526-
system 'sh', '.git-fixfiles' if File.exist?('.git') && SeleniumRake::Checks.linux?
1527-
rescue StandardError => e
1528-
puts "Do not exit execution when this errors... #{e.inspect}"
1529-
end
1530-
15311296
def updated_version(current, desired = nil, nightly = nil)
15321297
if !desired.nil? && desired != 'nightly'
15331298
# If desired is present, return full 3 digit version

cpp/iedriverserver/build.desc

Lines changed: 0 additions & 29 deletions
This file was deleted.

0 commit comments

Comments
 (0)