-
Notifications
You must be signed in to change notification settings - Fork 509
64 lines (50 loc) · 1.94 KB
/
macos.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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
name: CI-MacOS
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
tests_selenium_safari:
runs-on: macos-latest
strategy:
matrix:
include:
- PY_VER: py38
python-version: 3.8
- PY_VER: py39
python-version: 3.9
- PY_VER: py310
python-version: "3.10"
- PY_VER: py311
python-version: 3.11
- PY_VER: py312
python-version: "3.12"
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{matrix.python-version}}
- name: Install test dependencies
run: pip install tox
- name: Enable Safari Webdriver
run: |
defaults write com.apple.Safari IncludeDevelopMenu YES
defaults write com.apple.Safari AllowRemoteAutomation 1
sudo safaridriver --enable
- name: Install timeout util and java
run: |
brew install coreutils
brew install java11
- name: Download Selenium Server
run: |
wget https://github.com/SeleniumHQ/selenium/releases/download/selenium-4.16.0/selenium-server-4.16.1.jar -O selenium-server.jar
- name: Setup standalone
run: $(brew --prefix openjdk@11)/bin/java -jar selenium-server.jar standalone -I 'safari' > selenium-standalone.log 2>&1 &
- name: Run tests for macos
run: |
gtimeout 60 bash -c 'while ! wget -O /dev/null -T 1 http://localhost:4444/readyz; do echo waiting for selenium server; sleep 1; done' || (cat selenium-standalone.log && exit 2)
tox -e tests_selenium_remote_safari -- --cache-clear -n 1 || tox -e tests_selenium_remote_safari -- -n 1 --last-failed --last-failed-no-failures none