cilium: Index | Files

package client

import ""


Package Files

client.go config.go endpoint.go identity.go ipam.go lrp.go policy.go prefilter.go service.go


const (
    AddressFamilyIPv6 = "ipv6"
    AddressFamilyIPv4 = "ipv4"


var (
    // StatusAllDetails causes no additional status details to be printed by
    // FormatStatusResponse.
    StatusNoDetails = StatusDetails{}
    // StatusAllDetails causes all status details to be printed by FormatStatusResponse.
    StatusAllDetails = StatusDetails{
        AllAddresses:                true,
        AllControllers:              true,
        AllNodes:                    true,
        AllRedirects:                true,
        AllClusters:                 true,
        BPFMapDetails:               true,
        KubeProxyReplacementDetails: true,
        ClockSourceDetails:          true,

func DefaultSockPath Uses

func DefaultSockPath() string

DefaultSockPath returns default UNIX domain socket path or path set using CILIUM_SOCK env variable

func FormatStatusResponse Uses

func FormatStatusResponse(w io.Writer, sr *models.StatusResponse, sd StatusDetails)

FormatStatusResponse writes a StatusResponse as a string to the writer. The bit mask sd controls whether a additional details are printed about a certain aspect of the status. In case there are errors, some details may be printed regardless of the value of sd.

func FormatStatusResponseBrief Uses

func FormatStatusResponseBrief(w io.Writer, sr *models.StatusResponse)

FormatStatusResponseBrief writes a one-line status to the writer. If everything ok, this is "ok", otherwise a message of the form "error in ..."

func Hint Uses

func Hint(err error) error

Hint tries to improve the error message displayed to the user.

type Client Uses

type Client struct {

func NewClient Uses

func NewClient(host string) (*Client, error)

NewClient creates a client for the given `host`. If host is nil then use SockPath provided by CILIUM_SOCK or the cilium default SockPath

func NewDefaultClient Uses

func NewDefaultClient() (*Client, error)

NewDefaultClient creates a client with default parameters connecting to UNIX domain socket.

func NewDefaultClientWithTimeout Uses

func NewDefaultClientWithTimeout(timeout time.Duration) (*Client, error)

NewDefaultClientWithTimeout creates a client with default parameters connecting to UNIX domain socket and waits for cilium-agent availability.

func (*Client) ConfigGet Uses

func (c *Client) ConfigGet() (*models.DaemonConfiguration, error)

ConfigGet returns a daemon configuration.

func (*Client) ConfigPatch Uses

func (c *Client) ConfigPatch(cfg models.DaemonConfigurationSpec) error

ConfigPatch modifies the daemon configuration.

func (*Client) DeletePrefilter Uses

func (c *Client) DeletePrefilter(spec *models.PrefilterSpec) (*models.Prefilter, error)

DeletePrefilter deletes a list of CIDR prefixes

func (*Client) DeleteServiceID Uses

func (c *Client) DeleteServiceID(id int64) error

DeleteServiceID deletes a service by ID.

func (*Client) EndpointConfigGet Uses

func (c *Client) EndpointConfigGet(id string) (*models.EndpointConfigurationStatus, error)

EndpointConfigGet returns endpoint configuration

func (*Client) EndpointConfigPatch Uses

func (c *Client) EndpointConfigPatch(id string, cfg *models.EndpointConfigurationSpec) error

EndpointConfigPatch modifies endpoint configuration

func (*Client) EndpointCreate Uses

func (c *Client) EndpointCreate(ep *models.EndpointChangeRequest) error

EndpointCreate creates a new endpoint

func (*Client) EndpointDelete Uses

func (c *Client) EndpointDelete(id string) error

EndpointDelete deletes endpoint

func (*Client) EndpointGet Uses

func (c *Client) EndpointGet(id string) (*models.Endpoint, error)

EndpointGet returns endpoint by ID

func (*Client) EndpointHealthGet Uses

func (c *Client) EndpointHealthGet(id string) (*models.EndpointHealth, error)

EndpointHealthGet returns endpoint healthz

func (*Client) EndpointLabelsGet Uses

func (c *Client) EndpointLabelsGet(id string) (*models.LabelConfiguration, error)

EndpointLabelsGet returns endpoint label configuration

func (*Client) EndpointLabelsPatch Uses

func (c *Client) EndpointLabelsPatch(id string, toAdd, toDelete models.Labels) error

EndpointLabelsPut modifies endpoint label configuration add: List of labels to add and enable. If the label is an orchestration system label which has been disabled before, it will be removed from the disabled list and readded to the orchestration list. Otherwise it will be added to the custom label list.

delete: List of labels to delete. If the label is an orchestration system label, then it will be deleted from the orchestration list and added to the disabled list. Otherwise it will be removed from the custom list.

func (*Client) EndpointList Uses

func (c *Client) EndpointList() ([]*models.Endpoint, error)

EndpointList returns a list of all endpoints

func (*Client) EndpointLogGet Uses

func (c *Client) EndpointLogGet(id string) (models.EndpointStatusLog, error)

EndpointLogGet returns endpoint log

func (*Client) EndpointPatch Uses

func (c *Client) EndpointPatch(id string, ep *models.EndpointChangeRequest) error

EndpointPatch modifies the endpoint

func (*Client) GetLRPs Uses

func (c *Client) GetLRPs() ([]*models.LRPSpec, error)

GetLRPs returns a list of all local redirect policies.

func (*Client) GetPrefilter Uses

func (c *Client) GetPrefilter() (*models.Prefilter, error)

GetPrefilter returns a list of all CIDR prefixes

func (*Client) GetServiceID Uses

func (c *Client) GetServiceID(id int64) (*models.Service, error)

GetServiceID returns a service by ID.

func (*Client) GetServices Uses

func (c *Client) GetServices() ([]*models.Service, error)

GetServices returns a list of all services.

func (*Client) IPAMAllocate Uses

func (c *Client) IPAMAllocate(family, owner string, expiration bool) (*models.IPAMResponse, error)

IPAMAllocate allocates an IP address out of address family specific pool.

func (*Client) IPAMAllocateIP Uses

func (c *Client) IPAMAllocateIP(ip, owner string) error

IPAMAllocateIP tries to allocate a particular IP address.

func (*Client) IPAMReleaseIP Uses

func (c *Client) IPAMReleaseIP(ip string) error

IPAMReleaseIP releases a IP address back to the pool.

func (*Client) IdentityGet Uses

func (c *Client) IdentityGet(id string) (*models.Identity, error)

IdentityGet returns a security identity.

func (*Client) PatchPrefilter Uses

func (c *Client) PatchPrefilter(spec *models.PrefilterSpec) (*models.Prefilter, error)

PatchPrefilter sets a list of CIDR prefixes

func (*Client) PolicyCacheGet Uses

func (c *Client) PolicyCacheGet() (models.SelectorCache, error)

PolicyCacheGet returns the contents of a SelectorCache.

func (*Client) PolicyDelete Uses

func (c *Client) PolicyDelete(labels []string) (*models.Policy, error)

PolicyDelete deletes policy rules

func (*Client) PolicyGet Uses

func (c *Client) PolicyGet(labels []string) (*models.Policy, error)

PolicyGet returns policy rules

func (*Client) PolicyPut Uses

func (c *Client) PolicyPut(policyJSON string) (*models.Policy, error)

PolicyPut inserts the `policyJSON`

func (*Client) PolicyResolveGet Uses

func (c *Client) PolicyResolveGet(traceSelector *models.TraceSelector) (*models.PolicyTraceResult, error)

PolicyResolveGet resolves policy for a Trace Selector with source and destination identity.

func (*Client) PutServiceID Uses

func (c *Client) PutServiceID(id int64, svc *models.ServiceSpec) (bool, error)

PutServiceID creates or updates a service. Returns true if service was created.

type StatusDetails Uses

type StatusDetails struct {
    // AllAddress causes all addresses to be printed by FormatStatusResponse.
    AllAddresses bool
    // AllControllers causes all controllers to be printed by FormatStatusResponse.
    AllControllers bool
    // AllNodes causes all nodes to be printed by FormatStatusResponse.
    AllNodes bool
    // AllRedirects causes all redirects to be printed by FormatStatusResponse.
    AllRedirects bool
    // AllClusters causes all clusters to be printed by FormatStatusResponse.
    AllClusters bool
    // BPFMapDetails causes BPF map details to be printed by FormatStatusResponse.
    BPFMapDetails bool
    // KubeProxyReplacementDetails causes BPF kube-proxy details to be printed by FormatStatusResponse.
    KubeProxyReplacementDetails bool
    // ClockSourceDetails causes BPF time-keeping internals to be printed by FormatStatusResponse.
    ClockSourceDetails bool

Package client imports 26 packages (graph) and is imported by 56 packages. Updated 2021-01-18. Refresh now. Tools for package owners.