Files
TheRock/rocm-libraries/projects/hipblaslt/utilities/geko/tox.ini
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

84 lines
3.0 KiB
INI

# Copyright Advanced Micro Devices, Inc., or its affiliates.
# SPDX-License-Identifier: MIT
[tox]
envlist = py3, lint
labels =
static = format, isort
[testenv]
description = "Run the geko test suite"
basepython = python3
deps =
-r{toxinidir}/requirements.txt
invoke
# Integration tests need a hipBLASLt repo / configs; pass them through with, e.g.:
# tox -- --hipblaslt-path ~/rocm-libraries/projects/hipblaslt
# Quick local run (skip slow + bin/geko subprocess tests):
# tox -- --skip-slow --skip-geko-bin
commands =
pytest -v --basetemp={envtmpdir} {posargs}
[testenv:py3]
basepython = python3
[testenv:integration]
description = "Provision tensilelite deps (rocisa) from a hipBLASLt checkout, then run the geko suite inside that env."
basepython = python3
# HIPBLASLT_PATH must point at the hipBLASLt checkout (the dir containing tensilelite/).
# HIPBLASLT_PATH=~/rocm-libraries/projects/hipblaslt tox -e integration
# HIPBLASLT_PATH=~/rocm-libraries/projects/hipblaslt tox -e integration -- --skip-slow
passenv =
HIPBLASLT_PATH
ROCM_PATH
LD_LIBRARY_PATH
HIP_VISIBLE_DEVICES
setenv =
ROCM_PATH = {env:ROCM_PATH:/opt/rocm}
# Put ROCm tools (rocm_agent_enumerator, amdclang, etc.) on PATH so the
# tensilelite client build can detect the GPU arch and compile. Without this
# the build silently no-ops and the slow/GPU e2e tests fail downstream.
PATH = {env:ROCM_PATH:/opt/rocm}/bin{:}{env:PATH}
deps =
-r{toxinidir}/requirements.txt
invoke
# README step 3 ("Install tensilelite dependencies") provisions rocisa; geko itself
# (README step 4) is installed automatically by tox as the env's package-under-test.
# requirements-dev.txt's `./rocisa` is a CWD-relative path, so install rocisa by
# absolute path here to avoid resolving it against the geko directory.
commands_pre =
pip install --upgrade pip
pip install -r {env:HIPBLASLT_PATH}/tensilelite/requirements.txt
pip install {env:HIPBLASLT_PATH}/tensilelite/rocisa/
# README step 5 ("Testing"): run against the provisioned checkout.
# Pass the tests dir explicitly so pytest anchors rootdir at geko and loads
# tests/conftest.py (which registers --hipblaslt-path) before parsing args.
commands =
pytest -v --basetemp={envtmpdir} {toxinidir}/tests --hipblaslt-path {env:HIPBLASLT_PATH} {posargs}
[testenv:lint]
description = "Static analysis with flake8"
skip_install = true
deps = flake8
commands = flake8 {toxinidir}/geko
[testenv:format]
description = "Format code with black"
skip_install = true
deps = black==24.4
commands =
black --line-length=100 {toxinidir}/geko {toxinidir}/scripts {toxinidir}/tests {posargs}
[testenv:isort]
description = "Sort imports for fewer merge conflicts"
skip_install = true
deps = isort==5.13.2
commands =
isort --profile=black {toxinidir}/geko {toxinidir}/scripts {toxinidir}/tests {posargs}
[flake8]
exclude = .git,build*,dist,.cache,*~,.tox,*.egg-info
max-line-length = 132
# E/W are pycodestyle errors/warnings; ignore to mostly leave pyflakes findings.
ignore = E, W