This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Convert between Travis-CI `.travis.yml` files and Tox `tox.ini` files

Project Description

For a Python project, take a .travis.yml file (Travis CI) and output a tox.ini file (Tox). Or vice-versa.

Why the name?

The name “panci” is an homage to John MacFarlane’s excellent pandoc. I’ve replaced the “doc” with “ci”; “CI” stands for Continuous Integration, a broad term for what Travis CI and Tox help you with.

Installing

With pip:

sudo pip install panci

Example

Travis to Tox

Let’s say that we have the following .travis.yml:

language: python

python:
  - 2.6
  - 2.7
  - 3.2
  - pypy

script: python setup.py test

If we run:

panci --to=tox .travis.yml

Then we get:

# Tox (http://tox.testrun.org/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.

[tox]
envlist = py26, py27, py32, pypy

[testenv]
commands = python setup.py test

Tox to Travis

Let’s say that we have the following tox.ini:

[tox]
envlist = py26, py27, py33, pypy

[testenv]
commands = py.test
deps = pytest

If we run:

panci tox.ini

Then we get:

language: python
env:
  - TOXENV=py26
  - TOXENV=py27
  - TOXENV=py33
  - TOXENV=pypy
install:
  - travis_retry pip install tox==1.6.1
script:
  - travis_retry tox

panci-tox-quickstart

If we run:

panci-tox-quickstart

Then you are asked some questions:

This utility will ask you a few questions and then generate a simple tox.ini
file to help get you started using tox.

Please enter values for the following settings (just press Enter to
accept a default value, if one is given in brackets).

> Test your project with py24 (Y/n) [Y]: n
> Test your project with py25 (Y/n) [Y]: n
> Test your project with py26 (Y/n) [Y]:
> Test your project with py27 (Y/n) [Y]:
> Test your project with py30 (Y/n) [Y]:
> Test your project with py31 (Y/n) [Y]:
> Test your project with py32 (Y/n) [Y]:
> Test your project with py33 (Y/n) [Y]:
> Test your project with pypy (Y/n) [Y]:
> Test your project with jython (Y/n) [Y]: n

What command should be used to test your project -- examples:
    - python setup.py test
    - nosetests package.module
    - trial package.module
> Command to run to test project [{envpython} setup.py test]:

What dependencies does your project have?
> Comma-separated list of dependencies [ ]: requests,nose

Creating file tox.ini.

Finished: A tox.ini file has been created.

Execute `tox` to test your project.

And then a tox.ini file is spit out with:

# Tox (http://tox.testrun.org/) is a tool for running tests
# in multiple virtualenvs. This configuration file will run the
# test suite on all supported python versions. To use it, "pip install tox"
# and then run "tox" from this directory.

[tox]
envlist = py26, py27, py30, py31, py32, py33, pypy

[testenv]
commands = {envpython} setup.py test
deps =
    requests
    nose

Note about panci-tox-quickstart: I am also working longer-term on getting a tox-quickstart command merged into tox. See this pull request.

Support

For questions, comments, and suggestions, please use GitHub Issues.

Release History

Release History

This version
History Node

0.0.1

History Node

0.0.0

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
panci-0.0.1-py2.py3-none-any.whl (14.0 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Feb 18, 2017
panci-0.0.1.tar.gz (8.9 kB) Copy SHA256 Checksum SHA256 Source Feb 18, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting