Table des matières

db.ffdn.org

Il s'agit d'une application maison en Flask, dont le code est ici : https://code.ffdn.org/FFDN/ffdn-db

Marquer un FAI comme membre de la FFDN

Ça se passe sur hermes, dans le dossier /home/ffdn-db/ffdn-db. Il faut éditer directement la base de données SQLite :

hermes:/home/ffdn-db/ffdn-db# sqlite3 ffdn-db.sqlite
sqlite> update isp set is_ffdn_member = 1 where id == '35';
sqlite> select is_ffdn_member from isp where id == '35';
1

Mise à jour d'un FAI

 sqlite3 /home/ffdn-db/ffdn-db/ffdn-db.sqlite
 select json from isp where id=42;
 update isp set json='{"website": "https://thefnf.org", "subscriberCount": 1000, "name": "Kansas City Freedom Network", "chatrooms": ["irc://irc.thefnf.org/#fnm"], "progressStatus": 7, "coordinates": {"latitude": 39.13, "longitude": -94.55}, "mainMailingList": "kcfn@lists.thefnf.org", "coveredAreas": [{"technologies": ["wifi"], "name": "Kansas City, MO"}], "logoURL": "http://www.kcfreedom.net/cms/wp-content/uploads/2013/08/polImage24.jpg", "shortname": "KCFN", "email": "imw@thefnf.org", "description": "qmp/bmx based city-wide wireless network owned by a diverse array of local nonprofits and individuals"}' where id=42;

Relancer les updates d'un FAI

Par défaut, au bout de 3 tentatives en échec, le process cron de ffdn-db arrête de récupérer les infos via isp.json sur le endpoint correspondant.

Par exemple dans le fichier de log cron.log

2021-10-01 18:40:02.140743: Attempting to update <ISP u'Illyse'>
  last successful update=2021-09-30 16:00:11.489142+02:00
  last update attempt=2021-10-01 06:20:02.793551+02:00
  next update was scheduled 0:19:58.078504 ago
  strike=2
2021-10-01 18:40:02.657992: Error while updating:
  three strikes, you're out

Pour réinitialiser ce compteur, il faut malheureusement aller modifier la base de donnée (penser à faire un backup, ou en cas de soucis récupérer le backup journalier sur sayanet (voir Sauvegardes)).

On se connecte donc à la DB sqlite

sudo su - ffdn-db -s /bin/bash
cd ffdn-db
sqlite3 ffdn-db.sqlite

Puis on liste les FAI en échec

sqlite> .headers on
sqlite> select id,name,next_update,update_error_strike from isp where update_error_strike >=1;
id|name|next_update|update_error_strike
1|Champagne-Ardenne Fournisseur associatif d'Accès à Internet|2018-02-01 19:20:20.880702|3
2|Association Ilico|2021-10-02 03:20:04.669435|3
5|Franciliens.net|2020-10-31 10:00:02.575877|3
6|SamesWireless Fournisseur Associatif d'Accès à Internet|2018-07-14 00:40:04.424365|3
8|Lorraine Data Network|2017-11-15 20:00:22.212642|3
9|Alsace Réseau Neutre|2021-01-08 00:00:03.156664|3
12|Quantic Télécom|2017-11-15 07:40:08.053315|3
15|tetaneutral.net|2019-01-12 22:20:02.988404|3
17|Teleragno|2017-11-15 07:40:08.416161|3
24|PCLight|2017-11-15 07:40:05.397203|3
26|guifi.net - Open, Free and Neutral Community Network|2017-10-19 10:40:09.020515|3
30|Rézine|2021-10-02 07:20:04.577596|3
35|Touraine Data Network|2021-07-07 09:20:10.823608|3
38|Troyes Telecom|2017-10-19 10:40:03.523846|3
39|Rhizome|2018-02-27 16:40:05.865721|3
50|FAImaison|2021-10-02 05:00:03.160792|3
56|Arbeitsgemeinschaft Dresdner Studentennetz|2019-04-04 22:20:08.976173|3
57|Netopi|2021-02-03 05:00:03.037785|3
58|Mycélium|2021-10-02 07:20:04.186907|3
59|Arcane|2018-05-01 19:00:23.610578|3
62|WH-Netz e.V.|2018-07-30 12:20:20.618812|3
63|SCANI|2018-05-01 22:20:21.278700|3
65|Tuyaux Internet LIbre du MAine|2019-03-02 16:00:04.234116|3
73|Intarnet|2021-10-02 21:40:02.529730|1
74|Stolon|2021-10-02 07:20:03.825570|3
78|FAIbreizh|2021-03-17 01:20:02.535781|3

Et enfin pour réintialiser tous les compteurs, on update

sqlite> update isp set update_error_strike=0 where update_error_strike==3;