openwisp-users
Provides basic multi-tenancy features for OpenWISP 2 (using the Django web-framework).
Table of Contents:
Deploy it in production
An automated installer is available at ansible-openwisp2.
Install stable version from pypi
Install from pypi:
pip install openwisp-users
Install development version
Install tarball:
pip install https://github.com/openwisp/openwisp-users/tarball/master
Alternatively you can install via pip using git:
pip install -e git+git://github.com/openwisp/openwisp-users#egg=openwisp_users
If you want to contribute, install your cloned fork:
git clone git@github.com:<your_fork>/openwisp-users.git
cd openwisp-users
python setup.py develop
Setup (integrate in an existing django project)
INSTALLED_APPS
in settings.py
should look like the following:
INSTALLED_APPS = [
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'django.contrib.sites',
'django_extensions',
'allauth',
'allauth.account',
'allauth.socialaccount',
'openwisp_users',
]
also add AUTH_USER_MODEL
and SITE_ID
to your settings.py
:
AUTH_USER_MODEL = 'openwisp_users.User' SITE_ID = 1
urls.py
:
from django.conf.urls import include, url
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^accounts/', include('allauth.urls')),
]
urlpatterns += staticfiles_urlpatterns()
For additional steps to properly configure allauth
in your project, please refer to their documentation: allauth documentation installation section.
Installing for development
Install sqlite:
sudo apt-get install sqlite3 libsqlite3-dev openssl libssl-dev
Install your forked repo:
git clone git://github.com/<your_fork>/openwisp-users
cd openwisp-users/
python setup.py develop
Install test requirements:
pip install -r requirements-test.txt
Create database:
cd tests/
./manage.py migrate
./manage.py createsuperuser
Set EMAIL_PORT
in settings.py
to a port number (eg: 1025
):
EMAIL_PORT = '1025'
Launch development server and SMTP debugging server:
./manage.py runserver
# open another terminal and run
python -m smtpd -n -c DebuggingServer localhost:1025
You can access the admin interface at http://127.0.0.1:8000/admin/.
Run tests with:
./runtests.py
Contributing
- Announce your intentions in the OpenWISP Mailing List
- Fork this repo and install it
- Follow PEP8, Style Guide for Python Code
- Write code
- Write tests for your code
- Ensure all tests pass
- Ensure test coverage does not decrease
- Document your changes
- Send pull request
Changelog
See CHANGES.
License
See LICENSE.