Skip to content

Add GH runner to matrix nox task #654

Description

@tomuben

Summary

Enhance the integration test matrix to support selecting multiple Github runners.

Details

For some projects we need to run the integration tests for multiple architectures,
e.g. not only for X86-64, but also for ARM 64.

The current ticket requests adding a Nox task to the PTB which generates a Json file describing the matrix configuration.

The matrix should include

  • not only the Python versions,
  • but also the resp. GitHub runners, on which the integration test should be executed.

Thinking further, the runners could be specified in the project configuration, like:

PROJECT_CONFIG = Config(
    ...
    integration_test_runners=["ubuntu-24.04", "ubuntu-24.04-arm"],
    ...

Also, we could generalize the existing matrix jobs, and let the GH workflows define which variables should be added to the resulting JSON, e.g. like this:

nox -s matrix -- --with-python --with-platform
nox > Running session matrix
{"python-version": ["3.10", "3.11", "3.12"], "runner": ["ubuntu-24.04", "ubuntu-24.04-arm"]}
nox > Session  matrix was successful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureProduct feature

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions