From 6b7297545b71fda63aff0a74e680660e8c22222b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Asbj=C3=B8rn=20Sloth=20T=C3=B8nnesen?= Date: Fri, 6 Sep 2019 13:43:35 +0000 Subject: initial commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Asbjørn Sloth Tønnesen --- README.md | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 README.md (limited to 'README.md') diff --git a/README.md b/README.md new file mode 100644 index 0000000..814d561 --- /dev/null +++ b/README.md @@ -0,0 +1,60 @@ +peeringdb-simplesync - Minimalistic PeeringDB synchronization tool +================================================================== + +A simple tool for keeping a local PostgreSQL database up-to-date with PeeringDB. + +Requirements +------------ + +* PostgreSQL 9.5+ +* Python 3.6+ +* psycopg2 2.7+ +* python-requests 2+ + + +Installation +----- + +```sh +sudo apt install git python3 python3-requests python3-psycopg2 + +git clone https://git.2e8.dk/peeringdb-simplesync +cd peeringdb-simplesync + +cp config.py.sample config.py +editor config.py # change credentials + +createdb pdbtest +psql pdbtest < schema.sql +``` + +Usage +----- + +```sh +./sync.py # initial sync takes about 10 minutes +``` + +Then try the following query with `psql pdbtest`: + +```sql +SELECT + asn, + data->>'irr_as_set', + (data->>'info_prefixes4')::int pfx4, + (data->>'info_prefixes6')::int pfx6 +FROM peeringdb.net ORDER BY asn; +``` + +Note: if you add an `info_prefixes4` column to the schema, +then it will automatically be used, just like the `asn` column. + +Known issues +------------ + +* Objects are not deleted when they are deleted from PeeringDB. + +Disclaimer +---------- + +This tool is not affiliated with PeeringDB. -- cgit v1.2.1