k8sutil

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2017 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Copyright 2016 The Rook Authors. All rights reserved.

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.

Some of the code below came from https://github.com/coreos/etcd-operator which also has the apache 2.0 license.

Copyright 2016 The Rook Authors. All rights reserved.

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 2016 The Rook Authors. All rights reserved.

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.

Some of the code below came from https://github.com/coreos/etcd-operator which also has the apache 2.0 license.

Copyright 2016 The Rook Authors. All rights reserved.

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.

Some of the code below came from https://github.com/coreos/etcd-operator which also has the apache 2.0 license.

Index

Constants

View Source
const (
	Namespace        = "rook"
	DefaultNamespace = "default"
	DataDirVolume    = "rook-data"
	DataDir          = "/var/lib/rook"
	RookType         = "kubernetes.io/rook"
	RbdType          = "kubernetes.io/rbd"
)
View Source
const (
	AppAttr           = "app"
	ClusterAttr       = "rook_cluster"
	VersionAttr       = "rook_version"
	PodIPEnvVar       = "ROOKD_PRIVATE_IPV4"
	DefaultRepoPrefix = "quay.io/rook"
)

Variables

This section is empty.

Functions

func GetPodNames

func GetPodNames(pods []*api.Pod) []string

func IsKubernetesResourceAlreadyExistError

func IsKubernetesResourceAlreadyExistError(err error) bool

func IsKubernetesResourceNotFoundError

func IsKubernetesResourceNotFoundError(err error) bool

func MakeRookImage

func MakeRookImage(version string) string

func MakeRookOperatorImage

func MakeRookOperatorImage(version string) string

func NamespaceEnvVar

func NamespaceEnvVar() v1.EnvVar

func PodWithAntiAffinity

func PodWithAntiAffinity(pod *v1.Pod, attribute, value string)

func RepoPrefix

func RepoPrefix() string

func Retry

func Retry(interval time.Duration, maxRetries int, f ConditionFunc) error

Retry retries f every interval until after maxRetries. The interval won't be affected by how long f takes. For example, if interval is 3s, f takes 1s, another f will be called 2s later. However, if f takes longer than interval, it will be delayed.

func SetPodVersion

func SetPodVersion(pod *v1.Pod, key, version string)

Types

type ConditionFunc

type ConditionFunc func() (bool, error)

type PanicTimer

type PanicTimer struct {
	// contains filtered or unexported fields
}

panicTimer panics when it reaches the given duration.

func NewPanicTimer

func NewPanicTimer(d time.Duration, msg string) *PanicTimer

func (*PanicTimer) Start

func (pt *PanicTimer) Start()

func (*PanicTimer) Stop

func (pt *PanicTimer) Stop()

stop stops the timer and resets the elapsed duration.

Jump to

Keyboard shortcuts

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