Skip to content

Commit ab97220

Browse files
v1-wizarddiemol
andauthored
Support to MicrosoftEdge on chromium (#1202)
* Images for MicrosoftEdge with chromium was added. * Example for StandaloneEdge was added. * Documentation was fixed according to changes. * * Timeout to waiting pods was upped * Upload artifact with edge_video was added to workflows * * Timeout to waiting pods was returned back * The selecting of right driver version for edge was fixed * * Rebuild without cache to update image after fix * * Dockerfile was regenerated * * Add missed dependencies to edge targets in Makefile * * Up version * * test_video was fixed * timeout to waiting pod of selenium-chrome-node was apped in k8s-deploy-test * Update README.md * Update README.md Co-authored-by: Diego Molina <[email protected]>
1 parent 01b8b7c commit ab97220

21 files changed

+511
-19
lines changed

.github/workflows/k8s-deploy-test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ jobs:
5959
kubectl wait --for=condition=ready pod -l name=selenium-router --timeout=300s
6060
kubectl wait --for=condition=ready pod -l name=selenium-distributor --timeout=300s
6161
kubectl wait --for=condition=ready pod -l name=selenium-event-bus --timeout=300s
62-
kubectl wait --for=condition=ready pod -l name=selenium-chrome-node --timeout=600s
62+
kubectl wait --for=condition=ready pod -l name=selenium-chrome-node --timeout=800s
6363
kubectl get pods -l component=selenium-grid-4
6464
echo "All pods are in ready state now"
6565
- name: Listing all the Grid 4 components

.github/workflows/test-video.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,11 @@ jobs:
4848
with:
4949
name: chrome_video
5050
path: ./tests/videos/chrome_video.mp4
51+
- name: Upload recorded Edge video
52+
uses: actions/upload-artifact@v2
53+
with:
54+
name: edge_video
55+
path: ./tests/videos/edge_video.mp4
5156
- name: Upload recorded Firefox video
5257
uses: actions/upload-artifact@v2
5358
with:

Makefile

Lines changed: 59 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,12 @@ all: hub \
1919
sessionqueuer \
2020
event_bus \
2121
chrome \
22+
edge \
2223
firefox \
2324
opera \
2425
docker \
2526
standalone_chrome \
27+
standalone_edge \
2628
standalone_firefox \
2729
standalone_opera \
2830
standalone_docker \
@@ -37,11 +39,13 @@ generate_all: \
3739
generate_event_bus \
3840
generate_node_base \
3941
generate_chrome \
42+
generate_edge \
4043
generate_firefox \
4144
generate_opera \
4245
generate_docker \
4346
generate_standalone_firefox \
4447
generate_standalone_chrome \
48+
generate_standalone_edge \
4549
generate_standalone_opera \
4650
generate_standalone_docker
4751

@@ -100,6 +104,12 @@ generate_chrome:
100104
chrome: node_base generate_chrome
101105
cd ./NodeChrome && docker build $(BUILD_ARGS) -t $(NAME)/node-chrome:$(TAG_VERSION) .
102106

107+
generate_edge:
108+
cd ./NodeEdge && ./generate.sh $(TAG_VERSION) $(NAMESPACE) $(AUTHORS)
109+
110+
edge: node_base generate_edge
111+
cd ./NodeEdge && docker build $(BUILD_ARGS) -t $(NAME)/node-edge:$(TAG_VERSION) .
112+
103113
generate_firefox:
104114
cd ./NodeFirefox && ./generate.sh $(TAG_VERSION) $(NAMESPACE) $(AUTHORS)
105115

@@ -136,6 +146,12 @@ generate_standalone_chrome:
136146
standalone_chrome: chrome generate_standalone_chrome
137147
cd ./StandaloneChrome && docker build $(BUILD_ARGS) -t $(NAME)/standalone-chrome:$(TAG_VERSION) .
138148

149+
generate_standalone_edge:
150+
cd ./Standalone && ./generate.sh StandaloneEdge node-edge $(TAG_VERSION) $(NAMESPACE) $(AUTHORS)
151+
152+
standalone_edge: edge generate_standalone_edge
153+
cd ./StandaloneEdge && docker build $(BUILD_ARGS) -t $(NAME)/standalone-edge:$(TAG_VERSION) .
154+
139155
generate_standalone_opera:
140156
cd ./Standalone && ./generate.sh StandaloneOpera node-opera $(TAG_VERSION) $(NAMESPACE) $(AUTHORS)
141157

@@ -153,6 +169,9 @@ tag_and_push_browser_images: tag_and_push_chrome_images tag_and_push_firefox_ima
153169
tag_and_push_chrome_images:
154170
./tag_and_push_browser_images.sh $(VERSION) $(BUILD_DATE) $(NAMESPACE) $(PUSH_IMAGE) chrome
155171

172+
tag_and_push_edge_images:
173+
./tag_and_push_browser_images.sh $(VERSION) $(BUILD_DATE) $(NAMESPACE) $(PUSH_IMAGE) edge
174+
156175
tag_and_push_firefox_images:
157176
./tag_and_push_browser_images.sh $(VERSION) $(BUILD_DATE) $(NAMESPACE) $(PUSH_IMAGE) firefox
158177

@@ -169,10 +188,12 @@ tag_latest:
169188
docker tag $(NAME)/event-bus:$(TAG_VERSION) $(NAME)/event-bus:latest
170189
docker tag $(NAME)/node-base:$(TAG_VERSION) $(NAME)/node-base:latest
171190
docker tag $(NAME)/node-chrome:$(TAG_VERSION) $(NAME)/node-chrome:latest
191+
docker tag $(NAME)/node-edge:$(TAG_VERSION) $(NAME)/node-edge:latest
172192
docker tag $(NAME)/node-firefox:$(TAG_VERSION) $(NAME)/node-firefox:latest
173193
docker tag $(NAME)/node-opera:$(TAG_VERSION) $(NAME)/node-opera:latest
174194
docker tag $(NAME)/node-docker:$(TAG_VERSION) $(NAME)/node-docker:latest
175195
docker tag $(NAME)/standalone-chrome:$(TAG_VERSION) $(NAME)/standalone-chrome:latest
196+
docker tag $(NAME)/standalone-edge:$(TAG_VERSION) $(NAME)/standalone-edge:latest
176197
docker tag $(NAME)/standalone-firefox:$(TAG_VERSION) $(NAME)/standalone-firefox:latest
177198
docker tag $(NAME)/standalone-opera:$(TAG_VERSION) $(NAME)/standalone-opera:latest
178199
docker tag $(NAME)/standalone-docker:$(TAG_VERSION) $(NAME)/standalone-docker:latest
@@ -187,10 +208,12 @@ release_latest:
187208
docker push $(NAME)/event-bus:latest
188209
docker push $(NAME)/node-base:latest
189210
docker push $(NAME)/node-chrome:latest
211+
docker push $(NAME)/node-edge:latest
190212
docker push $(NAME)/node-firefox:latest
191213
docker push $(NAME)/node-opera:latest
192214
docker push $(NAME)/node-docker:latest
193215
docker push $(NAME)/standalone-chrome:latest
216+
docker push $(NAME)/standalone-edge:latest
194217
docker push $(NAME)/standalone-firefox:latest
195218
docker push $(NAME)/standalone-opera:latest
196219
docker push $(NAME)/standalone-docker:latest
@@ -205,10 +228,12 @@ tag_major_minor:
205228
docker tag $(NAME)/event-bus:$(TAG_VERSION) $(NAME)/event-bus:$(MAJOR)
206229
docker tag $(NAME)/node-base:$(TAG_VERSION) $(NAME)/node-base:$(MAJOR)
207230
docker tag $(NAME)/node-chrome:$(TAG_VERSION) $(NAME)/node-chrome:$(MAJOR)
231+
docker tag $(NAME)/node-edge:$(TAG_VERSION) $(NAME)/node-edge:$(MAJOR)
208232
docker tag $(NAME)/node-firefox:$(TAG_VERSION) $(NAME)/node-firefox:$(MAJOR)
209233
docker tag $(NAME)/node-opera:$(TAG_VERSION) $(NAME)/node-opera:$(MAJOR)
210234
docker tag $(NAME)/node-docker:$(TAG_VERSION) $(NAME)/node-docker:$(MAJOR)
211235
docker tag $(NAME)/standalone-chrome:$(TAG_VERSION) $(NAME)/standalone-chrome:$(MAJOR)
236+
docker tag $(NAME)/standalone-edge:$(TAG_VERSION) $(NAME)/standalone-edge:$(MAJOR)
212237
docker tag $(NAME)/standalone-firefox:$(TAG_VERSION) $(NAME)/standalone-firefox:$(MAJOR)
213238
docker tag $(NAME)/standalone-opera:$(TAG_VERSION) $(NAME)/standalone-opera:$(MAJOR)
214239
docker tag $(NAME)/standalone-docker:$(TAG_VERSION) $(NAME)/standalone-docker:$(MAJOR)
@@ -221,10 +246,12 @@ tag_major_minor:
221246
docker tag $(NAME)/event-bus:$(TAG_VERSION) $(NAME)/event-bus:$(MAJOR).$(MINOR)
222247
docker tag $(NAME)/node-base:$(TAG_VERSION) $(NAME)/node-base:$(MAJOR).$(MINOR)
223248
docker tag $(NAME)/node-chrome:$(TAG_VERSION) $(NAME)/node-chrome:$(MAJOR).$(MINOR)
249+
docker tag $(NAME)/node-edge:$(TAG_VERSION) $(NAME)/node-edge:$(MAJOR).$(MINOR)
224250
docker tag $(NAME)/node-firefox:$(TAG_VERSION) $(NAME)/node-firefox:$(MAJOR).$(MINOR)
225251
docker tag $(NAME)/node-opera:$(TAG_VERSION) $(NAME)/node-opera:$(MAJOR).$(MINOR)
226252
docker tag $(NAME)/node-docker:$(TAG_VERSION) $(NAME)/node-docker:$(MAJOR).$(MINOR)
227253
docker tag $(NAME)/standalone-chrome:$(TAG_VERSION) $(NAME)/standalone-chrome:$(MAJOR).$(MINOR)
254+
docker tag $(NAME)/standalone-edge:$(TAG_VERSION) $(NAME)/standalone-edge:$(MAJOR).$(MINOR)
228255
docker tag $(NAME)/standalone-firefox:$(TAG_VERSION) $(NAME)/standalone-firefox:$(MAJOR).$(MINOR)
229256
docker tag $(NAME)/standalone-opera:$(TAG_VERSION) $(NAME)/standalone-opera:$(MAJOR).$(MINOR)
230257
docker tag $(NAME)/standalone-docker:$(TAG_VERSION) $(NAME)/standalone-docker:$(MAJOR).$(MINOR)
@@ -237,10 +264,12 @@ tag_major_minor:
237264
docker tag $(NAME)/event-bus:$(TAG_VERSION) $(NAME)/event-bus:$(MAJOR_MINOR_PATCH)
238265
docker tag $(NAME)/node-base:$(TAG_VERSION) $(NAME)/node-base:$(MAJOR_MINOR_PATCH)
239266
docker tag $(NAME)/node-chrome:$(TAG_VERSION) $(NAME)/node-chrome:$(MAJOR_MINOR_PATCH)
267+
docker tag $(NAME)/node-edge:$(TAG_VERSION) $(NAME)/node-edge:$(MAJOR_MINOR_PATCH)
240268
docker tag $(NAME)/node-firefox:$(TAG_VERSION) $(NAME)/node-firefox:$(MAJOR_MINOR_PATCH)
241269
docker tag $(NAME)/node-opera:$(TAG_VERSION) $(NAME)/node-opera:$(MAJOR_MINOR_PATCH)
242270
docker tag $(NAME)/node-docker:$(TAG_VERSION) $(NAME)/node-docker:$(MAJOR_MINOR_PATCH)
243271
docker tag $(NAME)/standalone-chrome:$(TAG_VERSION) $(NAME)/standalone-chrome:$(MAJOR_MINOR_PATCH)
272+
docker tag $(NAME)/standalone-edge:$(TAG_VERSION) $(NAME)/standalone-edge:$(MAJOR_MINOR_PATCH)
244273
docker tag $(NAME)/standalone-firefox:$(TAG_VERSION) $(NAME)/standalone-firefox:$(MAJOR_MINOR_PATCH)
245274
docker tag $(NAME)/standalone-opera:$(TAG_VERSION) $(NAME)/standalone-opera:$(MAJOR_MINOR_PATCH)
246275
docker tag $(NAME)/standalone-docker:$(TAG_VERSION) $(NAME)/standalone-docker:$(MAJOR_MINOR_PATCH)
@@ -255,10 +284,12 @@ release: tag_major_minor
255284
@if ! docker images $(NAME)/event-bus | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/event-bus version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
256285
@if ! docker images $(NAME)/node-base | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/node-base version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
257286
@if ! docker images $(NAME)/node-chrome | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/node-chrome version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
287+
@if ! docker images $(NAME)/node-edge | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/node-edge version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
258288
@if ! docker images $(NAME)/node-firefox | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/node-firefox version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
259289
@if ! docker images $(NAME)/node-opera | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/node-opera version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
260290
@if ! docker images $(NAME)/node-docker | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/node-docker version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
261291
@if ! docker images $(NAME)/standalone-chrome | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/standalone-chrome version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
292+
@if ! docker images $(NAME)/standalone-edge | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/standalone-edge version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
262293
@if ! docker images $(NAME)/standalone-firefox | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/standalone-firefox version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
263294
@if ! docker images $(NAME)/standalone-opera | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/standalone-opera version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
264295
@if ! docker images $(NAME)/standalone-docker | awk '{ print $$2 }' | grep -q -F $(TAG_VERSION); then echo "$(NAME)/standalone-docker version $(TAG_VERSION) is not yet built. Please run 'make build'"; false; fi
@@ -271,10 +302,12 @@ release: tag_major_minor
271302
docker push $(NAME)/event-bus:$(TAG_VERSION)
272303
docker push $(NAME)/node-base:$(TAG_VERSION)
273304
docker push $(NAME)/node-chrome:$(TAG_VERSION)
305+
docker push $(NAME)/node-edge:$(TAG_VERSION)
274306
docker push $(NAME)/node-firefox:$(TAG_VERSION)
275307
docker push $(NAME)/node-opera:$(TAG_VERSION)
276308
docker push $(NAME)/node-docker:$(TAG_VERSION)
277309
docker push $(NAME)/standalone-chrome:$(TAG_VERSION)
310+
docker push $(NAME)/standalone-edge:$(TAG_VERSION)
278311
docker push $(NAME)/standalone-firefox:$(TAG_VERSION)
279312
docker push $(NAME)/standalone-opera:$(TAG_VERSION)
280313
docker push $(NAME)/standalone-docker:$(TAG_VERSION)
@@ -287,10 +320,12 @@ release: tag_major_minor
287320
docker push $(NAME)/event-bus:$(MAJOR)
288321
docker push $(NAME)/node-base:$(MAJOR)
289322
docker push $(NAME)/node-chrome:$(MAJOR)
323+
docker push $(NAME)/node-edge:$(MAJOR)
290324
docker push $(NAME)/node-firefox:$(MAJOR)
291325
docker push $(NAME)/node-opera:$(MAJOR)
292326
docker push $(NAME)/node-docker:$(MAJOR)
293327
docker push $(NAME)/standalone-chrome:$(MAJOR)
328+
docker push $(NAME)/standalone-edge:$(MAJOR)
294329
docker push $(NAME)/standalone-firefox:$(MAJOR)
295330
docker push $(NAME)/standalone-opera:$(MAJOR)
296331
docker push $(NAME)/standalone-docker:$(MAJOR)
@@ -303,10 +338,12 @@ release: tag_major_minor
303338
docker push $(NAME)/event-bus:$(MAJOR).$(MINOR)
304339
docker push $(NAME)/node-base:$(MAJOR).$(MINOR)
305340
docker push $(NAME)/node-chrome:$(MAJOR).$(MINOR)
341+
docker push $(NAME)/node-edge:$(MAJOR).$(MINOR)
306342
docker push $(NAME)/node-firefox:$(MAJOR).$(MINOR)
307343
docker push $(NAME)/node-opera:$(MAJOR).$(MINOR)
308344
docker push $(NAME)/node-docker:$(MAJOR).$(MINOR)
309345
docker push $(NAME)/standalone-chrome:$(MAJOR).$(MINOR)
346+
docker push $(NAME)/standalone-edge:$(MAJOR).$(MINOR)
310347
docker push $(NAME)/standalone-firefox:$(MAJOR).$(MINOR)
311348
docker push $(NAME)/standalone-opera:$(MAJOR).$(MINOR)
312349
docker push $(NAME)/standalone-docker:$(MAJOR).$(MINOR)
@@ -319,10 +356,12 @@ release: tag_major_minor
319356
docker push $(NAME)/event-bus:$(MAJOR_MINOR_PATCH)
320357
docker push $(NAME)/node-base:$(MAJOR_MINOR_PATCH)
321358
docker push $(NAME)/node-chrome:$(MAJOR_MINOR_PATCH)
359+
docker push $(NAME)/node-edge:$(MAJOR_MINOR_PATCH)
322360
docker push $(NAME)/node-firefox:$(MAJOR_MINOR_PATCH)
323361
docker push $(NAME)/node-opera:$(MAJOR_MINOR_PATCH)
324362
docker push $(NAME)/node-docker:$(MAJOR_MINOR_PATCH)
325363
docker push $(NAME)/standalone-chrome:$(MAJOR_MINOR_PATCH)
364+
docker push $(NAME)/standalone-edge:$(MAJOR_MINOR_PATCH)
326365
docker push $(NAME)/standalone-firefox:$(MAJOR_MINOR_PATCH)
327366
docker push $(NAME)/standalone-opera:$(MAJOR_MINOR_PATCH)
328367
docker push $(NAME)/standalone-docker:$(MAJOR_MINOR_PATCH)
@@ -332,9 +371,11 @@ release: tag_major_minor
332371
# video: this should be moved to release_latest when Selenium 4 is released
333372

334373
test: test_chrome \
374+
test_edge \
335375
test_firefox \
336376
test_opera \
337377
test_chrome_standalone \
378+
test_edge_standalone \
338379
test_firefox_standalone \
339380
test_opera_standalone
340381

@@ -345,6 +386,12 @@ test_chrome:
345386
test_chrome_standalone:
346387
VERSION=$(TAG_VERSION) NAMESPACE=$(NAMESPACE) ./tests/bootstrap.sh StandaloneChrome
347388

389+
test_edge:
390+
VERSION=$(TAG_VERSION) NAMESPACE=$(NAMESPACE) ./tests/bootstrap.sh NodeEdge
391+
392+
test_edge_standalone:
393+
VERSION=$(TAG_VERSION) NAMESPACE=$(NAMESPACE) ./tests/bootstrap.sh StandaloneEdge
394+
348395
test_firefox:
349396
VERSION=$(TAG_VERSION) NAMESPACE=$(NAMESPACE) ./tests/bootstrap.sh NodeFirefox
350397

@@ -359,9 +406,9 @@ test_opera_standalone:
359406

360407
# This should run on its own CI job. There is no need to combine it with the other tests.
361408
# Its main purpose is to check that a video file was generated.
362-
test_video: video hub chrome firefox opera
409+
test_video: video hub chrome firefox opera edge
363410
# Running a few tests with docker-compose to generate the videos
364-
for node in NodeChrome NodeFirefox NodeOpera ; do \
411+
for node in NodeChrome NodeEdge NodeFirefox NodeOpera ; do \
365412
cd ./tests || true ; \
366413
echo VIDEO_TAG=$(FFMPEG_TAG_VERSION)-$(BUILD_DATE) > .env ; \
367414
echo TAG=$(TAG_VERSION) >> .env ; \
@@ -370,6 +417,10 @@ test_video: video hub chrome firefox opera
370417
echo BROWSER=chrome >> .env ; \
371418
echo VIDEO_FILE_NAME=chrome_video.mp4 >> .env ; \
372419
fi ; \
420+
if [ $$node = "NodeEdge" ] ; then \
421+
echo BROWSER=edge >> .env ; \
422+
echo VIDEO_FILE_NAME=edge_video.mp4 >> .env ; \
423+
fi ; \
373424
if [ $$node = "NodeFirefox" ] ; then \
374425
echo BROWSER=firefox >> .env ; \
375426
echo VIDEO_FILE_NAME=firefox_video.mp4 >> .env ; \
@@ -383,15 +434,17 @@ test_video: video hub chrome firefox opera
383434
# Using ffmpeg to verify file integrity
384435
# https://superuser.com/questions/100288/how-can-i-check-the-integrity-of-a-video-file-avi-mpeg-mp4
385436
docker run -v $$(pwd):$$(pwd) -w $$(pwd) jrottenberg/ffmpeg:4.3.1-ubuntu2004 -v error -i ./tests/videos/chrome_video.mp4 -f null - 2>error.log
437+
docker run -v $$(pwd):$$(pwd) -w $$(pwd) jrottenberg/ffmpeg:4.3.1-ubuntu2004 -v error -i ./tests/videos/edge_video.mp4 -f null - 2>error.log
386438
docker run -v $$(pwd):$$(pwd) -w $$(pwd) jrottenberg/ffmpeg:4.3.1-ubuntu2004 -v error -i ./tests/videos/firefox_video.mp4 -f null - 2>error.log
387439
docker run -v $$(pwd):$$(pwd) -w $$(pwd) jrottenberg/ffmpeg:4.3.1-ubuntu2004 -v error -i ./tests/videos/opera_video.mp4 -f null - 2>error.log
388440

389441
.PHONY: \
390442
all \
391443
base \
392444
build \
393-
chrome \
394445
ci \
446+
chrome \
447+
edge \
395448
firefox \
396449
opera \
397450
docker \
@@ -404,10 +457,12 @@ test_video: video hub chrome firefox opera
404457
generate_event_bus \
405458
generate_node_base \
406459
generate_chrome \
460+
generate_edge \
407461
generate_firefox \
408462
generate_opera \
409463
generate_docker \
410464
generate_standalone_chrome \
465+
generate_standalone_edge \
411466
generate_standalone_firefox \
412467
generate_standalone_opera \
413468
generate_standalone_docker \
@@ -420,6 +475,7 @@ test_video: video hub chrome firefox opera
420475
node_base \
421476
release \
422477
standalone_chrome \
478+
standalone_edge \
423479
standalone_firefox \
424480
standalone_opera \
425481
standalone_docker \

NodeEdge/Dockerfile

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2+
# NOTE: DO *NOT* EDIT THIS FILE. IT IS GENERATED.
3+
# PLEASE UPDATE Dockerfile.txt INSTEAD OF THIS FILE
4+
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
5+
FROM selenium/node-base:4.0.0-beta-1-prerelease-20210207
6+
LABEL authors=SeleniumHQ
7+
8+
USER root
9+
10+
#============================================
11+
# Microsoft Edge
12+
#============================================
13+
# can specify versions by EDGE_VERSION;
14+
# e.g. microsoft-edge-dev=88.0.692.0-1
15+
#============================================
16+
ARG EDGE_VERSION="microsoft-edge-dev"
17+
RUN wget -q -O - https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
18+
&& echo "deb https://packages.microsoft.com/repos/edge stable main" >> /etc/apt/sources.list.d/microsoft-edge.list \
19+
&& apt-get update -qqy \
20+
&& apt-get -qqy install ${EDGE_VERSION} \
21+
&& rm /etc/apt/sources.list.d/microsoft-edge.list \
22+
&& rm -rf /var/lib/apt/lists/* /var/cache/apt/*
23+
24+
#=================================
25+
# Edge Launch Script Wrapper
26+
#=================================
27+
COPY wrap_edge_binary /opt/bin/wrap_edge_binary
28+
RUN /opt/bin/wrap_edge_binary
29+
30+
USER 1200
31+
32+
#============================================
33+
# Edge webdriver
34+
#============================================
35+
# can specify versions by EDGE_DRIVER_VERSION
36+
# Latest released version will be used by default
37+
#============================================
38+
ARG EDGE_DRIVER_VERSION
39+
RUN if [ -z "$EDGE_DRIVER_VERSION" ]; \
40+
then EDGE_MAJOR_VERSION=$(microsoft-edge --version | sed -E "s/.* ([0-9]+)(\.[0-9]+){3}.*/\1/") \
41+
&& EDGE_DRIVER_VERSION=$(wget --no-verbose -O - "https://msedgedriver.azureedge.net/LATEST_RELEASE_${EDGE_MAJOR_VERSION}_LINUX" | tr -cd "\11\12\15\40-\176" | tr -d "\r"); \
42+
fi \
43+
&& echo "Using msedgedriver version: "$EDGE_DRIVER_VERSION \
44+
&& wget --no-verbose -O /tmp/msedgedriver_linux64.zip https://msedgedriver.azureedge.net/$EDGE_DRIVER_VERSION/edgedriver_linux64.zip \
45+
&& rm -rf /opt/selenium/msedgedriver \
46+
&& unzip /tmp/msedgedriver_linux64.zip -d /opt/selenium \
47+
&& rm /tmp/msedgedriver_linux64.zip \
48+
&& mv /opt/selenium/msedgedriver /opt/selenium/msedgedriver-$EDGE_DRIVER_VERSION \
49+
&& chmod 755 /opt/selenium/msedgedriver-$EDGE_DRIVER_VERSION \
50+
&& sudo ln -fs /opt/selenium/msedgedriver-$EDGE_DRIVER_VERSION /usr/bin/msedgedriver

0 commit comments

Comments
 (0)