SummerOfCode/PyPITestingInfrastructure

This wiki is in the process of being archived due to lack of usage and the resources necessary to serve it — predominately to bots, crawlers, and LLM companies. Edits are discouraged.
Pages are preserved as they were at the time of archival. For current information, please visit python.org.
If a change to this archive is absolutely needed, requests can be made via the infrastructure@python.org mailing list.

This page describes a possible Summer of Code project for a testing infrastructure for PyPI.

Contact: Tarek Ziadé <tarek@ziade.org> or Alexis Métaireau <alexis@notmyidea.org>

PyPI has recently gained a PubSubHubBub interface we can use to trigger events when a new package is uploaded.

The student work to be done is :

  • compare and chose the best virtual environment for the testing infrastructure we need
  • create a initial collections of clean VMs
  • study tools like systemtap to be able to report what happens on a box
  • create a set of scripts to drive the Virtual Machines (Linux only is acceptable) :
    • start the VM
    • set up the VM for the tests (firewall, probes, etc.)
    • upload content and run commands over the VM
    • get back the reports
    • perform rollback
  • create a PubSubHubBub daemon

    • trigger the tests for each upload events
    • store the report
  • create a website
    • display the reports
    • create a registry system for people to get reports by emails

The final piece of software should be extensible by a plugin system (adding test-cases to PyPI testing infrastructure).