subunit file/stream to DB – Python 2.7

Maintainer: Debian OpenStack

Section: python

Install python2-subunit2sql-db-manage

  • Debian apt-get install python-subunit2sql Click to copy
  • Ubuntu apt-get install python-subunit2sql Click to copy
  • Arch Linux pacman -S python-subunit2sql Click to copy
  • Kali Linux apt-get install python-subunit2sql Click to copy


subunit file/stream to DB - Python 2.7

subunit2SQL is a tool for storing test results data in a SQL database. Like it's name implies it was originally designed around converting subunit streams to data in a SQL database and the packaged utilities assume a subunit stream as the input format. However, the data model used for the DB does not preclude using any test result format. Additionally the analysis tooling built on top of a database is data format agnostic. However if you choose to use a different result format as an input for the database additional tooling using the DB API would need to be created to parse a different test result output format. It's also worth pointing out that subunit has several language library bindings available. So as a user you could create a small filter to convert a different format to subunit. Creating a filter should be fairly easy and then you don't have to worry about writing a tool like :ref:`subunit2sql` to use a different format. For multiple distributed test runs that are generating subunit output it is useful to store the results in a unified repository. This is the motivation for the testrepository project which does a good job for centralizing the results from multiple test runs. However, imagine something like the OpenStack CI system where the same basic test suite is normally run several hundreds of times a day. To provide useful introspection on the data from those runs and to build trends over time the test results need to be stored in a format that allows for easy querying. Using a SQL database makes a lot of sense for doing this, which was the original motivation for the project. At a high level subunit2SQL uses alembic migrations to setup a DB schema that can then be used by the subunit2sql tool to parse subunit streams and populate the DB. Then there are tools for interacting with the stored data in the subunit2sql-graph command as well as the sql2subunit command to create a subunit stream from data in the database. Additionally, subunit2sql provides a Python DB API that can be used to query information from the stored data to build other tooling. This package contains the Python 2.7 module.

Installing python2-subunit2sql-db-manage command is simple. just copy one of the above commands for your operating system and paste it into terminal. This command is available for Debian, Ubuntu, Arch and Kali operating systems. Once you run the command it will install the latest version of python2-subunit2sql-db-manage 2024 package in your OS.