controller

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: May 16, 2020 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

*

  • Copyright 2018 Curtis Mattoon *
  • Licensed under the Apache License, Version 2.0 (the "License");
  • you may not use this file except in compliance with the License.
  • You may obtain a copy of the License at *
  • http://www.apache.org/licenses/LICENSE-2.0 *
  • Unless required by applicable law or agreed to in writing, software
  • distributed under the License is distributed on an "AS IS" BASIS,
  • WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  • See the License for the specific language governing permissions and
  • limitations under the License.

*

  • Copyright 2018 Curtis Mattoon *
  • Licensed under the Apache License, Version 2.0 (the "License");
  • you may not use this file except in compliance with the License.
  • You may obtain a copy of the License at *
  • http://www.apache.org/licenses/LICENSE-2.0 *
  • Unless required by applicable law or agreed to in writing, software
  • distributed under the License is distributed on an "AS IS" BASIS,
  • WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  • See the License for the specific language governing permissions and
  • limitations under the License.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewKubeClient

func NewKubeClient(kubeconfig string, master_url string) (*kubernetes.Clientset, error)

will fallback to restclient.InClusterConfig() if both kubeconfig/master_url == ""

Types

type ClientGenerator

type ClientGenerator interface {
	KubeClient() (kubernetes.Interface, error)
}

ClientGenerator provides clients

type Controller

type Controller struct {
	Interval time.Duration
	Provider provider.Provider
	KubeGen  ClientGenerator
}

func NewController

func NewController(cfg *config.Config) *Controller

func (*Controller) HandleSecrets

func (c *Controller) HandleSecrets(cli kubernetes.Interface) error

func (*Controller) Run

func (c *Controller) Run(stopChan <-chan struct{})

Run starts the polling of the k8s API server

type SingletonClientGenerator

type SingletonClientGenerator struct {
	KubeConfig string
	KubeMaster string

	sync.Once
	// contains filtered or unexported fields
}

SingletonClientGenerator stores provider clients and guarantees that only one instance of client will be generated

func (*SingletonClientGenerator) KubeClient

KubeClient generates a kube client if it was not created before

Jump to

Keyboard shortcuts

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