/go-netbox-proxy

Primary LanguageGoUniversal Permissive License v1.0UPL-1.0

go-netbox-proxy

Authors

State

Due a breaking changes in Netbox 3.2 we got some trouble with Terraform Providers. As this is opensource software the updates to fix this breaking change are dangling.

breaking change: The created field of all change-logged models now conveys a full datetime object, rather than only a date. (Previous date-only values will receive a timestamp of 00:00.) While this change is largely unconcerning, strictly-typed API consumers may need to be updated.

Deployment

This small proxy is deployed between the Ingress (Varnish) and the Service (Netbox). All requests to the /api/ Endpoints will proxied by go-netbox-proxy. The content will scanned and substituted if the RegEX "created":"(?:.+?)", matches.

NOTE: This is a monkey patch and will not longer stay in place as needed!

To ensure that only API traffic will be forwarded through the proxy, this change is in place:

backend api {
  .host = "netbox-proxy";
}

sub vcl_recv {
  # Route API Traffic to the API Backend
  if (req.url ~ "^/api/") {
      set req.backend_hint = api;
  } else {
      set req.backend_hint = default;
  }
}

Tech Stack

Service: HTTP, Proxy

Cloud: Kubernetes, OCI

Contributing to this project

We welcome community contributions to this project. Feel free to create issues and pull requests.