v1

package
v3.1.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2019 License: BSD-3-Clause Imports: 4 Imported by: 0

Documentation

Overview

Package v1 is the v1 version of the API. +groupName=danm.k8s.io

Index

Constants

View Source
const (
	OptimisticLockErrorMsg = "the object has been modified; please apply your changes to the latest version and try again"
)

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme   = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: danm.GroupName, Version: "v1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type CniBackend

type CniBackend struct {
	BackendName string
	CniVersion  string
}

type DanmEp

type DanmEp struct {
	meta_v1.TypeMeta   `json:",inline"`
	meta_v1.ObjectMeta `json:"metadata"`
	Spec               DanmEpSpec `json:"spec"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type DanmEpIface

type DanmEpIface struct {
	Name        string            `json:"Name"`
	Address     string            `json:"Address"`
	AddressIPv6 string            `json:"AddressIPv6"`
	MacAddress  string            `json:"MacAddress"`
	Proutes     map[string]string `json:"proutes"`
	Proutes6    map[string]string `json:"proutes6"`
}

type DanmEpList

type DanmEpList struct {
	meta_v1.TypeMeta `json:",inline"`
	meta_v1.ListMeta `json:"metadata"`
	Items            []DanmEp `json:"items"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type DanmEpSpec

type DanmEpSpec struct {
	NetworkID   string      `json:"NetworkID"`
	NetworkType string      `json:"NetworkType"`
	EndpointID  string      `json:"EndpointID"`
	Iface       DanmEpIface `json:"Interface"`
	Host        string      `json:"Host,omitempty"`
	Pod         string      `json:"Pod"`
	CID         string      `json:"CID,omitempty"`
	Netns       string      `json:"netns,omitempty"`
	Creator     string      `json:"Creator,omitempty"`
	Expires     string      `json:"Expires,omitempty"`
}

type DanmNet

type DanmNet struct {
	meta_v1.TypeMeta   `json:",inline"`
	meta_v1.ObjectMeta `json:"metadata"`
	Spec               DanmNetSpec `json:"spec"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type DanmNetList

type DanmNetList struct {
	meta_v1.TypeMeta `json:",inline"`
	meta_v1.ListMeta `json:"metadata"`
	Items            []DanmNet `json:"items"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

type DanmNetOption

type DanmNetOption struct {
	// The device to where the network is attached
	Device string `json:"host_device"`
	// the vxlan id on the host device (creation of vxlan interface)
	Vxlan int `json:"vxlan,omitempty"`
	// The name of the interface in the container
	Prefix string `json:"container_prefix"`
	// IPv4 specific parameters
	// IPv4 network address
	Cidr string `json:"cidr,omitempty"`
	// IPv4 routes for this network
	Routes map[string]string `json:"routes,omitempty"`
	// bit array of tracking address allocation
	Alloc string `json:"alloc,omitempty"`
	// subset of the Cidr from where dynamic IP address allocation happens
	Pool IP4Pool `json:"allocation_pool,omitEmpty"`
	// IPv6 specific parameters
	// IPv6 unique global address prefix
	Net6 string `json:"net6,omitempty"`
	// IPv6 routes for this network
	Routes6 map[string]string `json:"routes6,omitempty"`
	// Routing table number for policy routing
	RTables int `json:"rt_tables"`
	// the VLAN id of the VLAN interface created on top of the host device
	Vlan int `json:"vlan,omitempty"`
	// option to determinate if DPDK options should be used
	Dpdk bool `json:"dpdk,omitempty"`
}

type DanmNetSpec

type DanmNetSpec struct {
	NetworkID   string        `json:"NetworkID"`
	NetworkType string        `json:"NetworkType,omitempty"`
	Options     DanmNetOption `json:"Options"`
	Validation  string        `json:"Validation,omitempty"`
}

type IP4Pool

type IP4Pool struct {
	Start string `json:"start"`
	End   string `json:"end"`
}

type Interface

type Interface struct {
	Network          string            `json:"network"`
	Ip               string            `json:"ip"`
	Ip6              string            `json:"ip6"`
	Proutes          map[string]string `json:"proutes"`
	Proutes6         map[string]string `json:"proutes6"`
	DefaultIfaceName string
}

Interface represents a request coming from the Pod to connect it to one DanmNet during CNI_ADD operation It contains the name of the DanmNet the Pod should be connected to, and other optional requests Pods can influence the scheme of IP allocation (dynamic, static, none), and can ask for the provisioning of policy-based IP routes

type IpamConfig

type IpamConfig struct {
	Type      string      `json:"type"`
	Subnet    string      `json:"subnet"`
	Routes    []IpamRoute `json:"routes,omitEmpty"`
	DefaultGw string      `json:"gateway,omitEmpty"`
	Ip        string      `json:"ip"`
}

type IpamRoute

type IpamRoute struct {
	Dst string `json:"dst"`
	Gw  string `json:"gw,omitEmpty"`
}

Jump to

Keyboard shortcuts

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