Skip to main content

A multiple repository PyPI server implementation

Project description

# inupypi [![Build Status] (https://travis-ci.org/hallaj/inupypi.png)] (https://travis-ci.org/hallaj/inupypi)

#### A Multi Repository PyPI Server Implementation in Python Flask

### Installation Instructions

#### From source:

1. Clone the source code from the Github's repository:
```
git clone https://github.com/hallaj/inupypi.git
```

1. Building the application:
```
python setup.py develop
```

1. Running the application:

##### Standalone WSGI Server:
```
inupypi_server -H <INSERT HOSTNAME> -p <INSERT PORT> -t <HTPASSWD FILE> <PATH TO REPOSITORY>
```

##### Apache mod_wsgi:

1. Create the following file and save it as inupypi.wsgi:
```
#!/usr/bin/env python
# -*- coding: utf8 -*-

from inupypi import create_app

config = {'INUPYPI_REPO': '/PATH/TO/REPOSITORY'}
application = create_app(**config})
```
1. Add the following Apache configuration to use the wsgi file:
```
<VirtualHost *:80>
ServerName SERVER_NAME

WSGIScriptAlias / /PATH/TO/inupypi.wsgi
WSGIDaemonProcess inupypi user=APACHE_USER group=APACHE_GROUP home=/PATH/TO/INUPYPI python-path=/PATH/TO/PYTHON/SITE-PACKAGES/WHERE/INUPYPI/IS/INSTALLED

<Location />
WSGIProcessGroup inupypi
WSGIPassAuthorization On
</Location>
</VirtualHost>
```

### Why another pypiserver application ?
1. We could not find another pypiserver that supported multiple repositories.
1. We wanted to have templates with our pypiserver so that formatting can be easily done.
1. We had a few ideas where we wanted to bring our pypiserver that were not compatible or accepted by current pypiserver implementations.

### TODO
1. Create automated processes to generate all of the steps above to make the process less manual.

### Tests
1. To run the tests:

```sh
python setup.py test
```

Project details


Download files

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

Files for inupypi, version 0.3.1
Filename, size File type Python version Upload date Hashes
Filename, size inupypi-0.3.1.tar.gz (186.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page