istio: istio.io/istio/pilot/pkg/networking/apigen Index | Files

package apigen

import "istio.io/istio/pilot/pkg/networking/apigen"

Index

Package Files

apigen.go

type APIGenerator Uses

type APIGenerator struct {
}

Experimental/WIP: this is not yet ready for production use. You can continue to use 1.5 Galley until this is ready.

APIGenerator supports generation of high-level API resources, similar with the MCP protocol. This is a replacement for MCP, using XDS (and in future UDPA) as a transport. Based on lessons from MCP, the protocol allows incremental updates by default, using the same mechanism that EDS is using, i.e. sending only changed resources in a push. Incremental deletes are sent as a resource with empty body.

Example: networking.istio.io/v1alpha3/VirtualService

TODO: we can also add a special marker in the header)

func (*APIGenerator) Generate Uses

func (g *APIGenerator) Generate(proxy *model.Proxy, push *model.PushContext, w *model.WatchedResource, updates *model.PushRequest) (model.Resources, error)

Generate implements the generate method for high level APIs, like Istio config types. This provides similar functionality with MCP and :8080/debug/configz.

Names are based on the current resource naming in istiod stores.

Package apigen imports 11 packages (graph) and is imported by 2 packages. Updated 2021-01-08. Refresh now. Tools for package owners.