The Webhooks Listener-Plugin library consists of two component libraries written in GoLang

Оригинальный репозиторий.
https://github.com/nutanix/Network-Event-Listener-Framework.

Network-Event-Listener-Framework

Introduction :

The Webhooks Listener-Plugin library consists of two component libraries written in GoLang: WebHook Listener Libraries and Plugin (Event Consumer) Libraries.

WebHook Listener Libraries :

  1. Using the webhooks listener libraries customers/partners/network product companies can create a listener program that can subscribe to relevant networking events occuring on AHV through Nutanix's AOS WebHook APIs .

  2. The listener program will register a HTTP url with the AOS webhooks API.

  3. The networking events as and when they occur will be pushed to the listener through a HTTP POST call of the url.

Plugin Libraries :

  1. The plugin component will accept the events passed to it from the listner.

  2. The plugin component will interpret those events and then drive policy management on the third party networking product by making relevant calls to their respective end-point.

NOTE : Currently the sample code in the present form would allow one listener program cater to one plugin program . However , developers are free to modify and implement to have one listener program cater to multiple plugin programs.

Contents :

  1. Nutanix WebHooks Listener and Plugin Framework Tutorial.

  2. WebhooksListener: Nutanix WebHooks Listener Library Files

  3. pafweventconsumer : Plugin Library Files (Sample implementation of Palo Alto VMSeries FW plugin) and Plugin Service

Assumptions :

  1. Developers should have exposure to GoLang programming language.

  2. The plugin implementation steps described in the tutorial are for illustration purposes only. Developers are expected to exercise their own discretion in determining their own pedagogy of approach to write their own plugin.They can use the implementation steps given in the user guide for guidance.

  3. The sample code associated with this repository is for illustration purpose . The sample code implements a plugin for Palo Alto VMSeries FW for KVM

  4. Developers are free to download , modify or enhance the libraries for their own use case and are expected to maintain them.

Dependency :

In order to leverage Nutanix AOS WebHooks API , one should be on AOS version >= 5.1.1

Owner
Temur Yunusov
Temur Yunusov, skype timur9996
Temur Yunusov
Similar Resources

Kong Verifier plugin for HSDP API signed requests

Kong Verifier plugin for HSDP API signed requests

Jan 7, 2022

mackerel metric plugin for count lines in log

mackerel metric plugin for count lines in log

Nov 13, 2021

Steampipe plugin for the Hypothesis annotation system

Steampipe plugin for the Hypothesis annotation system

Nov 17, 2021

Simple plugin to enable the /flip command inside of Mattermost

Plugin Starter Template This plugin serves as a starting point for writing a Mattermost plugin. Feel free to base your own plugin off this repository.

Nov 4, 2021

Rollup plugin go wasm

Rollup plugin go wasm

May 11, 2022

A helm plugin that shows a diff explaining what a helm upgrade would change

A helm plugin that shows a diff explaining what a helm upgrade would change

Helm Diff Plugin This is a Helm plugin giving your a preview of what a helm upgrade would change.

Jan 4, 2023

Traefik plugin for MaxMind GeoIP2

Traefik plugin for MaxMind GeoIP2 Traefik plugin that registers a custom middleware for getting data from MaxMind GeoIP databases and pass it downstre

Dec 19, 2021

💥 Fusion is a tiny stream processing library written in Go.

💥 Fusion Fusion is a tiny stream processing library written in Go. See reactor for a stream processing tool built using fusion. Features Simple & lig

Jun 30, 2021

Library to work with MimeHeaders and another mime types. Library support wildcards and parameters.

Mime header Motivation This library created to help people to parse media type data, like headers, and store and match it. The main features of the li

Nov 9, 2022
A boilerplate showing how to create a Pulumi component provider written in Go

xyz Pulumi Component Provider (Go) This repo is a boilerplate showing how to create a Pulumi component provider written in Go. You can search-replace

Mar 4, 2022
Fast Entity Component System in Golang

ECS Fast Entity Component System in Golang This module is the ECS part of the game engine i'm writing in Go. Features: as fast as packages with automa

Dec 11, 2022
A toaster component for hogosuru framework
A toaster component for hogosuru framework

Toaster component for hogosuru Toaster implementation for hogosuru How to use? Create a hogosurutoaster.Toaster or attach it to a hogosuru container a

Mar 24, 2022
Entitas-Go is a fast Entity Component System Framework (ECS) Go 1.17 port of Entitas v1.13.0 for C# and Unity.

Entitas-Go Entitas-GO is a fast Entity Component System Framework (ECS) Go 1.17 port of Entitas v1.13.0 for C# and Unity. Code Generator Install the l

Dec 26, 2022
Ecsgo - Cache friendly, Multi threading Entity Component System in Go (with Generic)

ECSGo ECSGo is an Entity Component System(ECS) in Go. This is made with Generic

Oct 19, 2022
Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar

Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar; the second puzzle is unlocked when you complete the first. Each puzzle grants one star.

Dec 6, 2021
Day-1 is apart of my 6 days of Christmas challenge where i write in two new languages everyday, and make something weird out of it.

Day-1 is apart of my 6 days of Christmas challenge where i write in two new languages everyday, and make something weird out of it. today was a HTTP server written with PostGreSQL using Golang, R, and shell script read more

Dec 21, 2021
Takes a list of poker hands for two players in STDIN and scores them

Poker Hand Sorter Takes a list of poker hands for two players in STDIN and scores them. Returns the number of hands won by each player. Prerequisites

Jan 16, 2022
Input Geojson and utilize Dijkstra's formula to provide the best route between two sets of coordinates

Golang GeoJson Dijkstra Golang GeoJson Dijkstra utilizes GeoJson Feature Collections to find the best the shortest route between two points. Installat

Dec 27, 2022
A Sonobuoy plugin to assess @crossplane conformance.

Crossplane Conformance Suite A Sonobuoy plugin to assess Crossplane conformance. To try it, first download the sonobuoy CLI, then: # The version of Cr

Jun 19, 2022