data-aggregation-api

module
v0.0.1-alpha.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 11, 2024 License: Apache-2.0

README

Go status CI GitHub

Criteo Data Aggregation API

This API aggregates data from their sources of truth: the Network CMDB or possibly any other data source you may have.

Then, it computes this data to provide OpenConfig JSON for each device as an output.

ygot is used to validate the output against the OpenConfig YANG models.

HowTo: add new config namespace/option

Note: in future release, we aim to simplify the integration as much as possible.

You need to update the following part in the code:

  1. add your ingestor in ingestors/cmdb/<yournewingestor>.go:

    • GetBGPGlobal()
    • PrecomputeBGPGlobal()
  2. register your ingestor in internal/ingestors/repository.go:

    • DataPerDevice struct
    • IngestorRepository struct
    • FetchAll()
    • Precompute()
  3. store the preprocessed ingestor data into internal/convertors/device/device.go:

    • Device struct
    • NewDevice()
  4. add your convertor in internal/convertors/...

  5. execute your convertor (internal/convertors/device/device.go):

    • GenerateOpenconfig()

Directories

Path Synopsis
cmd
internal
app
job
model/openconfig
Package openconfig is a generated package which contains definitions of structs which represent a YANG schema.
Package openconfig is a generated package which contains definitions of structs which represent a YANG schema.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL