The VBTS-Webadmin is a web-based management interface for the network operator that allows him/her to manage services being run locally in the BTS.
- Setup
https://github.com/facebookincubator/CommunityCellularManager
cd
in to 'CommunityCellularManager/client' folder- Clone repo:
git submodule add https://github.com/pcarivbts/vbts-webadmin.git
cd
in to 'vbts-webadmin' folder.- Install requirements:
sudo pip install -r requirements.txt
- Install rabbitmq-server:
sudo apt-get install rabbitmq-server
- Run
python manage.py makemigrations
- Run
python manage.py migrate auth
- Run
python manage.py makemigrations vbts_webadmin
- Run
python manage.py migrate djcelery
- Run
python manage.py migrate --noinput
- Load our fixtures:
python manage.py loaddata vbts_webadmin/fixtures/config.json
- Create a superuser:
python manage.py createsuperuser
- Run the server:
python manage.py runserver <ip_address:port>
- Run Celery:
celery -A vbts_webadmin worker -l info --statedb=worker.state
Workaround for Subscriber 'unable to open database error' for subscriber registry table located in '/var/lib/asterisk/sqlite3dir/'
- Add 'vagrant' user to 'www-data':
sudo usermod -a -G www-data vagrant
- Give group write access:
sudo chmod g+w /var/lib/asterisk/sqlite3dir/*
- Change group owner of the files:
sudo chown root:www-data /var/lib/asterisk/sqlite3dir/*
- Logout or reboot. That should do the trick.
-
To run the tests, you need to install the dependencies:
sudo pip install -r requirements_dev.txt
. -
Run
python manage.py test
to run all the test cases. -
If there is a specific test suite that you want to run, then type
python manage.py test vbts_webadmin.tests.{test_module}
-
To run locust tests
cd
to the vbts_webadmin folder.- Run
locust -f vbts_webadmin/tests/locust/locustfile.py -n [num_of_requests]
- Open a web browser and access the locust interface at {machine_ip}:8089. For example, 127.0.0.1 if locust is ran locally.
- Clone repo:
git clone https://github.com/pcarivbts/vbts-webadmin.git
cd
in to 'vbts-webadmin' folder.- Run 'fab [dev|lab] [options] deploy'. Options include:
-
gsm stack: openbts or osmocom
-
db: sqlite, postgre
-
http_server: uwsgi_nginx, gunicorn_nginx, lighttpd
-
Use 'dev' to deploy to VM and 'lab' to deploy to hardware
- Restart the machine.
- The WebAdmin can be accessed at {machine_ip}:7000.
The goal is to refactor vbts-webadmin and integrate it with https://github.com/facebookincubator/CommunityCellularManager
Also read 'NOTES.md' for API description, programming notes, and other details.