mirror of
https://github.com/peeringdb/peeringdb.git
synced 2024-05-11 05:55:09 +00:00
* stub in poetry for pipenv * re-add tester image * add pre-commit / formatting * fix ghactions * revert test data whitespace, exclude tests/data * revert ws * decruft, rm tox/pipenv * install dev packages for base image * add lgtm config to force to py3
1.5 KiB
1.5 KiB
PeeringDB Server Development
Models
Note: to add fk's to base models, you must add in both peeringdb.models. and in django_peeringdb.models concrete class
models.py
- make model
- add ref_tag_
serializers.py
- add serializer
peeringdb/rest.py
- make ViewSet
- register
Modules
RDAP
- Add output to parsing test
curl -L https://rdap.db.ripe.net/autnum/$ASN > tests/data/rdap/autnum/$ASN.input
or
scripts/rdap_getasn.sh
scripts/rdap_getent.sh
- Pretty print RDAP data
munge json:https://rdap.arin.net/registry/autnum/2914 yaml:
Whois Server
- To locally test whois, setup
/etc/xinetd.d/pdb-whois
with similar:
service whois
{
disable = no
socket_type = stream
wait = no
user = $USER
passenv =
server = /home/$USER/srv/dev.peeringdb.com/peeringdb/in.whoisd
log_on_failure = HOST
}
- Deploy and test against local
facs peeringdb dev --src-dir=. ; whois -h 127.0.0.1 as63311
pytest -v -rxs --cov-report term-missing --cov=peeringdb_server/ --capture=sys tests/
Dependencies
All dependencies are now handled by poetry.
To update them, do poetry lock
and test.
Troubleshooting
404 on static files with runserver:
Make sure it's in debug mode
api tests fail
You need to specify the test directory:
pytest tests/
Can't see error because of warnings
Run pytest with -p no:warnings
Run one specific test
Run pytest with -k $test_name