FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
siliconcompiler/.github/workflows/python_ci.yml at main · osic-tools/siliconcompiler · GitHub
osic-tools
/
siliconcompiler
Public
forked from
siliconcompiler/siliconcompiler
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Projects
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
siliconcompiler
/
.github
/
workflows
/
python_ci.yml
Copy path
View runs
More file actions
More file actions
Latest commit
History
History
History
171 lines (142 loc) · 4.75 KB
Breadcrumbs
siliconcompiler
/
.github
/
workflows
/
python_ci.yml
Copy path
File metadata and controls
171 lines (142 loc) · 4.75 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
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
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
name
:
'
Python CI Tests
'
on
:
#
Runs on pushes to test/ branches and main
push
:
branches
:
-
'
main
'
-
'
test/**
'
#
Runs on all PRs
pull_request
:
#
Manual Dispatch
workflow_dispatch
:
concurrency
:
group
:
${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress
:
true
#
The repository's default workflow token is write-all, so the scopes have to
#
be named here to drop the rest.
permissions
:
contents
:
read
jobs
:
python_test_job
:
timeout-minutes
:
30
runs-on
:
${{ matrix.os }}
name
:
'
Pure Python tests
'
permissions
:
contents
:
read
#
Codecov uploads with OIDC rather than an upload token
id-token
:
write
strategy
:
fail-fast
:
false
matrix
:
python
:
["3.10", "3.11", "3.12", "3.13", "3.14"]
os
:
["ubuntu-latest", "ubuntu-24.04-arm", "windows-latest", "macos-latest"]
steps
:
-
uses
:
actions/checkout@v7
with
:
fetch-depth
:
0
-
name
:
Install Dependencies (linux)
if
:
runner.os == 'Linux'
run
:
|
sudo apt-get update
sudo apt-get install graphviz python3-tk
-
name
:
Install Dependencies (windows)
if
:
runner.os == 'Windows'
run
:
|
choco install -y graphviz
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force
git config --system core.longpaths
true
-
name
:
Install Dependencies (macos)
if
:
matrix.os == 'macos-latest'
run
:
|
# aws/tap comes pre-tapped on the GitHub runner and is untrusted,
# which makes every brew command emit a tap-trust warning. SC does
# not use it, so drop it rather than weakening trust checks.
brew untap aws/tap ||
true
brew install graphviz
-
name
:
Set up Python ${{ matrix.python }}
id
:
python
uses
:
actions/setup-python@v7
with
:
python-version
:
${{ matrix.python }}
cache
:
pip
-
name
:
Setup Python
if
:
runner.os != 'Windows'
run
:
|
${{ steps.python.outputs.python-path }} -m venv .venv
. .venv/bin/activate
python3 --version
pip install --upgrade pip
pip install -e .[test,dashboard,server]
-
name
:
Run Python tests
timeout-minutes
:
15
if
:
runner.os != 'Windows'
run
:
|
. .venv/bin/activate
# change running directory
mkdir testrun
cd testrun
pytest $GITHUB_WORKSPACE -n logical -m "not eda and not docker" --cov --cov-report=xml --durations=0
-
name
:
Setup Python (windows)
timeout-minutes
:
15
if
:
runner.os == 'Windows'
run
:
|
${{ steps.python.outputs.python-path }} -m venv venv
.\venv\Scripts\activate
python3 --version
python.exe -m pip install --upgrade pip
pip install -e .[test,dashboard,server]
-
name
:
Run Python tests (windows)
if
:
runner.os == 'Windows'
run
:
|
.\venv\Scripts\activate
# change running directory
mkdir testrun
cd testrun
pytest $Env:GITHUB_WORKSPACE -n logical -m "not eda and not docker" --cov --cov-report=xml --durations=0
-
name
:
Upload coverage reports to Codecov
continue-on-error
:
true
uses
:
codecov/codecov-action@v7
with
:
use_oidc
:
true
files
:
coverage.xml
name
:
codecov-${{ matrix.python }}-${{ matrix.os }}
verbose
:
true
python_docs_test
:
timeout-minutes
:
30
runs-on
:
"
ubuntu-latest
"
name
:
'
Pure Python tests with docs
'
permissions
:
contents
:
read
#
Codecov uploads with OIDC rather than an upload token
id-token
:
write
steps
:
-
uses
:
actions/checkout@v7
with
:
fetch-depth
:
0
-
name
:
Install Dependencies
run
:
|
sudo apt-get update
sudo apt-get install graphviz python3-tk
-
name
:
Setup Python
run
:
|
python3 -m venv .venv
. .venv/bin/activate
python3 --version
pip install --upgrade pip
pip install -e .[test,docs,server]
-
name
:
Run Python tests
timeout-minutes
:
15
run
:
|
. .venv/bin/activate
# change running directory
mkdir testrun
cd testrun
pytest $GITHUB_WORKSPACE -n logical -m "not eda and not docker" --cov --cov-report=xml --durations=0
-
name
:
Upload coverage reports to Codecov
continue-on-error
:
true
uses
:
codecov/codecov-action@v7
with
:
use_oidc
:
true
files
:
coverage.xml
name
:
codecov-python-with-docs
verbose
:
true
Back
|
FazBrowse Home
|
New Git URL