Browse Source

Add docs on repo setup/releasing

Brett Langdon 9 years ago
parent
commit
2f57f7d072
No known key found for this signature in database GPG Key ID: A2ECAB73CE12147F
1 changed files with 37 additions and 0 deletions
  1. +37
    -0
      README.md

+ 37
- 0
README.md View File

@ -3,6 +3,43 @@ PyPIHub
PyPI server for serving Python packages out of GitHub.
This project is useful if you have private Python packages in GitHub that you want to install via `pip`.
*Note:* You can use `-e git+ssh://git@github.com/<owner>/<repo>@<tag>` with `pip` to install private packages using git.
However, if you needed to allow someone without ssh access to GitHub the ability to install your package, or make private packages installable from a location that does not have ssh access to GitHub (e.g. docker container) then this server will make that easier for you.
## GitHub repo requirements
### Project structure
PyPIHub will not validate the source files of your package, however, you should structure the package as though you would publish them to [PyPI](https://pypi.org).
This means that your package should contain a `setup.py` file and be installable (you can use `python setup.py install` or `python setup.py develop` to test).
### Releases
PyPIHub expects that you use tags in your repo to denote releases.
If you use [GitHub releases](https://github.com/blog/1547-release-your-software) for your repo, then only those releases will be used by PyPIHub.
However, if you do not use GitHub releases, then all git tags will be used as versions.
### Version names
It is recommended (but not required) that you use [Semantic Versioning](http://semver.org/) of your projects.
*Note:* PyPIHub will automatically strip any leading `v` from your version/tag name. This will turn `v1.0.0` into `1.0.0`, which is more `pip` friendly.
### Assets
PyPIHub will always try to make a `.tar.gz` source asset available for installing from either your release or tag.
However, it is recommended that create a release and build/upload the assets for your package.
See [Creating releases](https://github.com/blog/1547-release-your-software#creating-releases) for more information.
To build assets, you can use `python setup.py sdist bdist_wheel` which will create a `.tar.gz` and a `.whl` file into a `./dist` directory.
Both of these files can and should be attached to the release.
## Installing
```bash


Loading…
Cancel
Save