Installation Instructions
Note
This page is for developers who want to customize or extend OpenWISP Network Topology, whether for bug fixes, new features, or contributions.
For user guides and general information, please see:
Installing for Development
Install the system dependencies:
sudo apt install -y sqlite3 libsqlite3-dev
# Install system dependencies for spatialite which is required
# to run tests for openwisp-network-topology integrations with
# openwisp-network-topology and openwisp-monitoring.
sudo apt install libspatialite-dev libsqlite3-mod-spatialite
Fork and clone the forked repository:
git clone git://github.com/<your_fork>/openwisp-network-topology
Navigate into the cloned repository:
cd openwisp-network-topology/
Start InfluxDB and Redis using Docker (required by the test project to run tests for WiFi Mesh Integration):
docker-compose up -d influxdb redis
Setup and activate a virtual-environment (we'll be using virtualenv):
python -m virtualenv env
source env/bin/activate
Make sure that your base python packages are up to date before moving to the next step:
pip install -U pip wheel setuptools
Install development dependencies:
pip install -e .
pip install -r requirements-test.txt
Create database:
cd tests/
./manage.py migrate
./manage.py createsuperuser
You can access the admin interface at http://127.0.0.1:8000/admin/
.
Run tests with:
# Running tests without setting the "WIFI_MESH" environment
# variable will not run tests for WiFi Mesh integration.
# This is done to avoid slowing down the test suite by adding
# dependencies which are only used by the integration.
./runtests.py
# You can run the tests only for WiFi mesh integration using
# the following command
WIFI_MESH=1 ./runtests.py
Run QA tests:
./run-qa-checks
Alternative Sources
Pypi
To install the latest Pypi:
pip install openwisp-network-topology
Github
To install the latest development version tarball via HTTPs:
pip install https://github.com/openwisp/openwisp-network-topology/tarball/master
Alternatively you can use the git protocol:
pip install -e git+git://github.com/openwisp/openwisp-network-topology#egg=openwisp_network-topology