This project is abandoned, and we recommend not to use this anymore. Because PyPI and pip disallows to download package distributions from other than official PyPI for security reasons.
To use this, follow the instruction.
Then, add this package into setup_requires parameter of your setup() configuration (of setup.py script):
setup(name='YourPackageName', version='1.2.3', ..., setup_requires=['bitbucket-distutils >= 0.1.2'])
Now there will be the overwritten upload command for your setup.py:
$ python setup.py upload --help Common commands: (see '--help-commands' for more) ... Options for 'upload' command: --bb-repository (-R) Bitbucket repository name e.g. user/reponame --bb-username (-u) Bitbucket username --bb-password (-p) Bitbucket password ...
As you can see there are --bb--prefixed options for the command. If -u/--bb-username and --p/--bb-password are not present, it shows the prompt. -R/--bb-repository is required.
Upload is very easy:
$ python setup.py sdist upload -R user/reponame register
- Makes the source distribution file. If your package name is YourPackageName and its version is 1.2.3, and then its file name becomes YourPackageName-1.2.3.tar.gz.
- upload -R user/reponame
- Uploads the built source distribution file into your Bitbucket repository. It does not mean that it will be version-controlled, but it will be simply uploaded to its downloads page.
- Using the Bitbucket download URL registers the package of this version into PyPI. The URL of PyPI page will be http://pypi.python.org/YourPackageName/1.2.3
You can make default values for these options by specifying in the setup.cfg configuration file. For example, if you want to default --bb-repository, make setup.cfg file like (hyphens becomes underscores):
[upload] bb_repository = user/reponame
You can make a shorthand alias as well:
[aliases] release = sdist upload register