Files
Stefan Pratter 5eb925e319 Support 202301 (#1329)
* fix next redirect when using U2F 2FA auth (#1191)

* Added self identifier to API

* fix migrations hierarchy after merging in previous support branch

* campus object

Co-authored-by: Stefan Pratter <stefan@20c.com>

* fix out of bound error message
add city / country to campus view

* fix tests

* relock poetry

* linting

* linting

* fix docs regen

* regen docs

* linting

* refactor self entity view to support carrier and campus object types and also make it easier to support additional object types in the future

* remove debug message

---------

Co-authored-by: Gajanan Patil <dipaksavaliya.python@gmail.com>
2023-02-15 07:55:01 +00:00

108 lines
2.0 KiB
Markdown

Generated from ixf.py on 2023-02-14 15:33:37.135106
# peeringdb_server.ixf
IX-F importer implementation.
Handles import of ix-f feeds, creation of suggestions for networks and exchanges
to follow.
Handles notifications of networks and exchanges as part of that process.
A substantial part of the import logic is handled through models.py::IXFMemberData
# Classes
---
## MultipleVlansInPrefix
```
MultipleVlansInPrefix(builtins.ValueError)
```
This error is raised when an ix-f export contains
multiple vlan ids for the prefixes defined in the processed ixlan.
Since peeringdb treats each vlan as it's own exchange this currently
is not a compatible setup for import (see #889).
### Methods
#### \__init__
`def __init__(self, importer, *args, **kwargs)`
Initialize self. See help(type(self)) for accurate signature.
---
## PostMortem
```
PostMortem(builtins.object)
```
Generate postmortem report for ix-f import.
### Methods
#### _process_log_entry
`def _process_log_entry(self, log, entry)`
Process a single IX-F import log entry.
Argument(s):
- log <IXLanIXFMemberImportLog>
- entry <IXLanIXFMemberImportLogEntry>
---
#### _process_logs
`def _process_logs(self, limit=100)`
Process IX-F import logs.
KeywordArgument(s):
- limit <int=100>: limit amount of import logs to process
max limit is defined by server config `IXF_POSTMORTEM_LIMIT`
---
#### generate
`def generate(self, asn, **kwargs)`
Generate and return a new postmortem report.
Argument(s):
- asn <int>: asn of the network to run postmortem
report for
Keyword Argument(s):
- limit <int=100>: limit amount of import logs to process
max limit is defined by server config `IXF_POSTMORTEM_LIMIT`
Returns:
- dict: postmortem report
---
#### reset
`def reset(self, asn, **kwargs)`
Reset for a fresh run.
Argument(s):
- asn <int>: asn of the network to run postormem
report for
Keyword Argument(s):
- limit <int=100>: limit amount of import logs to process
max limit is defined by server config `IXF_POSTMORTEM_LIMIT`
---