Skip to content

Commit 60ecdfd

Browse files
committed
processes
1 parent ede31ce commit 60ecdfd

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

PROCESSES.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Processes
2+
## PCI Database Updates
3+
A [GitHub Actions workflow](.github/workflows/pci-update-workflow.yml) runs automatically every Thursday at 3.14am UTC to fetch the latest database for PCI IDs.
4+
5+
If it finds a new database (by comparing the sha256 against the stored [sha256 sum](pci.ids.sha256)), it will create an SQLite database of graphics cards using [txt_to_db.py](scripts/txt_to_db.py). It will then update the stored .sha256 sum, increment the minor version in [pyproject.toml](pyproject.toml), and create a new GitHub release.
6+
7+
This new release will automatically trigger the PyPI publishing workflow (described next).
8+
9+
## PyPI Publishing
10+
A [GitHub Actions workflow](.github/workflows/pypi-release-workflow.yml) will run automatically whenever a new release is created. This will publish a new release on PyPI using the version number in [pyproject.toml](pyproject.toml).
11+
12+
This can be triggered manually by creating a new release (after updating [pyproject.toml](pyproject.toml)), for e.g. to publish code changes. Or it will trigger automatically if the PCI database updates via the [PCI update workflow](.github/workflows/pci-update-workflow.yml).
13+
14+
Before publishing to PyPI, this workflow automatically tries to install the generated wheel (`.whl`), and runs `pytest` on it (the generated wheel contains all the tests in the `tests/` folder).
15+
16+
## Automated Tests
17+
Every commit to the repo will run `pytest` with Python 3.8 and Python 3.11.
18+
19+
Before publishing to PyPI, the [PyPI workflow](.github/workflows/pypi-release-workflow.yml) automatically tries to install the generated wheel (`.whl`), and runs `pytest` on it (the generated wheel contains all the tests in the `tests/` folder).
20+
21+
Running `pytest` also runs integrated tests to verify the SQLite database bundled in `torchruntime`.

0 commit comments

Comments
 (0)