Skip to main content

Distutils commands to upload files to several servers

Project description

=======================
collective.dist package
=======================

.. contents::

What is collective.dist ?
=========================

I have added in Python 2.6 a new feature to allow people
to deal with several PyPI-like servers in `.pypirc`.

Basically you can use `register` and `upload` commands on any server
registered in `.pypirc`, which changed a bit.

But Plone and Zope runs on Python 2.4.

So this package adds two new commands so you can use what will be
available in Python 2.6:

- **mupload**: command that allows uploading the package to several servers
- **mregister**: command that allow registering to several servers

This package also provides some new commands that will be introduced
in Python 2.7::

- **check**: command that allows you to check if the metadata are compliant.
It checks for example that long_description compiles in reSt.

How to use collective.dist ?
============================

**mregister** and **mupload** are replacing `register` and `upload` commands
and work with an extended version of the `.pypirc` file.

In order to work with it, change your `.pypirc` file this way::

[distutils]
index-servers =
pypi

[pypi]
username:user
password:password

Where `user` and `password` are your `PyPI` users.

With the latest changes, if *password* is omitted the user will be prompt
to type it when needed.

You can then start to use the `mregister` and `mupload` commands, instead
of the usual `register` and `upload` calls.

A typical call to upload your file would be::

$ python setup.py mregister sdist mupload

To deal with several PyPI-like servers, you can add them in your
`.pypirc` file.

For example, if you want to be able to push your packages to :

- PyPI
- plone.org
- your own private PyPI (by using PloneSoftwareCenter for example)

You can write your `.pypirc` file like this::

[distutils]
index-servers =
pypi
plone.org
mycompany


[pypi]
username:user
password:password

[plone.org]
repository:http://plone.org/products
username:ploneuser
password:password

[plone.org]
repository:http://my.company/products
username:user
password:password

From there, you will be able to work with the different servers,
with the `-r` option::

$ python setup.py mregister sdist mupload -r http://plone.org

You can even use the section name instead of the url::

$ python setup.py mregister sdist mupload -r plone.org

**If your package uses setuptools**, you can even create aliases to simplify
the command::

$ python setup.py alias plone_release mregister sdist mupload -r plone.org # creates the alias
$ python setup.py plone_release # run the whole sequence

Another usage is to deal with several profiles on PyPI itself::

[distutils]
index-servers =
pypi
pypi-personal

[pypi]
username:user
password:password

[pypi-personal]
username:user2
password:password2

Project details


Download files

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

Source Distribution

collective.dist-0.2.2.tar.gz (23.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page