Contributing as a developer#

Fork the repository

Learn how to fork the project and get your own copy.

Fork the repository
Clone the repository

Download your own copy in your local machine.

Clone the repository
Install for developers

Install the project in editable mode.

Install for developers
Build Docker containers

Build the Docker containers for testing.

Build the Docker containers
Run the tests

Verify your changes by testing the project.

Run the tests
Run the CI/CD pipelines

Understand the different CI/CD pipelines.

Run CI/CD pipelines

Fork the repository#

Forking the repository is the first step to contributing to the project. This allows you to have your own copy of the project so you can make changes without affection the main project. Once you have made your changes, you can submit a pull-request to the main project to have your changes reviewed and merged.

Fork this project

Note

If you are an Ansys employee, you can skip this step.

Clone the repository#

Make sure you configure SSH with your GitHub account. This allows you to clone the repository without having to use tokens or passwords. Also, make sure you have git installed in your machine.

To clone the repository using SSH, run:

git clone git@github.com:ansys/pystk

Note

If you are not an Ansys employee, you need to fork the repository and replace ansys with your GitHub user name in the git clone command.

Install for developers#

Installing PySTK in development mode allows you to perform changes to the code and see the changes reflected in your environment without having to reinstall the library every time you make a change.

Virtual environment#

Start by navigating to the project’s root directory by running:

cd pystk

Then, create a new virtual environment named .venv to isolate your system’s Python environment by running:

python -m venv .venv

Finally, activate this environment by running:

.venv\Scripts\activate.bat
.venv\Scripts\Activate.ps1
source .venv/bin/activate

Development mode#

Now, install PySTK in editable mode by running:

python -m pip install --editable .

Verify the installation by checking the version of the library:

from ansys.stk.core import __version__


print(f"PySTK version is {__version__}")
>>> PySTK version is 0.1.1

Install Tox#

Once the project is installed, you can install Tox. This is a cross-platform automation tool. The main advantage of Tox is that it allows you to test your project in different environments and configurations in a temporary and isolated Python virtual environment. To install Tox, run:

python -m pip install tox

Finally, verify the installation by listing all the different environments (automation rules) for PySTK:

python -m tox list
Default Tox environments

Environment

Description

code-style

Checks project code style

tests-core-migration-graphics-cov-linux

Test PySTK core API migration assistant with graphics without Linux and measure coverage

tests-core-migration-graphics-cov

Test PySTK core API migration assistant with graphics and measure coverage

tests-core-migration-graphics-nocov-linux

Test PySTK core API migration assistant with graphics without Linux

tests-core-migration-graphics-nocov

Test PySTK core API migration assistant with graphics

tests-core-migration-graphics-linux

Test PySTK core API migration assistant with graphics without Linux

tests-core-migration-graphics

Test PySTK core API migration assistant with graphics

tests-core-migration-nographics-cov-linux

Test PySTK core API migration assistant with no graphics without Linux and measure coverage

tests-core-migration-nographics-cov

Test PySTK core API migration assistant with no graphics and measure coverage

tests-core-migration-nographics-nocov-linux

Test PySTK core API migration assistant with no graphics without Linux

tests-core-migration-nographics-nocov

Test PySTK core API migration assistant with no graphics

tests-core-migration-nographics-linux

Test PySTK core API migration assistant with no graphics without Linux

tests-core-migration-nographics

Test PySTK core API migration assistant with no graphics

tests-core-migration-graphicsonly-cov-linux

Test PySTK core API migration assistant with graphics only without Linux and measure coverage

tests-core-migration-graphicsonly-cov

Test PySTK core API migration assistant with graphics only and measure coverage

tests-core-migration-graphicsonly-nocov-linux

Test PySTK core API migration assistant with graphics only without Linux

tests-core-migration-graphicsonly-nocov

Test PySTK core API migration assistant with graphics only

tests-core-migration-graphicsonly-linux

Test PySTK core API migration assistant with graphics only without Linux

tests-core-migration-graphicsonly

Test PySTK core API migration assistant with graphics only

tests-core-migration-cov-linux

Test PySTK core API migration assistant without Linux and measure coverage

tests-core-migration-cov

Test PySTK core API migration assistant and measure coverage

tests-core-migration-nocov-linux

Test PySTK core API migration assistant without Linux

tests-core-migration-nocov

Test PySTK core API migration assistant

tests-core-migration-linux

Test PySTK core API migration assistant without Linux

tests-core-migration

Test PySTK core API migration assistant

tests-core-aviator-graphics-cov-linux

Test PySTK core aviator with graphics without Linux and measure coverage

tests-core-aviator-graphics-cov

Test PySTK core aviator with graphics and measure coverage

tests-core-aviator-graphics-nocov-linux

Test PySTK core aviator with graphics without Linux

tests-core-aviator-graphics-nocov

Test PySTK core aviator with graphics

tests-core-aviator-graphics-linux

Test PySTK core aviator with graphics without Linux

tests-core-aviator-graphics

Test PySTK core aviator with graphics

tests-core-aviator-nographics-cov-linux

Test PySTK core aviator with no graphics without Linux and measure coverage

tests-core-aviator-nographics-cov

Test PySTK core aviator with no graphics and measure coverage

tests-core-aviator-nographics-nocov-linux

Test PySTK core aviator with no graphics without Linux

tests-core-aviator-nographics-nocov

Test PySTK core aviator with no graphics

tests-core-aviator-nographics-linux

Test PySTK core aviator with no graphics without Linux

tests-core-aviator-nographics

Test PySTK core aviator with no graphics

tests-core-aviator-graphicsonly-cov-linux

Test PySTK core aviator with graphics only without Linux and measure coverage

tests-core-aviator-graphicsonly-cov

Test PySTK core aviator with graphics only and measure coverage

tests-core-aviator-graphicsonly-nocov-linux

Test PySTK core aviator with graphics only without Linux

tests-core-aviator-graphicsonly-nocov

Test PySTK core aviator with graphics only

tests-core-aviator-graphicsonly-linux

Test PySTK core aviator with graphics only without Linux

tests-core-aviator-graphicsonly

Test PySTK core aviator with graphics only

tests-core-aviator-cov-linux

Test PySTK core aviator without Linux and measure coverage

tests-core-aviator-cov

Test PySTK core aviator and measure coverage

tests-core-aviator-nocov-linux

Test PySTK core aviator without Linux

tests-core-aviator-nocov

Test PySTK core aviator

tests-core-aviator-linux

Test PySTK core aviator without Linux

tests-core-aviator

Test PySTK core aviator

tests-core-stk-graphics-cov-linux

Test PySTK core stk with graphics without Linux and measure coverage

tests-core-stk-graphics-cov

Test PySTK core stk with graphics and measure coverage

tests-core-stk-graphics-nocov-linux

Test PySTK core stk with graphics without Linux

tests-core-stk-graphics-nocov

Test PySTK core stk with graphics

tests-core-stk-graphics-linux

Test PySTK core stk with graphics without Linux

tests-core-stk-graphics

Test PySTK core stk with graphics

tests-core-stk-nographics-cov-linux

Test PySTK core stk with no graphics without Linux and measure coverage

tests-core-stk-nographics-cov

Test PySTK core stk with no graphics and measure coverage

tests-core-stk-nographics-nocov-linux

Test PySTK core stk with no graphics without Linux

tests-core-stk-nographics-nocov

Test PySTK core stk with no graphics

tests-core-stk-nographics-linux

Test PySTK core stk with no graphics without Linux

tests-core-stk-nographics

Test PySTK core stk with no graphics

tests-core-stk-graphicsonly-cov-linux

Test PySTK core stk with graphics only without Linux and measure coverage

tests-core-stk-graphicsonly-cov

Test PySTK core stk with graphics only and measure coverage

tests-core-stk-graphicsonly-nocov-linux

Test PySTK core stk with graphics only without Linux

tests-core-stk-graphicsonly-nocov

Test PySTK core stk with graphics only

tests-core-stk-graphicsonly-linux

Test PySTK core stk with graphics only without Linux

tests-core-stk-graphicsonly

Test PySTK core stk with graphics only

tests-core-stk-cov-linux

Test PySTK core stk without Linux and measure coverage

tests-core-stk-cov

Test PySTK core stk and measure coverage

tests-core-stk-nocov-linux

Test PySTK core stk without Linux

tests-core-stk-nocov

Test PySTK core stk

tests-core-stk-linux

Test PySTK core stk without Linux

tests-core-stk

Test PySTK core stk

tests-core-vgt-graphics-cov-linux

Test PySTK core vgt with graphics without Linux and measure coverage

tests-core-vgt-graphics-cov

Test PySTK core vgt with graphics and measure coverage

tests-core-vgt-graphics-nocov-linux

Test PySTK core vgt with graphics without Linux

tests-core-vgt-graphics-nocov

Test PySTK core vgt with graphics

tests-core-vgt-graphics-linux

Test PySTK core vgt with graphics without Linux

tests-core-vgt-graphics

Test PySTK core vgt with graphics

tests-core-vgt-nographics-cov-linux

Test PySTK core vgt with no graphics without Linux and measure coverage

tests-core-vgt-nographics-cov

Test PySTK core vgt with no graphics and measure coverage

tests-core-vgt-nographics-nocov-linux

Test PySTK core vgt with no graphics without Linux

tests-core-vgt-nographics-nocov

Test PySTK core vgt with no graphics

tests-core-vgt-nographics-linux

Test PySTK core vgt with no graphics without Linux

tests-core-vgt-nographics

Test PySTK core vgt with no graphics

tests-core-vgt-graphicsonly-cov-linux

Test PySTK core vgt with graphics only without Linux and measure coverage

tests-core-vgt-graphicsonly-cov

Test PySTK core vgt with graphics only and measure coverage

tests-core-vgt-graphicsonly-nocov-linux

Test PySTK core vgt with graphics only without Linux

tests-core-vgt-graphicsonly-nocov

Test PySTK core vgt with graphics only

tests-core-vgt-graphicsonly-linux

Test PySTK core vgt with graphics only without Linux

tests-core-vgt-graphicsonly

Test PySTK core vgt with graphics only

tests-core-vgt-cov-linux

Test PySTK core vgt without Linux and measure coverage

tests-core-vgt-cov

Test PySTK core vgt and measure coverage

tests-core-vgt-nocov-linux

Test PySTK core vgt without Linux

tests-core-vgt-nocov

Test PySTK core vgt

tests-core-vgt-linux

Test PySTK core vgt without Linux

tests-core-vgt

Test PySTK core vgt

tests-core-graphics-cov-linux

Test PySTK core with graphics without Linux and measure coverage

tests-core-graphics-cov

Test PySTK core with graphics and measure coverage

tests-core-graphics-nocov-linux

Test PySTK core with graphics without Linux

tests-core-graphics-nocov

Test PySTK core with graphics

tests-core-graphics-linux

Test PySTK core with graphics without Linux

tests-core-graphics

Test PySTK core with graphics

tests-core-nographics-cov-linux

Test PySTK core with no graphics without Linux and measure coverage

tests-core-nographics-cov

Test PySTK core with no graphics and measure coverage

tests-core-nographics-nocov-linux

Test PySTK core with no graphics without Linux

tests-core-nographics-nocov

Test PySTK core with no graphics

tests-core-nographics-linux

Test PySTK core with no graphics without Linux

tests-core-nographics

Test PySTK core with no graphics

tests-core-graphicsonly-cov-linux

Test PySTK core with graphics only without Linux and measure coverage

tests-core-graphicsonly-cov

Test PySTK core with graphics only and measure coverage

tests-core-graphicsonly-nocov-linux

Test PySTK core with graphics only without Linux

tests-core-graphicsonly-nocov

Test PySTK core with graphics only

tests-core-graphicsonly-linux

Test PySTK core with graphics only without Linux

tests-core-graphicsonly

Test PySTK core with graphics only

tests-core-cov-linux

Test PySTK core without Linux and measure coverage

tests-core-cov

Test PySTK core and measure coverage

tests-core-nocov-linux

Test PySTK core without Linux

tests-core-nocov

Test PySTK core

tests-core-linux

Test PySTK core without Linux

tests-core

Test PySTK core

tests-extensions-graphs-cov

Test PySTK extensions graphs and measure coverage

tests-extensions-graphs

Test PySTK extensions graphs

tests-extensions-cov

Test PySTK extensions and measure coverage

tests-extensions

Test PySTK extensions

doc-style-linux

Checks project documentation style

doc-style-windows

Checks project documentation style

doc-links

Check documentation links

doc-html

Build HTML documentation

doc-pdf

Build PDF documentation

docker-build-ubuntu_images

Build all Docker images for Ubuntu

docker-build-windows_images

Build all Docker images for Windows

docker-run-py310-ubuntu_container-linux_host

Run a PySTK container with Python 3.10 and Ubuntu in a Linux host

docker-run-py310-ubuntu_container-windows_host

Run a PySTK container with Python 3.10 and Ubuntu in a Windows host

docker-run-py310-windows_container-linux_host

Run a PySTK container with Python 3.10 and Windows in a Linux host

docker-run-py310-windows_container-windows_host

Run a PySTK container with Python 3.10 and Windows in a Windows host

docker-run-py311-ubuntu_container-linux_host

Run a PySTK container with Python 3.11 and Ubuntu in a Linux host

docker-run-py311-ubuntu_container-windows_host

Run a PySTK container with Python 3.11 and Ubuntu in a Windows host

docker-run-py311-windows_container-linux_host

Run a PySTK container with Python 3.11 and Windows in a Linux host

docker-run-py311-windows_container-windows_host

Run a PySTK container with Python 3.11 and Windows in a Windows host

docker-run-py312-ubuntu_container-linux_host

Run a PySTK container with Python 3.12 and Ubuntu in a Linux host

docker-run-py312-ubuntu_container-windows_host

Run a PySTK container with Python 3.12 and Ubuntu in a Windows host

docker-run-py312-windows_container-linux_host

Run a PySTK container with Python 3.12 and Windows in a Linux host

docker-run-py312-windows_container-windows_host

Run a PySTK container with Python 3.12 and Windows in a Windows host

docker-run-py313-ubuntu_container-linux_host

Run a PySTK container with Python 3.13 and Ubuntu in a Linux host

docker-run-py313-ubuntu_container-windows_host

Run a PySTK container with Python 3.13 and Ubuntu in a Windows host

docker-run-py313-windows_container-linux_host

Run a PySTK container with Python 3.13 and Windows in a Linux host

docker-run-py313-windows_container-windows_host

Run a PySTK container with Python 3.13 and Windows in a Windows host

vulnerabilities-code

Checks vulnerabilities within the source code and its dependencies

vulnerabilities-deps

Checks vulnerabilities within the source code and its dependencies

dist

Build wheel and source distribution artifacts

Build the Docker containers#

STK is containerized using Docker. This allows you to deploy the project in multiple environments without having to worry about dependencies.

Although building a Docker container is not required if you have STK software installed in your local machine, it helps to isolate all your development environment.

To build the Docker containers, you need to have Docker Engine and Docker Compose installed in your system.

Then, download the latest STK Engine artifacts for your platform.

Next, create a folder named distributions/ inside next to the corresponding docker/<platform>/stk-engine/ and place the artifacts inside this folder.

Ensure the ANSYSLMD_LICENSE_FILE=<PORT>@<HOSTNAME> environment variable is set and that your license server has a valid license for running STK.

Build the docker images for your platform by running the corresponding Tox environment:

Docker build environments

Environment

Command

docker-build-ubuntu_images

python -m tox -e docker-build-ubuntu_images

docker-build-windows_images

python -m tox -e docker-build-windows_images

Finally, run the container by running the corresponding Tox environment:

Docker run environments

Environment

Command

docker-run-py310-ubuntu_container-linux_host

python -m tox -e docker-run-py310-ubuntu_container-linux_host

docker-run-py310-ubuntu_container-windows_host

python -m tox -e docker-run-py310-ubuntu_container-windows_host

docker-run-py310-windows_container-linux_host

python -m tox -e docker-run-py310-windows_container-linux_host

docker-run-py310-windows_container-windows_host

python -m tox -e docker-run-py310-windows_container-windows_host

docker-run-py311-ubuntu_container-linux_host

python -m tox -e docker-run-py311-ubuntu_container-linux_host

docker-run-py311-ubuntu_container-windows_host

python -m tox -e docker-run-py311-ubuntu_container-windows_host

docker-run-py311-windows_container-linux_host

python -m tox -e docker-run-py311-windows_container-linux_host

docker-run-py311-windows_container-windows_host

python -m tox -e docker-run-py311-windows_container-windows_host

docker-run-py312-ubuntu_container-linux_host

python -m tox -e docker-run-py312-ubuntu_container-linux_host

docker-run-py312-ubuntu_container-windows_host

python -m tox -e docker-run-py312-ubuntu_container-windows_host

docker-run-py312-windows_container-linux_host

python -m tox -e docker-run-py312-windows_container-linux_host

docker-run-py312-windows_container-windows_host

python -m tox -e docker-run-py312-windows_container-windows_host

docker-run-py313-ubuntu_container-linux_host

python -m tox -e docker-run-py313-ubuntu_container-linux_host

docker-run-py313-ubuntu_container-windows_host

python -m tox -e docker-run-py313-ubuntu_container-windows_host

docker-run-py313-windows_container-linux_host

python -m tox -e docker-run-py313-windows_container-linux_host

docker-run-py313-windows_container-windows_host

python -m tox -e docker-run-py313-windows_container-windows_host

Run the tests#

Once you have made your changes, you can run the tests to verify that your modifications did not break the project. PySTK tests support different markers to avoid running the whole suite of tests. These markers are associated to a dedicated Tox environment.

Testing environments

Environment

Command

tests-core-migration-graphics-cov-linux

python -m tox -e tests-core-migration-graphics-cov-linux

tests-core-migration-graphics-cov

python -m tox -e tests-core-migration-graphics-cov

tests-core-migration-graphics-nocov-linux

python -m tox -e tests-core-migration-graphics-nocov-linux

tests-core-migration-graphics-nocov

python -m tox -e tests-core-migration-graphics-nocov

tests-core-migration-graphics-linux

python -m tox -e tests-core-migration-graphics-linux

tests-core-migration-graphics

python -m tox -e tests-core-migration-graphics

tests-core-migration-nographics-cov-linux

python -m tox -e tests-core-migration-nographics-cov-linux

tests-core-migration-nographics-cov

python -m tox -e tests-core-migration-nographics-cov

tests-core-migration-nographics-nocov-linux

python -m tox -e tests-core-migration-nographics-nocov-linux

tests-core-migration-nographics-nocov

python -m tox -e tests-core-migration-nographics-nocov

tests-core-migration-nographics-linux

python -m tox -e tests-core-migration-nographics-linux

tests-core-migration-nographics

python -m tox -e tests-core-migration-nographics

tests-core-migration-graphicsonly-cov-linux

python -m tox -e tests-core-migration-graphicsonly-cov-linux

tests-core-migration-graphicsonly-cov

python -m tox -e tests-core-migration-graphicsonly-cov

tests-core-migration-graphicsonly-nocov-linux

python -m tox -e tests-core-migration-graphicsonly-nocov-linux

tests-core-migration-graphicsonly-nocov

python -m tox -e tests-core-migration-graphicsonly-nocov

tests-core-migration-graphicsonly-linux

python -m tox -e tests-core-migration-graphicsonly-linux

tests-core-migration-graphicsonly

python -m tox -e tests-core-migration-graphicsonly

tests-core-migration-cov-linux

python -m tox -e tests-core-migration-cov-linux

tests-core-migration-cov

python -m tox -e tests-core-migration-cov

tests-core-migration-nocov-linux

python -m tox -e tests-core-migration-nocov-linux

tests-core-migration-nocov

python -m tox -e tests-core-migration-nocov

tests-core-migration-linux

python -m tox -e tests-core-migration-linux

tests-core-migration

python -m tox -e tests-core-migration

tests-core-aviator-graphics-cov-linux

python -m tox -e tests-core-aviator-graphics-cov-linux

tests-core-aviator-graphics-cov

python -m tox -e tests-core-aviator-graphics-cov

tests-core-aviator-graphics-nocov-linux

python -m tox -e tests-core-aviator-graphics-nocov-linux

tests-core-aviator-graphics-nocov

python -m tox -e tests-core-aviator-graphics-nocov

tests-core-aviator-graphics-linux

python -m tox -e tests-core-aviator-graphics-linux

tests-core-aviator-graphics

python -m tox -e tests-core-aviator-graphics

tests-core-aviator-nographics-cov-linux

python -m tox -e tests-core-aviator-nographics-cov-linux

tests-core-aviator-nographics-cov

python -m tox -e tests-core-aviator-nographics-cov

tests-core-aviator-nographics-nocov-linux

python -m tox -e tests-core-aviator-nographics-nocov-linux

tests-core-aviator-nographics-nocov

python -m tox -e tests-core-aviator-nographics-nocov

tests-core-aviator-nographics-linux

python -m tox -e tests-core-aviator-nographics-linux

tests-core-aviator-nographics

python -m tox -e tests-core-aviator-nographics

tests-core-aviator-graphicsonly-cov-linux

python -m tox -e tests-core-aviator-graphicsonly-cov-linux

tests-core-aviator-graphicsonly-cov

python -m tox -e tests-core-aviator-graphicsonly-cov

tests-core-aviator-graphicsonly-nocov-linux

python -m tox -e tests-core-aviator-graphicsonly-nocov-linux

tests-core-aviator-graphicsonly-nocov

python -m tox -e tests-core-aviator-graphicsonly-nocov

tests-core-aviator-graphicsonly-linux

python -m tox -e tests-core-aviator-graphicsonly-linux

tests-core-aviator-graphicsonly

python -m tox -e tests-core-aviator-graphicsonly

tests-core-aviator-cov-linux

python -m tox -e tests-core-aviator-cov-linux

tests-core-aviator-cov

python -m tox -e tests-core-aviator-cov

tests-core-aviator-nocov-linux

python -m tox -e tests-core-aviator-nocov-linux

tests-core-aviator-nocov

python -m tox -e tests-core-aviator-nocov

tests-core-aviator-linux

python -m tox -e tests-core-aviator-linux

tests-core-aviator

python -m tox -e tests-core-aviator

tests-core-stk-graphics-cov-linux

python -m tox -e tests-core-stk-graphics-cov-linux

tests-core-stk-graphics-cov

python -m tox -e tests-core-stk-graphics-cov

tests-core-stk-graphics-nocov-linux

python -m tox -e tests-core-stk-graphics-nocov-linux

tests-core-stk-graphics-nocov

python -m tox -e tests-core-stk-graphics-nocov

tests-core-stk-graphics-linux

python -m tox -e tests-core-stk-graphics-linux

tests-core-stk-graphics

python -m tox -e tests-core-stk-graphics

tests-core-stk-nographics-cov-linux

python -m tox -e tests-core-stk-nographics-cov-linux

tests-core-stk-nographics-cov

python -m tox -e tests-core-stk-nographics-cov

tests-core-stk-nographics-nocov-linux

python -m tox -e tests-core-stk-nographics-nocov-linux

tests-core-stk-nographics-nocov

python -m tox -e tests-core-stk-nographics-nocov

tests-core-stk-nographics-linux

python -m tox -e tests-core-stk-nographics-linux

tests-core-stk-nographics

python -m tox -e tests-core-stk-nographics

tests-core-stk-graphicsonly-cov-linux

python -m tox -e tests-core-stk-graphicsonly-cov-linux

tests-core-stk-graphicsonly-cov

python -m tox -e tests-core-stk-graphicsonly-cov

tests-core-stk-graphicsonly-nocov-linux

python -m tox -e tests-core-stk-graphicsonly-nocov-linux

tests-core-stk-graphicsonly-nocov

python -m tox -e tests-core-stk-graphicsonly-nocov

tests-core-stk-graphicsonly-linux

python -m tox -e tests-core-stk-graphicsonly-linux

tests-core-stk-graphicsonly

python -m tox -e tests-core-stk-graphicsonly

tests-core-stk-cov-linux

python -m tox -e tests-core-stk-cov-linux

tests-core-stk-cov

python -m tox -e tests-core-stk-cov

tests-core-stk-nocov-linux

python -m tox -e tests-core-stk-nocov-linux

tests-core-stk-nocov

python -m tox -e tests-core-stk-nocov

tests-core-stk-linux

python -m tox -e tests-core-stk-linux

tests-core-stk

python -m tox -e tests-core-stk

tests-core-vgt-graphics-cov-linux

python -m tox -e tests-core-vgt-graphics-cov-linux

tests-core-vgt-graphics-cov

python -m tox -e tests-core-vgt-graphics-cov

tests-core-vgt-graphics-nocov-linux

python -m tox -e tests-core-vgt-graphics-nocov-linux

tests-core-vgt-graphics-nocov

python -m tox -e tests-core-vgt-graphics-nocov

tests-core-vgt-graphics-linux

python -m tox -e tests-core-vgt-graphics-linux

tests-core-vgt-graphics

python -m tox -e tests-core-vgt-graphics

tests-core-vgt-nographics-cov-linux

python -m tox -e tests-core-vgt-nographics-cov-linux

tests-core-vgt-nographics-cov

python -m tox -e tests-core-vgt-nographics-cov

tests-core-vgt-nographics-nocov-linux

python -m tox -e tests-core-vgt-nographics-nocov-linux

tests-core-vgt-nographics-nocov

python -m tox -e tests-core-vgt-nographics-nocov

tests-core-vgt-nographics-linux

python -m tox -e tests-core-vgt-nographics-linux

tests-core-vgt-nographics

python -m tox -e tests-core-vgt-nographics

tests-core-vgt-graphicsonly-cov-linux

python -m tox -e tests-core-vgt-graphicsonly-cov-linux

tests-core-vgt-graphicsonly-cov

python -m tox -e tests-core-vgt-graphicsonly-cov

tests-core-vgt-graphicsonly-nocov-linux

python -m tox -e tests-core-vgt-graphicsonly-nocov-linux

tests-core-vgt-graphicsonly-nocov

python -m tox -e tests-core-vgt-graphicsonly-nocov

tests-core-vgt-graphicsonly-linux

python -m tox -e tests-core-vgt-graphicsonly-linux

tests-core-vgt-graphicsonly

python -m tox -e tests-core-vgt-graphicsonly

tests-core-vgt-cov-linux

python -m tox -e tests-core-vgt-cov-linux

tests-core-vgt-cov

python -m tox -e tests-core-vgt-cov

tests-core-vgt-nocov-linux

python -m tox -e tests-core-vgt-nocov-linux

tests-core-vgt-nocov

python -m tox -e tests-core-vgt-nocov

tests-core-vgt-linux

python -m tox -e tests-core-vgt-linux

tests-core-vgt

python -m tox -e tests-core-vgt

tests-core-graphics-cov-linux

python -m tox -e tests-core-graphics-cov-linux

tests-core-graphics-cov

python -m tox -e tests-core-graphics-cov

tests-core-graphics-nocov-linux

python -m tox -e tests-core-graphics-nocov-linux

tests-core-graphics-nocov

python -m tox -e tests-core-graphics-nocov

tests-core-graphics-linux

python -m tox -e tests-core-graphics-linux

tests-core-graphics

python -m tox -e tests-core-graphics

tests-core-nographics-cov-linux

python -m tox -e tests-core-nographics-cov-linux

tests-core-nographics-cov

python -m tox -e tests-core-nographics-cov

tests-core-nographics-nocov-linux

python -m tox -e tests-core-nographics-nocov-linux

tests-core-nographics-nocov

python -m tox -e tests-core-nographics-nocov

tests-core-nographics-linux

python -m tox -e tests-core-nographics-linux

tests-core-nographics

python -m tox -e tests-core-nographics

tests-core-graphicsonly-cov-linux

python -m tox -e tests-core-graphicsonly-cov-linux

tests-core-graphicsonly-cov

python -m tox -e tests-core-graphicsonly-cov

tests-core-graphicsonly-nocov-linux

python -m tox -e tests-core-graphicsonly-nocov-linux

tests-core-graphicsonly-nocov

python -m tox -e tests-core-graphicsonly-nocov

tests-core-graphicsonly-linux

python -m tox -e tests-core-graphicsonly-linux

tests-core-graphicsonly

python -m tox -e tests-core-graphicsonly

tests-core-cov-linux

python -m tox -e tests-core-cov-linux

tests-core-cov

python -m tox -e tests-core-cov

tests-core-nocov-linux

python -m tox -e tests-core-nocov-linux

tests-core-nocov

python -m tox -e tests-core-nocov

tests-core-linux

python -m tox -e tests-core-linux

tests-core

python -m tox -e tests-core

tests-extensions-graphs-cov

python -m tox -e tests-extensions-graphs-cov

tests-extensions-graphs

python -m tox -e tests-extensions-graphs

tests-extensions-cov

python -m tox -e tests-extensions-cov

tests-extensions

python -m tox -e tests-extensions

Run CI/CD pipelines#

PySTK has a set of CI/CD pipelines that are executed automatically when certain events are detected in the repository. Some of these events include opening a pull-request, labelling a pull-request, and tagging a commit.

Important

The CI/CD pipelines are protected. Only team members of the PySTK developers team can run the pipelines. For non team members, a PySTK developers team member must authorize the CI/CD run for every new commit or change. This prevents unauthorized or malicious code from being executed in the runners.

You can label a pull-request to skip certain jobs in the pipeline. Supported labels are listed in the PySTK labels page.

Label

Description

style:skip

Skip the style job

docs:skip

Skip the documentation job

docs:examples

Build the documentation with examples

docs:api

Build the documentation with API references

tests:skip

Skip the tests job