plone / plone/meta

Allow to specify the python, and OS, combinations one wants to test

Open
#210 4 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
6
Forks
7
Avg merge
2d 19h
Merged PRs (30d)
5

Description

tox is known and widely used to simplify the task of running a distribution test suite across different python versions.

With GitHub Actions, one can run those tox tasks in different OSes.

For now, plone/meta has been enforcing to only run on ubuntu-latest with python-3.11 🤷🏾

Being new in tox I'm still not comfortable/capable of pulling this off, I haven't done my research on it 😓 🤓

Thinking outside of Plone core, we would add yet another axis on the matrix: against which Plone version we want the tests to run.

Small steps

A 3-way matrix (OS / python / plone) seems quite complicated, so let's start small, and allow first to specify the python versions one wants to test.

There is a promising plugin for tox that seems to fit the bill: https://pypi.org/project/tox-gh/ with GitLab we should see what we do.

Any takers? 👐🏾 😄

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the tox and CI configuration standardized by plone/meta, then compare how GitHub Actions and GitLab currently invoke the test suite. Investigate whether tox-gh supports selecting Python versions, and define completion as allowing the configuration to run the requested Python combinations without enforcing only Python 3.11 on ubuntu-latest.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, gitlab, python
Domain
build-system, ci-cd, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.