mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-14 13:45:06 +00:00
generate the versioned clientset
This commit is contained in:
@@ -24,6 +24,7 @@ import (
|
|||||||
|
|
||||||
"k8s.io/kubernetes/cmd/libs/go2idl/args"
|
"k8s.io/kubernetes/cmd/libs/go2idl/args"
|
||||||
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/fake"
|
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/fake"
|
||||||
|
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/normalization"
|
||||||
"k8s.io/kubernetes/cmd/libs/go2idl/generator"
|
"k8s.io/kubernetes/cmd/libs/go2idl/generator"
|
||||||
"k8s.io/kubernetes/cmd/libs/go2idl/namer"
|
"k8s.io/kubernetes/cmd/libs/go2idl/namer"
|
||||||
"k8s.io/kubernetes/cmd/libs/go2idl/types"
|
"k8s.io/kubernetes/cmd/libs/go2idl/types"
|
||||||
@@ -38,6 +39,11 @@ type ClientGenArgs struct {
|
|||||||
// unversioned package, which is part of our API. Tools like client-gen
|
// unversioned package, which is part of our API. Tools like client-gen
|
||||||
// shouldn't depend on an API.
|
// shouldn't depend on an API.
|
||||||
GroupVersions []unversioned.GroupVersion
|
GroupVersions []unversioned.GroupVersion
|
||||||
|
|
||||||
|
// GroupVersionToInputPath is a map between GroupVersion and the path to
|
||||||
|
// the respective types.go. We still need GroupVersions in the struct because
|
||||||
|
// we need an order.
|
||||||
|
GroupVersionToInputPath map[unversioned.GroupVersion]string
|
||||||
// ClientsetName is the name of the clientset to be generated. It's
|
// ClientsetName is the name of the clientset to be generated. It's
|
||||||
// populated from command-line arguments.
|
// populated from command-line arguments.
|
||||||
ClientsetName string
|
ClientsetName string
|
||||||
@@ -73,10 +79,10 @@ func DefaultNameSystem() string {
|
|||||||
return "public"
|
return "public"
|
||||||
}
|
}
|
||||||
|
|
||||||
func packageForGroup(group string, version string, typeList []*types.Type, packageBasePath string, srcTreePath string, boilerplate []byte) generator.Package {
|
func packageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packageBasePath string, srcTreePath string, boilerplate []byte) generator.Package {
|
||||||
outputPackagePath := filepath.Join(packageBasePath, group, version)
|
outputPackagePath := filepath.Join(packageBasePath, gv.Group, gv.Version)
|
||||||
return &generator.DefaultPackage{
|
return &generator.DefaultPackage{
|
||||||
PackageName: version,
|
PackageName: gv.Version,
|
||||||
PackagePath: outputPackagePath,
|
PackagePath: outputPackagePath,
|
||||||
HeaderText: boilerplate,
|
HeaderText: boilerplate,
|
||||||
PackageDocumentation: []byte(
|
PackageDocumentation: []byte(
|
||||||
@@ -97,7 +103,7 @@ func packageForGroup(group string, version string, typeList []*types.Type, packa
|
|||||||
OptionalName: strings.ToLower(c.Namers["private"].Name(t)),
|
OptionalName: strings.ToLower(c.Namers["private"].Name(t)),
|
||||||
},
|
},
|
||||||
outputPackage: outputPackagePath,
|
outputPackage: outputPackagePath,
|
||||||
group: group,
|
group: gv.Group,
|
||||||
typeToMatch: t,
|
typeToMatch: t,
|
||||||
imports: generator.NewImportTracker(),
|
imports: generator.NewImportTracker(),
|
||||||
})
|
})
|
||||||
@@ -105,10 +111,10 @@ func packageForGroup(group string, version string, typeList []*types.Type, packa
|
|||||||
|
|
||||||
generators = append(generators, &genGroup{
|
generators = append(generators, &genGroup{
|
||||||
DefaultGen: generator.DefaultGen{
|
DefaultGen: generator.DefaultGen{
|
||||||
OptionalName: group + "_client",
|
OptionalName: gv.Group + "_client",
|
||||||
},
|
},
|
||||||
outputPackage: outputPackagePath,
|
outputPackage: outputPackagePath,
|
||||||
group: group,
|
group: gv.Group,
|
||||||
types: typeList,
|
types: typeList,
|
||||||
imports: generator.NewImportTracker(),
|
imports: generator.NewImportTracker(),
|
||||||
})
|
})
|
||||||
@@ -166,30 +172,25 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
|
|||||||
glog.Fatalf("Failed loading boilerplate: %v", err)
|
glog.Fatalf("Failed loading boilerplate: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
groupToTypes := map[string][]*types.Type{}
|
customArgs, ok := arguments.CustomArgs.(ClientGenArgs)
|
||||||
for _, inputDir := range arguments.InputDirs {
|
if !ok {
|
||||||
|
glog.Fatalf("cannot convert arguments.CustomArgs to ClientGenArgs")
|
||||||
|
}
|
||||||
|
|
||||||
|
gvToTypes := map[unversioned.GroupVersion][]*types.Type{}
|
||||||
|
for gv, inputDir := range customArgs.GroupVersionToInputPath {
|
||||||
p := context.Universe.Package(inputDir)
|
p := context.Universe.Package(inputDir)
|
||||||
for _, t := range p.Types {
|
for _, t := range p.Types {
|
||||||
if types.ExtractCommentTags("+", t.SecondClosestCommentLines)["genclient"] != "true" {
|
if types.ExtractCommentTags("+", t.SecondClosestCommentLines)["genclient"] != "true" {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
group := filepath.Base(t.Name.Package)
|
if _, found := gvToTypes[gv]; !found {
|
||||||
// Special case for the core API.
|
gvToTypes[gv] = []*types.Type{}
|
||||||
if group == "api" {
|
|
||||||
group = "core"
|
|
||||||
}
|
}
|
||||||
if _, found := groupToTypes[group]; !found {
|
gvToTypes[gv] = append(gvToTypes[gv], t)
|
||||||
groupToTypes[group] = []*types.Type{}
|
|
||||||
}
|
|
||||||
groupToTypes[group] = append(groupToTypes[group], t)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
customArgs, ok := arguments.CustomArgs.(ClientGenArgs)
|
|
||||||
if !ok {
|
|
||||||
glog.Fatalf("cannot convert arguments.CustomArgs to ClientGenArgs")
|
|
||||||
}
|
|
||||||
|
|
||||||
var packageList []generator.Package
|
var packageList []generator.Package
|
||||||
|
|
||||||
packageList = append(packageList, packageForClientset(customArgs, arguments.OutputPackagePath, boilerplate))
|
packageList = append(packageList, packageForClientset(customArgs, arguments.OutputPackagePath, boilerplate))
|
||||||
@@ -203,10 +204,11 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat
|
|||||||
}
|
}
|
||||||
|
|
||||||
orderer := namer.Orderer{namer.NewPrivateNamer(0)}
|
orderer := namer.Orderer{namer.NewPrivateNamer(0)}
|
||||||
for group, types := range groupToTypes {
|
for _, gv := range customArgs.GroupVersions {
|
||||||
packageList = append(packageList, packageForGroup(group, "unversioned", orderer.OrderTypes(types), arguments.OutputPackagePath, arguments.OutputBase, boilerplate))
|
types := gvToTypes[gv]
|
||||||
|
packageList = append(packageList, packageForGroup(normalization.GroupVersion(gv), orderer.OrderTypes(types), arguments.OutputPackagePath, arguments.OutputBase, boilerplate))
|
||||||
if customArgs.FakeClient {
|
if customArgs.FakeClient {
|
||||||
packageList = append(packageList, fake.PackageForGroup(group, "unversioned", orderer.OrderTypes(types), arguments.OutputPackagePath, arguments.OutputBase, boilerplate))
|
packageList = append(packageList, fake.PackageForGroup(normalization.GroupVersion(gv), orderer.OrderTypes(types), arguments.OutputPackagePath, arguments.OutputBase, boilerplate))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -25,10 +25,10 @@ import (
|
|||||||
"k8s.io/kubernetes/pkg/api/unversioned"
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
)
|
)
|
||||||
|
|
||||||
func PackageForGroup(group string, version string, typeList []*types.Type, packageBasePath string, srcTreePath string, boilerplate []byte) generator.Package {
|
func PackageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packageBasePath string, srcTreePath string, boilerplate []byte) generator.Package {
|
||||||
outputPackagePath := filepath.Join(packageBasePath, group, version, "fake")
|
outputPackagePath := filepath.Join(packageBasePath, gv.Group, gv.Version, "fake")
|
||||||
// TODO: should make this a function, called by here and in client-generator.go
|
// TODO: should make this a function, called by here and in client-generator.go
|
||||||
realClientPath := filepath.Join(packageBasePath, group, version)
|
realClientPath := filepath.Join(packageBasePath, gv.Group, gv.Version)
|
||||||
return &generator.DefaultPackage{
|
return &generator.DefaultPackage{
|
||||||
PackageName: "fake",
|
PackageName: "fake",
|
||||||
PackagePath: outputPackagePath,
|
PackagePath: outputPackagePath,
|
||||||
@@ -51,7 +51,7 @@ func PackageForGroup(group string, version string, typeList []*types.Type, packa
|
|||||||
OptionalName: "fake_" + strings.ToLower(c.Namers["private"].Name(t)),
|
OptionalName: "fake_" + strings.ToLower(c.Namers["private"].Name(t)),
|
||||||
},
|
},
|
||||||
outputPackage: outputPackagePath,
|
outputPackage: outputPackagePath,
|
||||||
group: group,
|
group: gv.Group,
|
||||||
typeToMatch: t,
|
typeToMatch: t,
|
||||||
imports: generator.NewImportTracker(),
|
imports: generator.NewImportTracker(),
|
||||||
})
|
})
|
||||||
@@ -59,11 +59,11 @@ func PackageForGroup(group string, version string, typeList []*types.Type, packa
|
|||||||
|
|
||||||
generators = append(generators, &genFakeForGroup{
|
generators = append(generators, &genFakeForGroup{
|
||||||
DefaultGen: generator.DefaultGen{
|
DefaultGen: generator.DefaultGen{
|
||||||
OptionalName: "fake_" + group + "_client",
|
OptionalName: "fake_" + gv.Group + "_client",
|
||||||
},
|
},
|
||||||
outputPackage: outputPackagePath,
|
outputPackage: outputPackagePath,
|
||||||
realClientPath: realClientPath,
|
realClientPath: realClientPath,
|
||||||
group: group,
|
group: gv.Group,
|
||||||
types: typeList,
|
types: typeList,
|
||||||
imports: generator.NewImportTracker(),
|
imports: generator.NewImportTracker(),
|
||||||
})
|
})
|
||||||
|
@@ -16,6 +16,8 @@ limitations under the License.
|
|||||||
|
|
||||||
package normalization
|
package normalization
|
||||||
|
|
||||||
|
import "k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
|
|
||||||
func Group(group string) string {
|
func Group(group string) string {
|
||||||
if group == "api" {
|
if group == "api" {
|
||||||
return "core"
|
return "core"
|
||||||
@@ -29,3 +31,7 @@ func Version(version string) string {
|
|||||||
}
|
}
|
||||||
return version
|
return version
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GroupVersion(gv unversioned.GroupVersion) unversioned.GroupVersion {
|
||||||
|
return unversioned.GroupVersion{Group(gv.Group), Version(gv.Version)}
|
||||||
|
}
|
||||||
|
@@ -35,6 +35,7 @@ var (
|
|||||||
clientsetName = flag.StringP("clientset-name", "n", "internalclientset", "the name of the generated clientset package.")
|
clientsetName = flag.StringP("clientset-name", "n", "internalclientset", "the name of the generated clientset package.")
|
||||||
clientsetPath = flag.String("clientset-path", "k8s.io/kubernetes/pkg/client/clientset_generated/", "the generated clientset will be output to <clientset-path>/<clientset-name>. Default to \"k8s.io/kubernetes/pkg/client/clientset_generated/\"")
|
clientsetPath = flag.String("clientset-path", "k8s.io/kubernetes/pkg/client/clientset_generated/", "the generated clientset will be output to <clientset-path>/<clientset-name>. Default to \"k8s.io/kubernetes/pkg/client/clientset_generated/\"")
|
||||||
clientsetOnly = flag.Bool("clientset-only", false, "when set, client-gen only generates the clientset shell, without generating the individual typed clients")
|
clientsetOnly = flag.Bool("clientset-only", false, "when set, client-gen only generates the clientset shell, without generating the individual typed clients")
|
||||||
|
fakeClient = flag.Bool("fake-clientset", true, "when set, client-gen will generate the fake clientset that can be used in tests")
|
||||||
)
|
)
|
||||||
|
|
||||||
func versionToPath(group string, version string) (path string) {
|
func versionToPath(group string, version string) (path string) {
|
||||||
@@ -48,24 +49,25 @@ func versionToPath(group string, version string) (path string) {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func parseInputVersions() ([]string, []unversioned.GroupVersion, error) {
|
func parseInputVersions() (paths []string, groupVersions []unversioned.GroupVersion, gvToPath map[unversioned.GroupVersion]string, err error) {
|
||||||
var visitedGroups = make(map[string]struct{})
|
var visitedGroups = make(map[string]struct{})
|
||||||
var groupVersions []unversioned.GroupVersion
|
gvToPath = make(map[unversioned.GroupVersion]string)
|
||||||
var paths []string
|
|
||||||
for _, gvString := range *inputVersions {
|
for _, gvString := range *inputVersions {
|
||||||
gv, err := unversioned.ParseGroupVersion(gvString)
|
gv, err := unversioned.ParseGroupVersion(gvString)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, err
|
return nil, nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if _, found := visitedGroups[gv.Group]; found {
|
if _, found := visitedGroups[gv.Group]; found {
|
||||||
return nil, nil, fmt.Errorf("group %q appeared more than once in the input. At most one version is allowed for each group.", gv.Group)
|
return nil, nil, nil, fmt.Errorf("group %q appeared more than once in the input. At most one version is allowed for each group.", gv.Group)
|
||||||
}
|
}
|
||||||
visitedGroups[gv.Group] = struct{}{}
|
visitedGroups[gv.Group] = struct{}{}
|
||||||
groupVersions = append(groupVersions, gv)
|
groupVersions = append(groupVersions, gv)
|
||||||
paths = append(paths, versionToPath(gv.Group, gv.Version))
|
path := versionToPath(gv.Group, gv.Version)
|
||||||
|
paths = append(paths, path)
|
||||||
|
gvToPath[gv] = path
|
||||||
}
|
}
|
||||||
return paths, groupVersions, nil
|
return paths, groupVersions, gvToPath, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
@@ -88,13 +90,16 @@ func main() {
|
|||||||
arguments.OutputPackagePath = "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/testoutput"
|
arguments.OutputPackagePath = "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/testoutput"
|
||||||
arguments.CustomArgs = generators.ClientGenArgs{
|
arguments.CustomArgs = generators.ClientGenArgs{
|
||||||
[]unversioned.GroupVersion{{"testgroup", ""}},
|
[]unversioned.GroupVersion{{"testgroup", ""}},
|
||||||
|
map[unversioned.GroupVersion]string{
|
||||||
|
unversioned.GroupVersion{"testgroup", ""}: "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/testdata/apis/testgroup",
|
||||||
|
},
|
||||||
"test_internalclientset",
|
"test_internalclientset",
|
||||||
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/testoutput/clientset_generated/",
|
"k8s.io/kubernetes/cmd/libs/go2idl/client-gen/testoutput/clientset_generated/",
|
||||||
false,
|
false,
|
||||||
false,
|
false,
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
inputPath, groupVersions, err := parseInputVersions()
|
inputPath, groupVersions, gvToPath, err := parseInputVersions()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
glog.Fatalf("Error: %v", err)
|
glog.Fatalf("Error: %v", err)
|
||||||
}
|
}
|
||||||
@@ -109,10 +114,11 @@ func main() {
|
|||||||
|
|
||||||
arguments.CustomArgs = generators.ClientGenArgs{
|
arguments.CustomArgs = generators.ClientGenArgs{
|
||||||
groupVersions,
|
groupVersions,
|
||||||
|
gvToPath,
|
||||||
*clientsetName,
|
*clientsetName,
|
||||||
*clientsetPath,
|
*clientsetPath,
|
||||||
*clientsetOnly,
|
*clientsetOnly,
|
||||||
true,
|
*fakeClient,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -377,6 +377,7 @@ www-prefix
|
|||||||
clientset-name
|
clientset-name
|
||||||
clientset-only
|
clientset-only
|
||||||
clientset-path
|
clientset-path
|
||||||
|
fake-clientset
|
||||||
leader-elect
|
leader-elect
|
||||||
leader-elect-lease-duration
|
leader-elect-lease-duration
|
||||||
leader-elect-renew-deadline
|
leader-elect-renew-deadline
|
||||||
|
@@ -325,6 +325,8 @@ type PersistentVolumeSource struct {
|
|||||||
AzureFile *AzureFileVolumeSource `json:"azureFile,omitempty"`
|
AzureFile *AzureFileVolumeSource `json:"azureFile,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true,nonNamespaced=true
|
||||||
|
|
||||||
// PersistentVolume (PV) is a storage resource provisioned by an administrator.
|
// PersistentVolume (PV) is a storage resource provisioned by an administrator.
|
||||||
// It is analogous to a node.
|
// It is analogous to a node.
|
||||||
// More info: http://releases.k8s.io/HEAD/docs/user-guide/persistent-volumes.md
|
// More info: http://releases.k8s.io/HEAD/docs/user-guide/persistent-volumes.md
|
||||||
@@ -1539,6 +1541,8 @@ type PodStatusResult struct {
|
|||||||
Status PodStatus `json:"status,omitempty"`
|
Status PodStatus `json:"status,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Pod is a collection of containers that can run on a host. This resource is created
|
// Pod is a collection of containers that can run on a host. This resource is created
|
||||||
// by clients and scheduled onto hosts.
|
// by clients and scheduled onto hosts.
|
||||||
type Pod struct {
|
type Pod struct {
|
||||||
@@ -1582,6 +1586,8 @@ type PodTemplateSpec struct {
|
|||||||
Spec PodSpec `json:"spec,omitempty"`
|
Spec PodSpec `json:"spec,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// PodTemplate describes a template for creating copies of a predefined pod.
|
// PodTemplate describes a template for creating copies of a predefined pod.
|
||||||
type PodTemplate struct {
|
type PodTemplate struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -1642,6 +1648,8 @@ type ReplicationControllerStatus struct {
|
|||||||
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
|
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// ReplicationController represents the configuration of a replication controller.
|
// ReplicationController represents the configuration of a replication controller.
|
||||||
type ReplicationController struct {
|
type ReplicationController struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -1819,6 +1827,8 @@ type ServicePort struct {
|
|||||||
NodePort int32 `json:"nodePort,omitempty"`
|
NodePort int32 `json:"nodePort,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Service is a named abstraction of software service (for example, mysql) consisting of local port
|
// Service is a named abstraction of software service (for example, mysql) consisting of local port
|
||||||
// (for example 3306) that the proxy listens on, and the selector that determines which pods
|
// (for example 3306) that the proxy listens on, and the selector that determines which pods
|
||||||
// will answer requests sent through the proxy.
|
// will answer requests sent through the proxy.
|
||||||
@@ -1856,6 +1866,8 @@ type ServiceList struct {
|
|||||||
Items []Service `json:"items"`
|
Items []Service `json:"items"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// ServiceAccount binds together:
|
// ServiceAccount binds together:
|
||||||
// * a name, understood by users, and perhaps by peripheral systems, for an identity
|
// * a name, understood by users, and perhaps by peripheral systems, for an identity
|
||||||
// * a principal that can be authenticated and authorized
|
// * a principal that can be authenticated and authorized
|
||||||
@@ -1889,6 +1901,8 @@ type ServiceAccountList struct {
|
|||||||
Items []ServiceAccount `json:"items"`
|
Items []ServiceAccount `json:"items"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Endpoints is a collection of endpoints that implement the actual service. Example:
|
// Endpoints is a collection of endpoints that implement the actual service. Example:
|
||||||
// Name: "mysvc",
|
// Name: "mysvc",
|
||||||
// Subsets: [
|
// Subsets: [
|
||||||
@@ -2133,6 +2147,8 @@ const (
|
|||||||
// ResourceList is a set of (resource name, quantity) pairs.
|
// ResourceList is a set of (resource name, quantity) pairs.
|
||||||
type ResourceList map[ResourceName]resource.Quantity
|
type ResourceList map[ResourceName]resource.Quantity
|
||||||
|
|
||||||
|
// +genclient=true,nonNamespaced=true
|
||||||
|
|
||||||
// Node is a worker node in Kubernetes, formerly known as minion.
|
// Node is a worker node in Kubernetes, formerly known as minion.
|
||||||
// Each node will have a unique identifier in the cache (i.e. in etcd).
|
// Each node will have a unique identifier in the cache (i.e. in etcd).
|
||||||
type Node struct {
|
type Node struct {
|
||||||
@@ -2194,6 +2210,8 @@ const (
|
|||||||
NamespaceTerminating NamespacePhase = "Terminating"
|
NamespaceTerminating NamespacePhase = "Terminating"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// +genclient=true,nonNamespaced=true
|
||||||
|
|
||||||
// Namespace provides a scope for Names.
|
// Namespace provides a scope for Names.
|
||||||
// Use of multiple namespaces is optional.
|
// Use of multiple namespaces is optional.
|
||||||
type Namespace struct {
|
type Namespace struct {
|
||||||
@@ -2440,6 +2458,8 @@ const (
|
|||||||
EventTypeWarning string = "Warning"
|
EventTypeWarning string = "Warning"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Event is a report of an event somewhere in the cluster.
|
// Event is a report of an event somewhere in the cluster.
|
||||||
// TODO: Decide whether to store these separately or with the object they apply to.
|
// TODO: Decide whether to store these separately or with the object they apply to.
|
||||||
type Event struct {
|
type Event struct {
|
||||||
@@ -2530,6 +2550,8 @@ type LimitRangeSpec struct {
|
|||||||
Limits []LimitRangeItem `json:"limits"`
|
Limits []LimitRangeItem `json:"limits"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// LimitRange sets resource usage limits for each kind of resource in a Namespace.
|
// LimitRange sets resource usage limits for each kind of resource in a Namespace.
|
||||||
type LimitRange struct {
|
type LimitRange struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -2586,6 +2608,8 @@ type ResourceQuotaStatus struct {
|
|||||||
Used ResourceList `json:"used,omitempty"`
|
Used ResourceList `json:"used,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// ResourceQuota sets aggregate quota restrictions enforced per namespace
|
// ResourceQuota sets aggregate quota restrictions enforced per namespace
|
||||||
type ResourceQuota struct {
|
type ResourceQuota struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -2614,6 +2638,8 @@ type ResourceQuotaList struct {
|
|||||||
Items []ResourceQuota `json:"items"`
|
Items []ResourceQuota `json:"items"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Secret holds secret data of a certain type. The total bytes of the values in
|
// Secret holds secret data of a certain type. The total bytes of the values in
|
||||||
// the Data field must be less than MaxSecretSize bytes.
|
// the Data field must be less than MaxSecretSize bytes.
|
||||||
type Secret struct {
|
type Secret struct {
|
||||||
@@ -2697,6 +2723,8 @@ type SecretList struct {
|
|||||||
Items []Secret `json:"items"`
|
Items []Secret `json:"items"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// ConfigMap holds configuration data for pods to consume.
|
// ConfigMap holds configuration data for pods to consume.
|
||||||
type ConfigMap struct {
|
type ConfigMap struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -2744,6 +2772,8 @@ type ComponentCondition struct {
|
|||||||
Error string `json:"error,omitempty"`
|
Error string `json:"error,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true,nonNamespaced=true
|
||||||
|
|
||||||
// ComponentStatus (and ComponentStatusList) holds the cluster validation info.
|
// ComponentStatus (and ComponentStatusList) holds the cluster validation info.
|
||||||
type ComponentStatus struct {
|
type ComponentStatus struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
|
@@ -38,6 +38,8 @@ type ScaleStatus struct {
|
|||||||
Selector map[string]string `json:"selector,omitempty"`
|
Selector map[string]string `json:"selector,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true,noMethods=true
|
||||||
|
|
||||||
// represents a scaling request for a resource.
|
// represents a scaling request for a resource.
|
||||||
type Scale struct {
|
type Scale struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -131,6 +133,8 @@ type HorizontalPodAutoscalerStatus struct {
|
|||||||
CurrentCPUUtilizationPercentage *int32 `json:"currentCPUUtilizationPercentage,omitempty"`
|
CurrentCPUUtilizationPercentage *int32 `json:"currentCPUUtilizationPercentage,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// configuration of a horizontal pod autoscaler.
|
// configuration of a horizontal pod autoscaler.
|
||||||
type HorizontalPodAutoscaler struct {
|
type HorizontalPodAutoscaler struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -154,6 +158,8 @@ type HorizontalPodAutoscalerList struct {
|
|||||||
Items []HorizontalPodAutoscaler `json:"items"`
|
Items []HorizontalPodAutoscaler `json:"items"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// A ThirdPartyResource is a generic representation of a resource, it is used by add-ons and plugins to add new resource
|
// A ThirdPartyResource is a generic representation of a resource, it is used by add-ons and plugins to add new resource
|
||||||
// types to the API. It consists of one or more Versions of the api.
|
// types to the API. It consists of one or more Versions of the api.
|
||||||
type ThirdPartyResource struct {
|
type ThirdPartyResource struct {
|
||||||
@@ -199,6 +205,8 @@ type ThirdPartyResourceData struct {
|
|||||||
Data []byte `json:"data,omitempty"`
|
Data []byte `json:"data,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Deployment enables declarative updates for Pods and ReplicaSets.
|
// Deployment enables declarative updates for Pods and ReplicaSets.
|
||||||
type Deployment struct {
|
type Deployment struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -439,6 +447,8 @@ type DaemonSetStatus struct {
|
|||||||
DesiredNumberScheduled int32 `json:"desiredNumberScheduled"`
|
DesiredNumberScheduled int32 `json:"desiredNumberScheduled"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// DaemonSet represents the configuration of a daemon set.
|
// DaemonSet represents the configuration of a daemon set.
|
||||||
type DaemonSet struct {
|
type DaemonSet struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -480,6 +490,8 @@ type ThirdPartyResourceDataList struct {
|
|||||||
Items []ThirdPartyResourceData `json:"items"`
|
Items []ThirdPartyResourceData `json:"items"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Job represents the configuration of a single job.
|
// Job represents the configuration of a single job.
|
||||||
type Job struct {
|
type Job struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
@@ -591,6 +603,8 @@ type JobCondition struct {
|
|||||||
Message string `json:"message,omitempty"`
|
Message string `json:"message,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// Ingress is a collection of rules that allow inbound connections to reach the
|
// Ingress is a collection of rules that allow inbound connections to reach the
|
||||||
// endpoints defined by a backend. An Ingress can be configured to give services
|
// endpoints defined by a backend. An Ingress can be configured to give services
|
||||||
// externally-reachable urls, load balance traffic, terminate SSL, offer name
|
// externally-reachable urls, load balance traffic, terminate SSL, offer name
|
||||||
@@ -867,6 +881,8 @@ const (
|
|||||||
LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist"
|
LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
// +genclient=true
|
||||||
|
|
||||||
// ReplicaSet represents the configuration of a ReplicaSet.
|
// ReplicaSet represents the configuration of a ReplicaSet.
|
||||||
type ReplicaSet struct {
|
type ReplicaSet struct {
|
||||||
unversioned.TypeMeta `json:",inline"`
|
unversioned.TypeMeta `json:",inline"`
|
||||||
|
94
pkg/client/clientset_generated/release_1_2/clientset.go
Normal file
94
pkg/client/clientset_generated/release_1_2/clientset.go
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package release_1_2
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/golang/glog"
|
||||||
|
core_v1 "k8s.io/kubernetes/pkg/client/typed/generated/core/v1"
|
||||||
|
extensions_v1beta1 "k8s.io/kubernetes/pkg/client/typed/generated/extensions/v1beta1"
|
||||||
|
unversioned "k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Interface interface {
|
||||||
|
Discovery() unversioned.DiscoveryInterface
|
||||||
|
Core() core_v1.CoreInterface
|
||||||
|
Extensions() extensions_v1beta1.ExtensionsInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// Clientset contains the clients for groups. Each group has exactly one
|
||||||
|
// version included in a Clientset.
|
||||||
|
type Clientset struct {
|
||||||
|
*unversioned.DiscoveryClient
|
||||||
|
*core_v1.CoreClient
|
||||||
|
*extensions_v1beta1.ExtensionsClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// Core retrieves the CoreClient
|
||||||
|
func (c *Clientset) Core() core_v1.CoreInterface {
|
||||||
|
return c.CoreClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// Extensions retrieves the ExtensionsClient
|
||||||
|
func (c *Clientset) Extensions() extensions_v1beta1.ExtensionsInterface {
|
||||||
|
return c.ExtensionsClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// Discovery retrieves the DiscoveryClient
|
||||||
|
func (c *Clientset) Discovery() unversioned.DiscoveryInterface {
|
||||||
|
return c.DiscoveryClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewForConfig creates a new Clientset for the given config.
|
||||||
|
func NewForConfig(c *unversioned.Config) (*Clientset, error) {
|
||||||
|
var clientset Clientset
|
||||||
|
var err error
|
||||||
|
clientset.CoreClient, err = core_v1.NewForConfig(c)
|
||||||
|
if err != nil {
|
||||||
|
return &clientset, err
|
||||||
|
}
|
||||||
|
clientset.ExtensionsClient, err = extensions_v1beta1.NewForConfig(c)
|
||||||
|
if err != nil {
|
||||||
|
return &clientset, err
|
||||||
|
}
|
||||||
|
|
||||||
|
clientset.DiscoveryClient, err = unversioned.NewDiscoveryClientForConfig(c)
|
||||||
|
if err != nil {
|
||||||
|
glog.Errorf("failed to create the DiscoveryClient: %v", err)
|
||||||
|
}
|
||||||
|
return &clientset, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewForConfigOrDie creates a new Clientset for the given config and
|
||||||
|
// panics if there is an error in the config.
|
||||||
|
func NewForConfigOrDie(c *unversioned.Config) *Clientset {
|
||||||
|
var clientset Clientset
|
||||||
|
clientset.CoreClient = core_v1.NewForConfigOrDie(c)
|
||||||
|
clientset.ExtensionsClient = extensions_v1beta1.NewForConfigOrDie(c)
|
||||||
|
|
||||||
|
clientset.DiscoveryClient = unversioned.NewDiscoveryClientForConfigOrDie(c)
|
||||||
|
return &clientset
|
||||||
|
}
|
||||||
|
|
||||||
|
// New creates a new Clientset for the given RESTClient.
|
||||||
|
func New(c *unversioned.RESTClient) *Clientset {
|
||||||
|
var clientset Clientset
|
||||||
|
clientset.CoreClient = core_v1.New(c)
|
||||||
|
clientset.ExtensionsClient = extensions_v1beta1.New(c)
|
||||||
|
|
||||||
|
clientset.DiscoveryClient = unversioned.NewDiscoveryClient(c)
|
||||||
|
return &clientset
|
||||||
|
}
|
@@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package release_1_2
|
||||||
|
|
||||||
|
import (
|
||||||
|
core_v1 "k8s.io/kubernetes/pkg/client/typed/generated/core/v1"
|
||||||
|
extensions_v1beta1 "k8s.io/kubernetes/pkg/client/typed/generated/extensions/v1beta1"
|
||||||
|
"k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
|
)
|
||||||
|
|
||||||
|
// FromUnversionedClient adapts a pkg/client/unversioned#Client to a Clientset.
|
||||||
|
// This function is temporary. We will remove it when everyone has moved to using
|
||||||
|
// Clientset. New code should NOT use this function.
|
||||||
|
func FromUnversionedClient(c *unversioned.Client) *Clientset {
|
||||||
|
var clientset Clientset
|
||||||
|
if c != nil {
|
||||||
|
clientset.CoreClient = core_v1.New(c.RESTClient)
|
||||||
|
} else {
|
||||||
|
clientset.CoreClient = core_v1.New(nil)
|
||||||
|
}
|
||||||
|
if c != nil && c.ExtensionsClient != nil {
|
||||||
|
clientset.ExtensionsClient = extensions_v1beta1.New(c.ExtensionsClient.RESTClient)
|
||||||
|
} else {
|
||||||
|
clientset.ExtensionsClient = extensions_v1beta1.New(nil)
|
||||||
|
}
|
||||||
|
|
||||||
|
return &clientset
|
||||||
|
}
|
127
pkg/client/typed/generated/core/v1/componentstatus.go
Normal file
127
pkg/client/typed/generated/core/v1/componentstatus.go
Normal file
@@ -0,0 +1,127 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ComponentStatusesGetter has a method to return a ComponentStatusInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ComponentStatusesGetter interface {
|
||||||
|
ComponentStatuses() ComponentStatusInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ComponentStatusInterface has methods to work with ComponentStatus resources.
|
||||||
|
type ComponentStatusInterface interface {
|
||||||
|
Create(*v1.ComponentStatus) (*v1.ComponentStatus, error)
|
||||||
|
Update(*v1.ComponentStatus) (*v1.ComponentStatus, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.ComponentStatus, error)
|
||||||
|
List(opts api.ListOptions) (*v1.ComponentStatusList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ComponentStatusExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// componentStatuses implements ComponentStatusInterface
|
||||||
|
type componentStatuses struct {
|
||||||
|
client *CoreClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// newComponentStatuses returns a ComponentStatuses
|
||||||
|
func newComponentStatuses(c *CoreClient) *componentStatuses {
|
||||||
|
return &componentStatuses{
|
||||||
|
client: c,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a componentStatus and creates it. Returns the server's representation of the componentStatus, and an error, if there is any.
|
||||||
|
func (c *componentStatuses) Create(componentStatus *v1.ComponentStatus) (result *v1.ComponentStatus, err error) {
|
||||||
|
result = &v1.ComponentStatus{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Resource("componentstatuses").
|
||||||
|
Body(componentStatus).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a componentStatus and updates it. Returns the server's representation of the componentStatus, and an error, if there is any.
|
||||||
|
func (c *componentStatuses) Update(componentStatus *v1.ComponentStatus) (result *v1.ComponentStatus, err error) {
|
||||||
|
result = &v1.ComponentStatus{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("componentstatuses").
|
||||||
|
Name(componentStatus.Name).
|
||||||
|
Body(componentStatus).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the componentStatus and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *componentStatuses) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("componentstatuses").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *componentStatuses) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("componentstatuses").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the componentStatus, and returns the corresponding componentStatus object, and an error if there is any.
|
||||||
|
func (c *componentStatuses) Get(name string) (result *v1.ComponentStatus, err error) {
|
||||||
|
result = &v1.ComponentStatus{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("componentstatuses").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ComponentStatuses that match those selectors.
|
||||||
|
func (c *componentStatuses) List(opts api.ListOptions) (result *v1.ComponentStatusList, err error) {
|
||||||
|
result = &v1.ComponentStatusList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("componentstatuses").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested componentStatuses.
|
||||||
|
func (c *componentStatuses) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Resource("componentstatuses").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
136
pkg/client/typed/generated/core/v1/configmap.go
Normal file
136
pkg/client/typed/generated/core/v1/configmap.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ConfigMapsGetter has a method to return a ConfigMapInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ConfigMapsGetter interface {
|
||||||
|
ConfigMaps(namespace string) ConfigMapInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ConfigMapInterface has methods to work with ConfigMap resources.
|
||||||
|
type ConfigMapInterface interface {
|
||||||
|
Create(*v1.ConfigMap) (*v1.ConfigMap, error)
|
||||||
|
Update(*v1.ConfigMap) (*v1.ConfigMap, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.ConfigMap, error)
|
||||||
|
List(opts api.ListOptions) (*v1.ConfigMapList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ConfigMapExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// configMaps implements ConfigMapInterface
|
||||||
|
type configMaps struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newConfigMaps returns a ConfigMaps
|
||||||
|
func newConfigMaps(c *CoreClient, namespace string) *configMaps {
|
||||||
|
return &configMaps{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a configMap and creates it. Returns the server's representation of the configMap, and an error, if there is any.
|
||||||
|
func (c *configMaps) Create(configMap *v1.ConfigMap) (result *v1.ConfigMap, err error) {
|
||||||
|
result = &v1.ConfigMap{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
Body(configMap).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a configMap and updates it. Returns the server's representation of the configMap, and an error, if there is any.
|
||||||
|
func (c *configMaps) Update(configMap *v1.ConfigMap) (result *v1.ConfigMap, err error) {
|
||||||
|
result = &v1.ConfigMap{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
Name(configMap.Name).
|
||||||
|
Body(configMap).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the configMap and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *configMaps) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *configMaps) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the configMap, and returns the corresponding configMap object, and an error if there is any.
|
||||||
|
func (c *configMaps) Get(name string) (result *v1.ConfigMap, err error) {
|
||||||
|
result = &v1.ConfigMap{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ConfigMaps that match those selectors.
|
||||||
|
func (c *configMaps) List(opts api.ListOptions) (result *v1.ConfigMapList, err error) {
|
||||||
|
result = &v1.ConfigMapList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested configMaps.
|
||||||
|
func (c *configMaps) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("configmaps").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
160
pkg/client/typed/generated/core/v1/core_client.go
Normal file
160
pkg/client/typed/generated/core/v1/core_client.go
Normal file
@@ -0,0 +1,160 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
registered "k8s.io/kubernetes/pkg/apimachinery/registered"
|
||||||
|
unversioned "k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
|
)
|
||||||
|
|
||||||
|
type CoreInterface interface {
|
||||||
|
ComponentStatusesGetter
|
||||||
|
ConfigMapsGetter
|
||||||
|
EndpointsGetter
|
||||||
|
EventsGetter
|
||||||
|
LimitRangesGetter
|
||||||
|
NamespacesGetter
|
||||||
|
NodesGetter
|
||||||
|
PersistentVolumesGetter
|
||||||
|
PodsGetter
|
||||||
|
PodTemplatesGetter
|
||||||
|
ReplicationControllersGetter
|
||||||
|
ResourceQuotasGetter
|
||||||
|
SecretsGetter
|
||||||
|
ServicesGetter
|
||||||
|
ServiceAccountsGetter
|
||||||
|
}
|
||||||
|
|
||||||
|
// CoreClient is used to interact with features provided by the Core group.
|
||||||
|
type CoreClient struct {
|
||||||
|
*unversioned.RESTClient
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) ComponentStatuses() ComponentStatusInterface {
|
||||||
|
return newComponentStatuses(c)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) ConfigMaps(namespace string) ConfigMapInterface {
|
||||||
|
return newConfigMaps(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Endpoints(namespace string) EndpointsInterface {
|
||||||
|
return newEndpoints(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Events(namespace string) EventInterface {
|
||||||
|
return newEvents(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) LimitRanges(namespace string) LimitRangeInterface {
|
||||||
|
return newLimitRanges(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Namespaces() NamespaceInterface {
|
||||||
|
return newNamespaces(c)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Nodes() NodeInterface {
|
||||||
|
return newNodes(c)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) PersistentVolumes() PersistentVolumeInterface {
|
||||||
|
return newPersistentVolumes(c)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Pods(namespace string) PodInterface {
|
||||||
|
return newPods(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) PodTemplates(namespace string) PodTemplateInterface {
|
||||||
|
return newPodTemplates(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) ReplicationControllers(namespace string) ReplicationControllerInterface {
|
||||||
|
return newReplicationControllers(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) ResourceQuotas(namespace string) ResourceQuotaInterface {
|
||||||
|
return newResourceQuotas(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Secrets(namespace string) SecretInterface {
|
||||||
|
return newSecrets(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) Services(namespace string) ServiceInterface {
|
||||||
|
return newServices(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CoreClient) ServiceAccounts(namespace string) ServiceAccountInterface {
|
||||||
|
return newServiceAccounts(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewForConfig creates a new CoreClient for the given config.
|
||||||
|
func NewForConfig(c *unversioned.Config) (*CoreClient, error) {
|
||||||
|
config := *c
|
||||||
|
if err := setConfigDefaults(&config); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
client, err := unversioned.RESTClientFor(&config)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &CoreClient{client}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewForConfigOrDie creates a new CoreClient for the given config and
|
||||||
|
// panics if there is an error in the config.
|
||||||
|
func NewForConfigOrDie(c *unversioned.Config) *CoreClient {
|
||||||
|
client, err := NewForConfig(c)
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
return client
|
||||||
|
}
|
||||||
|
|
||||||
|
// New creates a new CoreClient for the given RESTClient.
|
||||||
|
func New(c *unversioned.RESTClient) *CoreClient {
|
||||||
|
return &CoreClient{c}
|
||||||
|
}
|
||||||
|
|
||||||
|
func setConfigDefaults(config *unversioned.Config) error {
|
||||||
|
// if core group is not registered, return an error
|
||||||
|
g, err := registered.Group("")
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
config.APIPath = "/api"
|
||||||
|
if config.UserAgent == "" {
|
||||||
|
config.UserAgent = unversioned.DefaultKubernetesUserAgent()
|
||||||
|
}
|
||||||
|
// TODO: Unconditionally set the config.Version, until we fix the config.
|
||||||
|
//if config.Version == "" {
|
||||||
|
copyGroupVersion := g.GroupVersion
|
||||||
|
config.GroupVersion = ©GroupVersion
|
||||||
|
//}
|
||||||
|
|
||||||
|
config.Codec = api.Codecs.LegacyCodec(*config.GroupVersion)
|
||||||
|
if config.QPS == 0 {
|
||||||
|
config.QPS = 5
|
||||||
|
}
|
||||||
|
if config.Burst == 0 {
|
||||||
|
config.Burst = 10
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
18
pkg/client/typed/generated/core/v1/doc.go
Normal file
18
pkg/client/typed/generated/core/v1/doc.go
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Package unversioned has the automatically generated clients for unversioned resources.
|
||||||
|
package v1
|
136
pkg/client/typed/generated/core/v1/endpoints.go
Normal file
136
pkg/client/typed/generated/core/v1/endpoints.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// EndpointsGetter has a method to return a EndpointsInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type EndpointsGetter interface {
|
||||||
|
Endpoints(namespace string) EndpointsInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// EndpointsInterface has methods to work with Endpoints resources.
|
||||||
|
type EndpointsInterface interface {
|
||||||
|
Create(*v1.Endpoints) (*v1.Endpoints, error)
|
||||||
|
Update(*v1.Endpoints) (*v1.Endpoints, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Endpoints, error)
|
||||||
|
List(opts api.ListOptions) (*v1.EndpointsList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
EndpointsExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// endpoints implements EndpointsInterface
|
||||||
|
type endpoints struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newEndpoints returns a Endpoints
|
||||||
|
func newEndpoints(c *CoreClient, namespace string) *endpoints {
|
||||||
|
return &endpoints{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a endpoints and creates it. Returns the server's representation of the endpoints, and an error, if there is any.
|
||||||
|
func (c *endpoints) Create(endpoints *v1.Endpoints) (result *v1.Endpoints, err error) {
|
||||||
|
result = &v1.Endpoints{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
Body(endpoints).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a endpoints and updates it. Returns the server's representation of the endpoints, and an error, if there is any.
|
||||||
|
func (c *endpoints) Update(endpoints *v1.Endpoints) (result *v1.Endpoints, err error) {
|
||||||
|
result = &v1.Endpoints{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
Name(endpoints.Name).
|
||||||
|
Body(endpoints).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the endpoints and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *endpoints) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *endpoints) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the endpoints, and returns the corresponding endpoints object, and an error if there is any.
|
||||||
|
func (c *endpoints) Get(name string) (result *v1.Endpoints, err error) {
|
||||||
|
result = &v1.Endpoints{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Endpoints that match those selectors.
|
||||||
|
func (c *endpoints) List(opts api.ListOptions) (result *v1.EndpointsList, err error) {
|
||||||
|
result = &v1.EndpointsList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested endpoints.
|
||||||
|
func (c *endpoints) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("endpoints").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
136
pkg/client/typed/generated/core/v1/event.go
Normal file
136
pkg/client/typed/generated/core/v1/event.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// EventsGetter has a method to return a EventInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type EventsGetter interface {
|
||||||
|
Events(namespace string) EventInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// EventInterface has methods to work with Event resources.
|
||||||
|
type EventInterface interface {
|
||||||
|
Create(*v1.Event) (*v1.Event, error)
|
||||||
|
Update(*v1.Event) (*v1.Event, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Event, error)
|
||||||
|
List(opts api.ListOptions) (*v1.EventList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
EventExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// events implements EventInterface
|
||||||
|
type events struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newEvents returns a Events
|
||||||
|
func newEvents(c *CoreClient, namespace string) *events {
|
||||||
|
return &events{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a event and creates it. Returns the server's representation of the event, and an error, if there is any.
|
||||||
|
func (c *events) Create(event *v1.Event) (result *v1.Event, err error) {
|
||||||
|
result = &v1.Event{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
Body(event).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a event and updates it. Returns the server's representation of the event, and an error, if there is any.
|
||||||
|
func (c *events) Update(event *v1.Event) (result *v1.Event, err error) {
|
||||||
|
result = &v1.Event{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
Name(event.Name).
|
||||||
|
Body(event).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the event and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *events) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *events) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the event, and returns the corresponding event object, and an error if there is any.
|
||||||
|
func (c *events) Get(name string) (result *v1.Event, err error) {
|
||||||
|
result = &v1.Event{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Events that match those selectors.
|
||||||
|
func (c *events) List(opts api.ListOptions) (result *v1.EventList, err error) {
|
||||||
|
result = &v1.EventList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested events.
|
||||||
|
func (c *events) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("events").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
158
pkg/client/typed/generated/core/v1/event_expansion.go
Normal file
158
pkg/client/typed/generated/core/v1/event_expansion.go
Normal file
@@ -0,0 +1,158 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"k8s.io/kubernetes/pkg/api"
|
||||||
|
"k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
"k8s.io/kubernetes/pkg/fields"
|
||||||
|
"k8s.io/kubernetes/pkg/runtime"
|
||||||
|
)
|
||||||
|
|
||||||
|
// The EventExpansion interface allows manually adding extra methods to the EventInterface.
|
||||||
|
type EventExpansion interface {
|
||||||
|
// CreateWithEventNamespace is the same as a Create, except that it sends the request to the event.Namespace.
|
||||||
|
CreateWithEventNamespace(event *v1.Event) (*v1.Event, error)
|
||||||
|
// UpdateWithEventNamespace is the same as a Update, except that it sends the request to the event.Namespace.
|
||||||
|
UpdateWithEventNamespace(event *v1.Event) (*v1.Event, error)
|
||||||
|
Patch(event *v1.Event, data []byte) (*v1.Event, error)
|
||||||
|
// Search finds events about the specified object
|
||||||
|
Search(objOrRef runtime.Object) (*v1.EventList, error)
|
||||||
|
// Returns the appropriate field selector based on the API version being used to communicate with the server.
|
||||||
|
// The returned field selector can be used with List and Watch to filter desired events.
|
||||||
|
GetFieldSelector(involvedObjectName, involvedObjectNamespace, involvedObjectKind, involvedObjectUID *string) fields.Selector
|
||||||
|
}
|
||||||
|
|
||||||
|
// CreateWithEventNamespace makes a new event. Returns the copy of the event the server returns,
|
||||||
|
// or an error. The namespace to create the event within is deduced from the
|
||||||
|
// event; it must either match this event client's namespace, or this event
|
||||||
|
// client must have been created with the "" namespace.
|
||||||
|
func (e *events) CreateWithEventNamespace(event *v1.Event) (*v1.Event, error) {
|
||||||
|
if e.ns != "" && event.Namespace != e.ns {
|
||||||
|
return nil, fmt.Errorf("can't create an event with namespace '%v' in namespace '%v'", event.Namespace, e.ns)
|
||||||
|
}
|
||||||
|
result := &v1.Event{}
|
||||||
|
err := e.client.Post().
|
||||||
|
NamespaceIfScoped(event.Namespace, len(event.Namespace) > 0).
|
||||||
|
Resource("events").
|
||||||
|
Body(event).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return result, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpdateWithEventNamespace modifies an existing event. It returns the copy of the event that the server returns,
|
||||||
|
// or an error. The namespace and key to update the event within is deduced from the event. The
|
||||||
|
// namespace must either match this event client's namespace, or this event client must have been
|
||||||
|
// created with the "" namespace. Update also requires the ResourceVersion to be set in the event
|
||||||
|
// object.
|
||||||
|
func (e *events) UpdateWithEventNamespace(event *v1.Event) (*v1.Event, error) {
|
||||||
|
result := &v1.Event{}
|
||||||
|
err := e.client.Put().
|
||||||
|
NamespaceIfScoped(event.Namespace, len(event.Namespace) > 0).
|
||||||
|
Resource("events").
|
||||||
|
Name(event.Name).
|
||||||
|
Body(event).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return result, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// Patch modifies an existing event. It returns the copy of the event that the server returns, or an
|
||||||
|
// error. The namespace and name of the target event is deduced from the incompleteEvent. The
|
||||||
|
// namespace must either match this event client's namespace, or this event client must have been
|
||||||
|
// created with the "" namespace.
|
||||||
|
func (e *events) Patch(incompleteEvent *v1.Event, data []byte) (*v1.Event, error) {
|
||||||
|
result := &v1.Event{}
|
||||||
|
err := e.client.Patch(api.StrategicMergePatchType).
|
||||||
|
NamespaceIfScoped(incompleteEvent.Namespace, len(incompleteEvent.Namespace) > 0).
|
||||||
|
Resource("events").
|
||||||
|
Name(incompleteEvent.Name).
|
||||||
|
Body(data).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return result, err
|
||||||
|
}
|
||||||
|
|
||||||
|
// Search finds events about the specified object. The namespace of the
|
||||||
|
// object must match this event's client namespace unless the event client
|
||||||
|
// was made with the "" namespace.
|
||||||
|
func (e *events) Search(objOrRef runtime.Object) (*v1.EventList, error) {
|
||||||
|
ref, err := api.GetReference(objOrRef)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if e.ns != "" && ref.Namespace != e.ns {
|
||||||
|
return nil, fmt.Errorf("won't be able to find any events of namespace '%v' in namespace '%v'", ref.Namespace, e.ns)
|
||||||
|
}
|
||||||
|
stringRefKind := string(ref.Kind)
|
||||||
|
var refKind *string
|
||||||
|
if stringRefKind != "" {
|
||||||
|
refKind = &stringRefKind
|
||||||
|
}
|
||||||
|
stringRefUID := string(ref.UID)
|
||||||
|
var refUID *string
|
||||||
|
if stringRefUID != "" {
|
||||||
|
refUID = &stringRefUID
|
||||||
|
}
|
||||||
|
fieldSelector := e.GetFieldSelector(&ref.Name, &ref.Namespace, refKind, refUID)
|
||||||
|
return e.List(api.ListOptions{FieldSelector: fieldSelector})
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns the appropriate field selector based on the API version being used to communicate with the server.
|
||||||
|
// The returned field selector can be used with List and Watch to filter desired events.
|
||||||
|
func (e *events) GetFieldSelector(involvedObjectName, involvedObjectNamespace, involvedObjectKind, involvedObjectUID *string) fields.Selector {
|
||||||
|
apiVersion := e.client.APIVersion().String()
|
||||||
|
field := fields.Set{}
|
||||||
|
if involvedObjectName != nil {
|
||||||
|
field[GetInvolvedObjectNameFieldLabel(apiVersion)] = *involvedObjectName
|
||||||
|
}
|
||||||
|
if involvedObjectNamespace != nil {
|
||||||
|
field["involvedObject.namespace"] = *involvedObjectNamespace
|
||||||
|
}
|
||||||
|
if involvedObjectKind != nil {
|
||||||
|
field["involvedObject.kind"] = *involvedObjectKind
|
||||||
|
}
|
||||||
|
if involvedObjectUID != nil {
|
||||||
|
field["involvedObject.uid"] = *involvedObjectUID
|
||||||
|
}
|
||||||
|
return field.AsSelector()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Returns the appropriate field label to use for name of the involved object as per the given API version.
|
||||||
|
func GetInvolvedObjectNameFieldLabel(version string) string {
|
||||||
|
return "involvedObject.name"
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: This is a temporary arrangement and will be removed once all clients are moved to use the clientset.
|
||||||
|
type EventSinkImpl struct {
|
||||||
|
Interface EventInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
func (e *EventSinkImpl) Create(event *v1.Event) (*v1.Event, error) {
|
||||||
|
return e.Interface.CreateWithEventNamespace(event)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (e *EventSinkImpl) Update(event *v1.Event) (*v1.Event, error) {
|
||||||
|
return e.Interface.UpdateWithEventNamespace(event)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (e *EventSinkImpl) Patch(event *v1.Event, data []byte) (*v1.Event, error) {
|
||||||
|
return e.Interface.Patch(event, data)
|
||||||
|
}
|
41
pkg/client/typed/generated/core/v1/generated_expansion.go
Normal file
41
pkg/client/typed/generated/core/v1/generated_expansion.go
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
type ComponentStatusExpansion interface{}
|
||||||
|
|
||||||
|
type EndpointsExpansion interface{}
|
||||||
|
|
||||||
|
type LimitRangeExpansion interface{}
|
||||||
|
|
||||||
|
type NodeExpansion interface{}
|
||||||
|
|
||||||
|
type PersistentVolumeExpansion interface{}
|
||||||
|
|
||||||
|
type PersistentVolumeClaimExpansion interface{}
|
||||||
|
|
||||||
|
type PodTemplateExpansion interface{}
|
||||||
|
|
||||||
|
type ReplicationControllerExpansion interface{}
|
||||||
|
|
||||||
|
type ResourceQuotaExpansion interface{}
|
||||||
|
|
||||||
|
type SecretExpansion interface{}
|
||||||
|
|
||||||
|
type ServiceAccountExpansion interface{}
|
||||||
|
|
||||||
|
type ConfigMapExpansion interface{}
|
136
pkg/client/typed/generated/core/v1/limitrange.go
Normal file
136
pkg/client/typed/generated/core/v1/limitrange.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// LimitRangesGetter has a method to return a LimitRangeInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type LimitRangesGetter interface {
|
||||||
|
LimitRanges(namespace string) LimitRangeInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// LimitRangeInterface has methods to work with LimitRange resources.
|
||||||
|
type LimitRangeInterface interface {
|
||||||
|
Create(*v1.LimitRange) (*v1.LimitRange, error)
|
||||||
|
Update(*v1.LimitRange) (*v1.LimitRange, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.LimitRange, error)
|
||||||
|
List(opts api.ListOptions) (*v1.LimitRangeList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
LimitRangeExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// limitRanges implements LimitRangeInterface
|
||||||
|
type limitRanges struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newLimitRanges returns a LimitRanges
|
||||||
|
func newLimitRanges(c *CoreClient, namespace string) *limitRanges {
|
||||||
|
return &limitRanges{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a limitRange and creates it. Returns the server's representation of the limitRange, and an error, if there is any.
|
||||||
|
func (c *limitRanges) Create(limitRange *v1.LimitRange) (result *v1.LimitRange, err error) {
|
||||||
|
result = &v1.LimitRange{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
Body(limitRange).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a limitRange and updates it. Returns the server's representation of the limitRange, and an error, if there is any.
|
||||||
|
func (c *limitRanges) Update(limitRange *v1.LimitRange) (result *v1.LimitRange, err error) {
|
||||||
|
result = &v1.LimitRange{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
Name(limitRange.Name).
|
||||||
|
Body(limitRange).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the limitRange and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *limitRanges) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *limitRanges) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the limitRange, and returns the corresponding limitRange object, and an error if there is any.
|
||||||
|
func (c *limitRanges) Get(name string) (result *v1.LimitRange, err error) {
|
||||||
|
result = &v1.LimitRange{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of LimitRanges that match those selectors.
|
||||||
|
func (c *limitRanges) List(opts api.ListOptions) (result *v1.LimitRangeList, err error) {
|
||||||
|
result = &v1.LimitRangeList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested limitRanges.
|
||||||
|
func (c *limitRanges) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("limitranges").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
140
pkg/client/typed/generated/core/v1/namespace.go
Normal file
140
pkg/client/typed/generated/core/v1/namespace.go
Normal file
@@ -0,0 +1,140 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// NamespacesGetter has a method to return a NamespaceInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type NamespacesGetter interface {
|
||||||
|
Namespaces() NamespaceInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// NamespaceInterface has methods to work with Namespace resources.
|
||||||
|
type NamespaceInterface interface {
|
||||||
|
Create(*v1.Namespace) (*v1.Namespace, error)
|
||||||
|
Update(*v1.Namespace) (*v1.Namespace, error)
|
||||||
|
UpdateStatus(*v1.Namespace) (*v1.Namespace, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Namespace, error)
|
||||||
|
List(opts api.ListOptions) (*v1.NamespaceList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
NamespaceExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// namespaces implements NamespaceInterface
|
||||||
|
type namespaces struct {
|
||||||
|
client *CoreClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// newNamespaces returns a Namespaces
|
||||||
|
func newNamespaces(c *CoreClient) *namespaces {
|
||||||
|
return &namespaces{
|
||||||
|
client: c,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a namespace and creates it. Returns the server's representation of the namespace, and an error, if there is any.
|
||||||
|
func (c *namespaces) Create(namespace *v1.Namespace) (result *v1.Namespace, err error) {
|
||||||
|
result = &v1.Namespace{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Resource("namespaces").
|
||||||
|
Body(namespace).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a namespace and updates it. Returns the server's representation of the namespace, and an error, if there is any.
|
||||||
|
func (c *namespaces) Update(namespace *v1.Namespace) (result *v1.Namespace, err error) {
|
||||||
|
result = &v1.Namespace{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("namespaces").
|
||||||
|
Name(namespace.Name).
|
||||||
|
Body(namespace).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *namespaces) UpdateStatus(namespace *v1.Namespace) (result *v1.Namespace, err error) {
|
||||||
|
result = &v1.Namespace{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("namespaces").
|
||||||
|
Name(namespace.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(namespace).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the namespace and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *namespaces) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("namespaces").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *namespaces) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("namespaces").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the namespace, and returns the corresponding namespace object, and an error if there is any.
|
||||||
|
func (c *namespaces) Get(name string) (result *v1.Namespace, err error) {
|
||||||
|
result = &v1.Namespace{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("namespaces").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Namespaces that match those selectors.
|
||||||
|
func (c *namespaces) List(opts api.ListOptions) (result *v1.NamespaceList, err error) {
|
||||||
|
result = &v1.NamespaceList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("namespaces").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested namespaces.
|
||||||
|
func (c *namespaces) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Resource("namespaces").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
31
pkg/client/typed/generated/core/v1/namespace_expansion.go
Normal file
31
pkg/client/typed/generated/core/v1/namespace_expansion.go
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
|
||||||
|
// The NamespaceExpansion interface allows manually adding extra methods to the NamespaceInterface.
|
||||||
|
type NamespaceExpansion interface {
|
||||||
|
Finalize(item *v1.Namespace) (*v1.Namespace, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Finalize takes the representation of a namespace to update. Returns the server's representation of the namespace, and an error, if it occurs.
|
||||||
|
func (c *namespaces) Finalize(namespace *v1.Namespace) (result *v1.Namespace, err error) {
|
||||||
|
result = &v1.Namespace{}
|
||||||
|
err = c.client.Put().Resource("namespaces").Name(namespace.Name).SubResource("finalize").Body(namespace).Do().Into(result)
|
||||||
|
return
|
||||||
|
}
|
140
pkg/client/typed/generated/core/v1/node.go
Normal file
140
pkg/client/typed/generated/core/v1/node.go
Normal file
@@ -0,0 +1,140 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// NodesGetter has a method to return a NodeInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type NodesGetter interface {
|
||||||
|
Nodes() NodeInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// NodeInterface has methods to work with Node resources.
|
||||||
|
type NodeInterface interface {
|
||||||
|
Create(*v1.Node) (*v1.Node, error)
|
||||||
|
Update(*v1.Node) (*v1.Node, error)
|
||||||
|
UpdateStatus(*v1.Node) (*v1.Node, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Node, error)
|
||||||
|
List(opts api.ListOptions) (*v1.NodeList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
NodeExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// nodes implements NodeInterface
|
||||||
|
type nodes struct {
|
||||||
|
client *CoreClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// newNodes returns a Nodes
|
||||||
|
func newNodes(c *CoreClient) *nodes {
|
||||||
|
return &nodes{
|
||||||
|
client: c,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a node and creates it. Returns the server's representation of the node, and an error, if there is any.
|
||||||
|
func (c *nodes) Create(node *v1.Node) (result *v1.Node, err error) {
|
||||||
|
result = &v1.Node{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Resource("nodes").
|
||||||
|
Body(node).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a node and updates it. Returns the server's representation of the node, and an error, if there is any.
|
||||||
|
func (c *nodes) Update(node *v1.Node) (result *v1.Node, err error) {
|
||||||
|
result = &v1.Node{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("nodes").
|
||||||
|
Name(node.Name).
|
||||||
|
Body(node).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *nodes) UpdateStatus(node *v1.Node) (result *v1.Node, err error) {
|
||||||
|
result = &v1.Node{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("nodes").
|
||||||
|
Name(node.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(node).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the node and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *nodes) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("nodes").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *nodes) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("nodes").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the node, and returns the corresponding node object, and an error if there is any.
|
||||||
|
func (c *nodes) Get(name string) (result *v1.Node, err error) {
|
||||||
|
result = &v1.Node{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("nodes").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Nodes that match those selectors.
|
||||||
|
func (c *nodes) List(opts api.ListOptions) (result *v1.NodeList, err error) {
|
||||||
|
result = &v1.NodeList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("nodes").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested nodes.
|
||||||
|
func (c *nodes) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Resource("nodes").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
140
pkg/client/typed/generated/core/v1/persistentvolume.go
Normal file
140
pkg/client/typed/generated/core/v1/persistentvolume.go
Normal file
@@ -0,0 +1,140 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// PersistentVolumesGetter has a method to return a PersistentVolumeInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type PersistentVolumesGetter interface {
|
||||||
|
PersistentVolumes() PersistentVolumeInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// PersistentVolumeInterface has methods to work with PersistentVolume resources.
|
||||||
|
type PersistentVolumeInterface interface {
|
||||||
|
Create(*v1.PersistentVolume) (*v1.PersistentVolume, error)
|
||||||
|
Update(*v1.PersistentVolume) (*v1.PersistentVolume, error)
|
||||||
|
UpdateStatus(*v1.PersistentVolume) (*v1.PersistentVolume, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.PersistentVolume, error)
|
||||||
|
List(opts api.ListOptions) (*v1.PersistentVolumeList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
PersistentVolumeExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// persistentVolumes implements PersistentVolumeInterface
|
||||||
|
type persistentVolumes struct {
|
||||||
|
client *CoreClient
|
||||||
|
}
|
||||||
|
|
||||||
|
// newPersistentVolumes returns a PersistentVolumes
|
||||||
|
func newPersistentVolumes(c *CoreClient) *persistentVolumes {
|
||||||
|
return &persistentVolumes{
|
||||||
|
client: c,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a persistentVolume and creates it. Returns the server's representation of the persistentVolume, and an error, if there is any.
|
||||||
|
func (c *persistentVolumes) Create(persistentVolume *v1.PersistentVolume) (result *v1.PersistentVolume, err error) {
|
||||||
|
result = &v1.PersistentVolume{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
Body(persistentVolume).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a persistentVolume and updates it. Returns the server's representation of the persistentVolume, and an error, if there is any.
|
||||||
|
func (c *persistentVolumes) Update(persistentVolume *v1.PersistentVolume) (result *v1.PersistentVolume, err error) {
|
||||||
|
result = &v1.PersistentVolume{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
Name(persistentVolume.Name).
|
||||||
|
Body(persistentVolume).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *persistentVolumes) UpdateStatus(persistentVolume *v1.PersistentVolume) (result *v1.PersistentVolume, err error) {
|
||||||
|
result = &v1.PersistentVolume{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
Name(persistentVolume.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(persistentVolume).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the persistentVolume and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *persistentVolumes) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *persistentVolumes) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the persistentVolume, and returns the corresponding persistentVolume object, and an error if there is any.
|
||||||
|
func (c *persistentVolumes) Get(name string) (result *v1.PersistentVolume, err error) {
|
||||||
|
result = &v1.PersistentVolume{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of PersistentVolumes that match those selectors.
|
||||||
|
func (c *persistentVolumes) List(opts api.ListOptions) (result *v1.PersistentVolumeList, err error) {
|
||||||
|
result = &v1.PersistentVolumeList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested persistentVolumes.
|
||||||
|
func (c *persistentVolumes) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Resource("persistentvolumes").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/core/v1/pod.go
Normal file
150
pkg/client/typed/generated/core/v1/pod.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// PodsGetter has a method to return a PodInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type PodsGetter interface {
|
||||||
|
Pods(namespace string) PodInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// PodInterface has methods to work with Pod resources.
|
||||||
|
type PodInterface interface {
|
||||||
|
Create(*v1.Pod) (*v1.Pod, error)
|
||||||
|
Update(*v1.Pod) (*v1.Pod, error)
|
||||||
|
UpdateStatus(*v1.Pod) (*v1.Pod, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Pod, error)
|
||||||
|
List(opts api.ListOptions) (*v1.PodList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
PodExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// pods implements PodInterface
|
||||||
|
type pods struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newPods returns a Pods
|
||||||
|
func newPods(c *CoreClient, namespace string) *pods {
|
||||||
|
return &pods{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a pod and creates it. Returns the server's representation of the pod, and an error, if there is any.
|
||||||
|
func (c *pods) Create(pod *v1.Pod) (result *v1.Pod, err error) {
|
||||||
|
result = &v1.Pod{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
Body(pod).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a pod and updates it. Returns the server's representation of the pod, and an error, if there is any.
|
||||||
|
func (c *pods) Update(pod *v1.Pod) (result *v1.Pod, err error) {
|
||||||
|
result = &v1.Pod{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
Name(pod.Name).
|
||||||
|
Body(pod).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *pods) UpdateStatus(pod *v1.Pod) (result *v1.Pod, err error) {
|
||||||
|
result = &v1.Pod{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
Name(pod.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(pod).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the pod and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *pods) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *pods) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the pod, and returns the corresponding pod object, and an error if there is any.
|
||||||
|
func (c *pods) Get(name string) (result *v1.Pod, err error) {
|
||||||
|
result = &v1.Pod{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Pods that match those selectors.
|
||||||
|
func (c *pods) List(opts api.ListOptions) (result *v1.PodList, err error) {
|
||||||
|
result = &v1.PodList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested pods.
|
||||||
|
func (c *pods) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("pods").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
39
pkg/client/typed/generated/core/v1/pod_expansion.go
Normal file
39
pkg/client/typed/generated/core/v1/pod_expansion.go
Normal file
@@ -0,0 +1,39 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
"k8s.io/kubernetes/pkg/api"
|
||||||
|
"k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
unversioned "k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
|
)
|
||||||
|
|
||||||
|
// The PodExpansion interface allows manually adding extra methods to the PodInterface.
|
||||||
|
type PodExpansion interface {
|
||||||
|
Bind(binding *v1.Binding) error
|
||||||
|
GetLogs(name string, opts *v1.PodLogOptions) *unversioned.Request
|
||||||
|
}
|
||||||
|
|
||||||
|
// Bind applies the provided binding to the named pod in the current namespace (binding.Namespace is ignored).
|
||||||
|
func (c *pods) Bind(binding *v1.Binding) error {
|
||||||
|
return c.client.Post().Namespace(c.ns).Resource("pods").Name(binding.Name).SubResource("binding").Body(binding).Do().Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get constructs a request for getting the logs for a pod
|
||||||
|
func (c *pods) GetLogs(name string, opts *v1.PodLogOptions) *unversioned.Request {
|
||||||
|
return c.client.Get().Namespace(c.ns).Name(name).Resource("pods").SubResource("log").VersionedParams(opts, api.ParameterCodec)
|
||||||
|
}
|
136
pkg/client/typed/generated/core/v1/podtemplate.go
Normal file
136
pkg/client/typed/generated/core/v1/podtemplate.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// PodTemplatesGetter has a method to return a PodTemplateInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type PodTemplatesGetter interface {
|
||||||
|
PodTemplates(namespace string) PodTemplateInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// PodTemplateInterface has methods to work with PodTemplate resources.
|
||||||
|
type PodTemplateInterface interface {
|
||||||
|
Create(*v1.PodTemplate) (*v1.PodTemplate, error)
|
||||||
|
Update(*v1.PodTemplate) (*v1.PodTemplate, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.PodTemplate, error)
|
||||||
|
List(opts api.ListOptions) (*v1.PodTemplateList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
PodTemplateExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// podTemplates implements PodTemplateInterface
|
||||||
|
type podTemplates struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newPodTemplates returns a PodTemplates
|
||||||
|
func newPodTemplates(c *CoreClient, namespace string) *podTemplates {
|
||||||
|
return &podTemplates{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a podTemplate and creates it. Returns the server's representation of the podTemplate, and an error, if there is any.
|
||||||
|
func (c *podTemplates) Create(podTemplate *v1.PodTemplate) (result *v1.PodTemplate, err error) {
|
||||||
|
result = &v1.PodTemplate{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
Body(podTemplate).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a podTemplate and updates it. Returns the server's representation of the podTemplate, and an error, if there is any.
|
||||||
|
func (c *podTemplates) Update(podTemplate *v1.PodTemplate) (result *v1.PodTemplate, err error) {
|
||||||
|
result = &v1.PodTemplate{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
Name(podTemplate.Name).
|
||||||
|
Body(podTemplate).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the podTemplate and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *podTemplates) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *podTemplates) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the podTemplate, and returns the corresponding podTemplate object, and an error if there is any.
|
||||||
|
func (c *podTemplates) Get(name string) (result *v1.PodTemplate, err error) {
|
||||||
|
result = &v1.PodTemplate{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of PodTemplates that match those selectors.
|
||||||
|
func (c *podTemplates) List(opts api.ListOptions) (result *v1.PodTemplateList, err error) {
|
||||||
|
result = &v1.PodTemplateList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested podTemplates.
|
||||||
|
func (c *podTemplates) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("podtemplates").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/core/v1/replicationcontroller.go
Normal file
150
pkg/client/typed/generated/core/v1/replicationcontroller.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ReplicationControllersGetter has a method to return a ReplicationControllerInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ReplicationControllersGetter interface {
|
||||||
|
ReplicationControllers(namespace string) ReplicationControllerInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ReplicationControllerInterface has methods to work with ReplicationController resources.
|
||||||
|
type ReplicationControllerInterface interface {
|
||||||
|
Create(*v1.ReplicationController) (*v1.ReplicationController, error)
|
||||||
|
Update(*v1.ReplicationController) (*v1.ReplicationController, error)
|
||||||
|
UpdateStatus(*v1.ReplicationController) (*v1.ReplicationController, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.ReplicationController, error)
|
||||||
|
List(opts api.ListOptions) (*v1.ReplicationControllerList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ReplicationControllerExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// replicationControllers implements ReplicationControllerInterface
|
||||||
|
type replicationControllers struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newReplicationControllers returns a ReplicationControllers
|
||||||
|
func newReplicationControllers(c *CoreClient, namespace string) *replicationControllers {
|
||||||
|
return &replicationControllers{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a replicationController and creates it. Returns the server's representation of the replicationController, and an error, if there is any.
|
||||||
|
func (c *replicationControllers) Create(replicationController *v1.ReplicationController) (result *v1.ReplicationController, err error) {
|
||||||
|
result = &v1.ReplicationController{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
Body(replicationController).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a replicationController and updates it. Returns the server's representation of the replicationController, and an error, if there is any.
|
||||||
|
func (c *replicationControllers) Update(replicationController *v1.ReplicationController) (result *v1.ReplicationController, err error) {
|
||||||
|
result = &v1.ReplicationController{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
Name(replicationController.Name).
|
||||||
|
Body(replicationController).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *replicationControllers) UpdateStatus(replicationController *v1.ReplicationController) (result *v1.ReplicationController, err error) {
|
||||||
|
result = &v1.ReplicationController{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
Name(replicationController.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(replicationController).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the replicationController and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *replicationControllers) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *replicationControllers) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the replicationController, and returns the corresponding replicationController object, and an error if there is any.
|
||||||
|
func (c *replicationControllers) Get(name string) (result *v1.ReplicationController, err error) {
|
||||||
|
result = &v1.ReplicationController{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ReplicationControllers that match those selectors.
|
||||||
|
func (c *replicationControllers) List(opts api.ListOptions) (result *v1.ReplicationControllerList, err error) {
|
||||||
|
result = &v1.ReplicationControllerList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested replicationControllers.
|
||||||
|
func (c *replicationControllers) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicationcontrollers").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/core/v1/resourcequota.go
Normal file
150
pkg/client/typed/generated/core/v1/resourcequota.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ResourceQuotasGetter has a method to return a ResourceQuotaInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ResourceQuotasGetter interface {
|
||||||
|
ResourceQuotas(namespace string) ResourceQuotaInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ResourceQuotaInterface has methods to work with ResourceQuota resources.
|
||||||
|
type ResourceQuotaInterface interface {
|
||||||
|
Create(*v1.ResourceQuota) (*v1.ResourceQuota, error)
|
||||||
|
Update(*v1.ResourceQuota) (*v1.ResourceQuota, error)
|
||||||
|
UpdateStatus(*v1.ResourceQuota) (*v1.ResourceQuota, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.ResourceQuota, error)
|
||||||
|
List(opts api.ListOptions) (*v1.ResourceQuotaList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ResourceQuotaExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// resourceQuotas implements ResourceQuotaInterface
|
||||||
|
type resourceQuotas struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newResourceQuotas returns a ResourceQuotas
|
||||||
|
func newResourceQuotas(c *CoreClient, namespace string) *resourceQuotas {
|
||||||
|
return &resourceQuotas{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a resourceQuota and creates it. Returns the server's representation of the resourceQuota, and an error, if there is any.
|
||||||
|
func (c *resourceQuotas) Create(resourceQuota *v1.ResourceQuota) (result *v1.ResourceQuota, err error) {
|
||||||
|
result = &v1.ResourceQuota{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
Body(resourceQuota).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a resourceQuota and updates it. Returns the server's representation of the resourceQuota, and an error, if there is any.
|
||||||
|
func (c *resourceQuotas) Update(resourceQuota *v1.ResourceQuota) (result *v1.ResourceQuota, err error) {
|
||||||
|
result = &v1.ResourceQuota{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
Name(resourceQuota.Name).
|
||||||
|
Body(resourceQuota).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *resourceQuotas) UpdateStatus(resourceQuota *v1.ResourceQuota) (result *v1.ResourceQuota, err error) {
|
||||||
|
result = &v1.ResourceQuota{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
Name(resourceQuota.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(resourceQuota).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the resourceQuota and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *resourceQuotas) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *resourceQuotas) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the resourceQuota, and returns the corresponding resourceQuota object, and an error if there is any.
|
||||||
|
func (c *resourceQuotas) Get(name string) (result *v1.ResourceQuota, err error) {
|
||||||
|
result = &v1.ResourceQuota{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ResourceQuotas that match those selectors.
|
||||||
|
func (c *resourceQuotas) List(opts api.ListOptions) (result *v1.ResourceQuotaList, err error) {
|
||||||
|
result = &v1.ResourceQuotaList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested resourceQuotas.
|
||||||
|
func (c *resourceQuotas) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("resourcequotas").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
136
pkg/client/typed/generated/core/v1/secret.go
Normal file
136
pkg/client/typed/generated/core/v1/secret.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// SecretsGetter has a method to return a SecretInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type SecretsGetter interface {
|
||||||
|
Secrets(namespace string) SecretInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// SecretInterface has methods to work with Secret resources.
|
||||||
|
type SecretInterface interface {
|
||||||
|
Create(*v1.Secret) (*v1.Secret, error)
|
||||||
|
Update(*v1.Secret) (*v1.Secret, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Secret, error)
|
||||||
|
List(opts api.ListOptions) (*v1.SecretList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
SecretExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// secrets implements SecretInterface
|
||||||
|
type secrets struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newSecrets returns a Secrets
|
||||||
|
func newSecrets(c *CoreClient, namespace string) *secrets {
|
||||||
|
return &secrets{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a secret and creates it. Returns the server's representation of the secret, and an error, if there is any.
|
||||||
|
func (c *secrets) Create(secret *v1.Secret) (result *v1.Secret, err error) {
|
||||||
|
result = &v1.Secret{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
Body(secret).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a secret and updates it. Returns the server's representation of the secret, and an error, if there is any.
|
||||||
|
func (c *secrets) Update(secret *v1.Secret) (result *v1.Secret, err error) {
|
||||||
|
result = &v1.Secret{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
Name(secret.Name).
|
||||||
|
Body(secret).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the secret and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *secrets) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *secrets) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the secret, and returns the corresponding secret object, and an error if there is any.
|
||||||
|
func (c *secrets) Get(name string) (result *v1.Secret, err error) {
|
||||||
|
result = &v1.Secret{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Secrets that match those selectors.
|
||||||
|
func (c *secrets) List(opts api.ListOptions) (result *v1.SecretList, err error) {
|
||||||
|
result = &v1.SecretList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested secrets.
|
||||||
|
func (c *secrets) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("secrets").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/core/v1/service.go
Normal file
150
pkg/client/typed/generated/core/v1/service.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ServicesGetter has a method to return a ServiceInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ServicesGetter interface {
|
||||||
|
Services(namespace string) ServiceInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ServiceInterface has methods to work with Service resources.
|
||||||
|
type ServiceInterface interface {
|
||||||
|
Create(*v1.Service) (*v1.Service, error)
|
||||||
|
Update(*v1.Service) (*v1.Service, error)
|
||||||
|
UpdateStatus(*v1.Service) (*v1.Service, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.Service, error)
|
||||||
|
List(opts api.ListOptions) (*v1.ServiceList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ServiceExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// services implements ServiceInterface
|
||||||
|
type services struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newServices returns a Services
|
||||||
|
func newServices(c *CoreClient, namespace string) *services {
|
||||||
|
return &services{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a service and creates it. Returns the server's representation of the service, and an error, if there is any.
|
||||||
|
func (c *services) Create(service *v1.Service) (result *v1.Service, err error) {
|
||||||
|
result = &v1.Service{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
Body(service).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a service and updates it. Returns the server's representation of the service, and an error, if there is any.
|
||||||
|
func (c *services) Update(service *v1.Service) (result *v1.Service, err error) {
|
||||||
|
result = &v1.Service{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
Name(service.Name).
|
||||||
|
Body(service).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *services) UpdateStatus(service *v1.Service) (result *v1.Service, err error) {
|
||||||
|
result = &v1.Service{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
Name(service.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(service).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the service and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *services) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *services) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the service, and returns the corresponding service object, and an error if there is any.
|
||||||
|
func (c *services) Get(name string) (result *v1.Service, err error) {
|
||||||
|
result = &v1.Service{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Services that match those selectors.
|
||||||
|
func (c *services) List(opts api.ListOptions) (result *v1.ServiceList, err error) {
|
||||||
|
result = &v1.ServiceList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested services.
|
||||||
|
func (c *services) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
41
pkg/client/typed/generated/core/v1/service_expansion.go
Normal file
41
pkg/client/typed/generated/core/v1/service_expansion.go
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
"k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
|
"k8s.io/kubernetes/pkg/util/net"
|
||||||
|
)
|
||||||
|
|
||||||
|
// The ServiceExpansion interface allows manually adding extra methods to the ServiceInterface.
|
||||||
|
type ServiceExpansion interface {
|
||||||
|
ProxyGet(scheme, name, port, path string, params map[string]string) unversioned.ResponseWrapper
|
||||||
|
}
|
||||||
|
|
||||||
|
// ProxyGet returns a response of the service by calling it through the proxy.
|
||||||
|
func (c *services) ProxyGet(scheme, name, port, path string, params map[string]string) unversioned.ResponseWrapper {
|
||||||
|
request := c.client.Get().
|
||||||
|
Prefix("proxy").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("services").
|
||||||
|
Name(net.JoinSchemeNamePort(scheme, name, port)).
|
||||||
|
Suffix(path)
|
||||||
|
for k, v := range params {
|
||||||
|
request = request.Param(k, v)
|
||||||
|
}
|
||||||
|
return request
|
||||||
|
}
|
136
pkg/client/typed/generated/core/v1/serviceaccount.go
Normal file
136
pkg/client/typed/generated/core/v1/serviceaccount.go
Normal file
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ServiceAccountsGetter has a method to return a ServiceAccountInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ServiceAccountsGetter interface {
|
||||||
|
ServiceAccounts(namespace string) ServiceAccountInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ServiceAccountInterface has methods to work with ServiceAccount resources.
|
||||||
|
type ServiceAccountInterface interface {
|
||||||
|
Create(*v1.ServiceAccount) (*v1.ServiceAccount, error)
|
||||||
|
Update(*v1.ServiceAccount) (*v1.ServiceAccount, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1.ServiceAccount, error)
|
||||||
|
List(opts api.ListOptions) (*v1.ServiceAccountList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ServiceAccountExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// serviceAccounts implements ServiceAccountInterface
|
||||||
|
type serviceAccounts struct {
|
||||||
|
client *CoreClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newServiceAccounts returns a ServiceAccounts
|
||||||
|
func newServiceAccounts(c *CoreClient, namespace string) *serviceAccounts {
|
||||||
|
return &serviceAccounts{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a serviceAccount and creates it. Returns the server's representation of the serviceAccount, and an error, if there is any.
|
||||||
|
func (c *serviceAccounts) Create(serviceAccount *v1.ServiceAccount) (result *v1.ServiceAccount, err error) {
|
||||||
|
result = &v1.ServiceAccount{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
Body(serviceAccount).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a serviceAccount and updates it. Returns the server's representation of the serviceAccount, and an error, if there is any.
|
||||||
|
func (c *serviceAccounts) Update(serviceAccount *v1.ServiceAccount) (result *v1.ServiceAccount, err error) {
|
||||||
|
result = &v1.ServiceAccount{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
Name(serviceAccount.Name).
|
||||||
|
Body(serviceAccount).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the serviceAccount and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *serviceAccounts) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *serviceAccounts) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the serviceAccount, and returns the corresponding serviceAccount object, and an error if there is any.
|
||||||
|
func (c *serviceAccounts) Get(name string) (result *v1.ServiceAccount, err error) {
|
||||||
|
result = &v1.ServiceAccount{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ServiceAccounts that match those selectors.
|
||||||
|
func (c *serviceAccounts) List(opts api.ListOptions) (result *v1.ServiceAccountList, err error) {
|
||||||
|
result = &v1.ServiceAccountList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested serviceAccounts.
|
||||||
|
func (c *serviceAccounts) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("serviceaccounts").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/extensions/v1beta1/daemonset.go
Normal file
150
pkg/client/typed/generated/extensions/v1beta1/daemonset.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// DaemonSetsGetter has a method to return a DaemonSetInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type DaemonSetsGetter interface {
|
||||||
|
DaemonSets(namespace string) DaemonSetInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// DaemonSetInterface has methods to work with DaemonSet resources.
|
||||||
|
type DaemonSetInterface interface {
|
||||||
|
Create(*v1beta1.DaemonSet) (*v1beta1.DaemonSet, error)
|
||||||
|
Update(*v1beta1.DaemonSet) (*v1beta1.DaemonSet, error)
|
||||||
|
UpdateStatus(*v1beta1.DaemonSet) (*v1beta1.DaemonSet, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.DaemonSet, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.DaemonSetList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
DaemonSetExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// daemonSets implements DaemonSetInterface
|
||||||
|
type daemonSets struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newDaemonSets returns a DaemonSets
|
||||||
|
func newDaemonSets(c *ExtensionsClient, namespace string) *daemonSets {
|
||||||
|
return &daemonSets{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a daemonSet and creates it. Returns the server's representation of the daemonSet, and an error, if there is any.
|
||||||
|
func (c *daemonSets) Create(daemonSet *v1beta1.DaemonSet) (result *v1beta1.DaemonSet, err error) {
|
||||||
|
result = &v1beta1.DaemonSet{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
Body(daemonSet).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a daemonSet and updates it. Returns the server's representation of the daemonSet, and an error, if there is any.
|
||||||
|
func (c *daemonSets) Update(daemonSet *v1beta1.DaemonSet) (result *v1beta1.DaemonSet, err error) {
|
||||||
|
result = &v1beta1.DaemonSet{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
Name(daemonSet.Name).
|
||||||
|
Body(daemonSet).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *daemonSets) UpdateStatus(daemonSet *v1beta1.DaemonSet) (result *v1beta1.DaemonSet, err error) {
|
||||||
|
result = &v1beta1.DaemonSet{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
Name(daemonSet.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(daemonSet).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the daemonSet and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *daemonSets) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *daemonSets) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the daemonSet, and returns the corresponding daemonSet object, and an error if there is any.
|
||||||
|
func (c *daemonSets) Get(name string) (result *v1beta1.DaemonSet, err error) {
|
||||||
|
result = &v1beta1.DaemonSet{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of DaemonSets that match those selectors.
|
||||||
|
func (c *daemonSets) List(opts api.ListOptions) (result *v1beta1.DaemonSetList, err error) {
|
||||||
|
result = &v1beta1.DaemonSetList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested daemonSets.
|
||||||
|
func (c *daemonSets) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("daemonsets").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/extensions/v1beta1/deployment.go
Normal file
150
pkg/client/typed/generated/extensions/v1beta1/deployment.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// DeploymentsGetter has a method to return a DeploymentInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type DeploymentsGetter interface {
|
||||||
|
Deployments(namespace string) DeploymentInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeploymentInterface has methods to work with Deployment resources.
|
||||||
|
type DeploymentInterface interface {
|
||||||
|
Create(*v1beta1.Deployment) (*v1beta1.Deployment, error)
|
||||||
|
Update(*v1beta1.Deployment) (*v1beta1.Deployment, error)
|
||||||
|
UpdateStatus(*v1beta1.Deployment) (*v1beta1.Deployment, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.Deployment, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.DeploymentList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
DeploymentExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// deployments implements DeploymentInterface
|
||||||
|
type deployments struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newDeployments returns a Deployments
|
||||||
|
func newDeployments(c *ExtensionsClient, namespace string) *deployments {
|
||||||
|
return &deployments{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a deployment and creates it. Returns the server's representation of the deployment, and an error, if there is any.
|
||||||
|
func (c *deployments) Create(deployment *v1beta1.Deployment) (result *v1beta1.Deployment, err error) {
|
||||||
|
result = &v1beta1.Deployment{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
Body(deployment).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a deployment and updates it. Returns the server's representation of the deployment, and an error, if there is any.
|
||||||
|
func (c *deployments) Update(deployment *v1beta1.Deployment) (result *v1beta1.Deployment, err error) {
|
||||||
|
result = &v1beta1.Deployment{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
Name(deployment.Name).
|
||||||
|
Body(deployment).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *deployments) UpdateStatus(deployment *v1beta1.Deployment) (result *v1beta1.Deployment, err error) {
|
||||||
|
result = &v1beta1.Deployment{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
Name(deployment.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(deployment).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the deployment and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *deployments) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *deployments) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the deployment, and returns the corresponding deployment object, and an error if there is any.
|
||||||
|
func (c *deployments) Get(name string) (result *v1beta1.Deployment, err error) {
|
||||||
|
result = &v1beta1.Deployment{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Deployments that match those selectors.
|
||||||
|
func (c *deployments) List(opts api.ListOptions) (result *v1beta1.DeploymentList, err error) {
|
||||||
|
result = &v1beta1.DeploymentList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested deployments.
|
||||||
|
func (c *deployments) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("deployments").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
@@ -0,0 +1,29 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
|
||||||
|
// The DeploymentExpansion interface allows manually adding extra methods to the DeploymentInterface.
|
||||||
|
type DeploymentExpansion interface {
|
||||||
|
Rollback(*v1beta1.DeploymentRollback) error
|
||||||
|
}
|
||||||
|
|
||||||
|
// Rollback applied the provided DeploymentRollback to the named deployment in the current namespace.
|
||||||
|
func (c *deployments) Rollback(deploymentRollback *v1beta1.DeploymentRollback) error {
|
||||||
|
return c.client.Post().Namespace(c.ns).Resource("deployments").Name(deploymentRollback.Name).SubResource("rollback").Body(deploymentRollback).Do().Error()
|
||||||
|
}
|
18
pkg/client/typed/generated/extensions/v1beta1/doc.go
Normal file
18
pkg/client/typed/generated/extensions/v1beta1/doc.go
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Package unversioned has the automatically generated clients for unversioned resources.
|
||||||
|
package v1beta1
|
@@ -0,0 +1,125 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
registered "k8s.io/kubernetes/pkg/apimachinery/registered"
|
||||||
|
unversioned "k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
|
)
|
||||||
|
|
||||||
|
type ExtensionsInterface interface {
|
||||||
|
DaemonSetsGetter
|
||||||
|
DeploymentsGetter
|
||||||
|
HorizontalPodAutoscalersGetter
|
||||||
|
IngressesGetter
|
||||||
|
JobsGetter
|
||||||
|
ReplicaSetsGetter
|
||||||
|
ScalesGetter
|
||||||
|
ThirdPartyResourcesGetter
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExtensionsClient is used to interact with features provided by the Extensions group.
|
||||||
|
type ExtensionsClient struct {
|
||||||
|
*unversioned.RESTClient
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) DaemonSets(namespace string) DaemonSetInterface {
|
||||||
|
return newDaemonSets(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) Deployments(namespace string) DeploymentInterface {
|
||||||
|
return newDeployments(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) HorizontalPodAutoscalers(namespace string) HorizontalPodAutoscalerInterface {
|
||||||
|
return newHorizontalPodAutoscalers(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) Ingresses(namespace string) IngressInterface {
|
||||||
|
return newIngresses(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) Jobs(namespace string) JobInterface {
|
||||||
|
return newJobs(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) ReplicaSets(namespace string) ReplicaSetInterface {
|
||||||
|
return newReplicaSets(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) Scales(namespace string) ScaleInterface {
|
||||||
|
return newScales(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ExtensionsClient) ThirdPartyResources(namespace string) ThirdPartyResourceInterface {
|
||||||
|
return newThirdPartyResources(c, namespace)
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewForConfig creates a new ExtensionsClient for the given config.
|
||||||
|
func NewForConfig(c *unversioned.Config) (*ExtensionsClient, error) {
|
||||||
|
config := *c
|
||||||
|
if err := setConfigDefaults(&config); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
client, err := unversioned.RESTClientFor(&config)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return &ExtensionsClient{client}, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewForConfigOrDie creates a new ExtensionsClient for the given config and
|
||||||
|
// panics if there is an error in the config.
|
||||||
|
func NewForConfigOrDie(c *unversioned.Config) *ExtensionsClient {
|
||||||
|
client, err := NewForConfig(c)
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
return client
|
||||||
|
}
|
||||||
|
|
||||||
|
// New creates a new ExtensionsClient for the given RESTClient.
|
||||||
|
func New(c *unversioned.RESTClient) *ExtensionsClient {
|
||||||
|
return &ExtensionsClient{c}
|
||||||
|
}
|
||||||
|
|
||||||
|
func setConfigDefaults(config *unversioned.Config) error {
|
||||||
|
// if extensions group is not registered, return an error
|
||||||
|
g, err := registered.Group("extensions")
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
config.APIPath = "/apis"
|
||||||
|
if config.UserAgent == "" {
|
||||||
|
config.UserAgent = unversioned.DefaultKubernetesUserAgent()
|
||||||
|
}
|
||||||
|
// TODO: Unconditionally set the config.Version, until we fix the config.
|
||||||
|
//if config.Version == "" {
|
||||||
|
copyGroupVersion := g.GroupVersion
|
||||||
|
config.GroupVersion = ©GroupVersion
|
||||||
|
//}
|
||||||
|
|
||||||
|
config.Codec = api.Codecs.LegacyCodec(*config.GroupVersion)
|
||||||
|
if config.QPS == 0 {
|
||||||
|
config.QPS = 5
|
||||||
|
}
|
||||||
|
if config.Burst == 0 {
|
||||||
|
config.Burst = 10
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
@@ -0,0 +1,29 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
type DaemonSetExpansion interface{}
|
||||||
|
|
||||||
|
type HorizontalPodAutoscalerExpansion interface{}
|
||||||
|
|
||||||
|
type IngressExpansion interface{}
|
||||||
|
|
||||||
|
type JobExpansion interface{}
|
||||||
|
|
||||||
|
type ThirdPartyResourceExpansion interface{}
|
||||||
|
|
||||||
|
type ReplicaSetExpansion interface{}
|
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// HorizontalPodAutoscalersGetter has a method to return a HorizontalPodAutoscalerInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type HorizontalPodAutoscalersGetter interface {
|
||||||
|
HorizontalPodAutoscalers(namespace string) HorizontalPodAutoscalerInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// HorizontalPodAutoscalerInterface has methods to work with HorizontalPodAutoscaler resources.
|
||||||
|
type HorizontalPodAutoscalerInterface interface {
|
||||||
|
Create(*v1beta1.HorizontalPodAutoscaler) (*v1beta1.HorizontalPodAutoscaler, error)
|
||||||
|
Update(*v1beta1.HorizontalPodAutoscaler) (*v1beta1.HorizontalPodAutoscaler, error)
|
||||||
|
UpdateStatus(*v1beta1.HorizontalPodAutoscaler) (*v1beta1.HorizontalPodAutoscaler, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.HorizontalPodAutoscaler, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.HorizontalPodAutoscalerList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
HorizontalPodAutoscalerExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// horizontalPodAutoscalers implements HorizontalPodAutoscalerInterface
|
||||||
|
type horizontalPodAutoscalers struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newHorizontalPodAutoscalers returns a HorizontalPodAutoscalers
|
||||||
|
func newHorizontalPodAutoscalers(c *ExtensionsClient, namespace string) *horizontalPodAutoscalers {
|
||||||
|
return &horizontalPodAutoscalers{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a horizontalPodAutoscaler and creates it. Returns the server's representation of the horizontalPodAutoscaler, and an error, if there is any.
|
||||||
|
func (c *horizontalPodAutoscalers) Create(horizontalPodAutoscaler *v1beta1.HorizontalPodAutoscaler) (result *v1beta1.HorizontalPodAutoscaler, err error) {
|
||||||
|
result = &v1beta1.HorizontalPodAutoscaler{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
Body(horizontalPodAutoscaler).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a horizontalPodAutoscaler and updates it. Returns the server's representation of the horizontalPodAutoscaler, and an error, if there is any.
|
||||||
|
func (c *horizontalPodAutoscalers) Update(horizontalPodAutoscaler *v1beta1.HorizontalPodAutoscaler) (result *v1beta1.HorizontalPodAutoscaler, err error) {
|
||||||
|
result = &v1beta1.HorizontalPodAutoscaler{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
Name(horizontalPodAutoscaler.Name).
|
||||||
|
Body(horizontalPodAutoscaler).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *horizontalPodAutoscalers) UpdateStatus(horizontalPodAutoscaler *v1beta1.HorizontalPodAutoscaler) (result *v1beta1.HorizontalPodAutoscaler, err error) {
|
||||||
|
result = &v1beta1.HorizontalPodAutoscaler{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
Name(horizontalPodAutoscaler.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(horizontalPodAutoscaler).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the horizontalPodAutoscaler and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *horizontalPodAutoscalers) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *horizontalPodAutoscalers) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the horizontalPodAutoscaler, and returns the corresponding horizontalPodAutoscaler object, and an error if there is any.
|
||||||
|
func (c *horizontalPodAutoscalers) Get(name string) (result *v1beta1.HorizontalPodAutoscaler, err error) {
|
||||||
|
result = &v1beta1.HorizontalPodAutoscaler{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of HorizontalPodAutoscalers that match those selectors.
|
||||||
|
func (c *horizontalPodAutoscalers) List(opts api.ListOptions) (result *v1beta1.HorizontalPodAutoscalerList, err error) {
|
||||||
|
result = &v1beta1.HorizontalPodAutoscalerList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested horizontalPodAutoscalers.
|
||||||
|
func (c *horizontalPodAutoscalers) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("horizontalpodautoscalers").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/extensions/v1beta1/ingress.go
Normal file
150
pkg/client/typed/generated/extensions/v1beta1/ingress.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// IngressesGetter has a method to return a IngressInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type IngressesGetter interface {
|
||||||
|
Ingresses(namespace string) IngressInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// IngressInterface has methods to work with Ingress resources.
|
||||||
|
type IngressInterface interface {
|
||||||
|
Create(*v1beta1.Ingress) (*v1beta1.Ingress, error)
|
||||||
|
Update(*v1beta1.Ingress) (*v1beta1.Ingress, error)
|
||||||
|
UpdateStatus(*v1beta1.Ingress) (*v1beta1.Ingress, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.Ingress, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.IngressList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
IngressExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// ingresses implements IngressInterface
|
||||||
|
type ingresses struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newIngresses returns a Ingresses
|
||||||
|
func newIngresses(c *ExtensionsClient, namespace string) *ingresses {
|
||||||
|
return &ingresses{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a ingress and creates it. Returns the server's representation of the ingress, and an error, if there is any.
|
||||||
|
func (c *ingresses) Create(ingress *v1beta1.Ingress) (result *v1beta1.Ingress, err error) {
|
||||||
|
result = &v1beta1.Ingress{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
Body(ingress).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a ingress and updates it. Returns the server's representation of the ingress, and an error, if there is any.
|
||||||
|
func (c *ingresses) Update(ingress *v1beta1.Ingress) (result *v1beta1.Ingress, err error) {
|
||||||
|
result = &v1beta1.Ingress{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
Name(ingress.Name).
|
||||||
|
Body(ingress).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *ingresses) UpdateStatus(ingress *v1beta1.Ingress) (result *v1beta1.Ingress, err error) {
|
||||||
|
result = &v1beta1.Ingress{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
Name(ingress.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(ingress).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the ingress and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *ingresses) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *ingresses) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the ingress, and returns the corresponding ingress object, and an error if there is any.
|
||||||
|
func (c *ingresses) Get(name string) (result *v1beta1.Ingress, err error) {
|
||||||
|
result = &v1beta1.Ingress{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Ingresses that match those selectors.
|
||||||
|
func (c *ingresses) List(opts api.ListOptions) (result *v1beta1.IngressList, err error) {
|
||||||
|
result = &v1beta1.IngressList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested ingresses.
|
||||||
|
func (c *ingresses) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("ingresses").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/extensions/v1beta1/job.go
Normal file
150
pkg/client/typed/generated/extensions/v1beta1/job.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// JobsGetter has a method to return a JobInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type JobsGetter interface {
|
||||||
|
Jobs(namespace string) JobInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// JobInterface has methods to work with Job resources.
|
||||||
|
type JobInterface interface {
|
||||||
|
Create(*v1beta1.Job) (*v1beta1.Job, error)
|
||||||
|
Update(*v1beta1.Job) (*v1beta1.Job, error)
|
||||||
|
UpdateStatus(*v1beta1.Job) (*v1beta1.Job, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.Job, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.JobList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
JobExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// jobs implements JobInterface
|
||||||
|
type jobs struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newJobs returns a Jobs
|
||||||
|
func newJobs(c *ExtensionsClient, namespace string) *jobs {
|
||||||
|
return &jobs{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a job and creates it. Returns the server's representation of the job, and an error, if there is any.
|
||||||
|
func (c *jobs) Create(job *v1beta1.Job) (result *v1beta1.Job, err error) {
|
||||||
|
result = &v1beta1.Job{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
Body(job).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a job and updates it. Returns the server's representation of the job, and an error, if there is any.
|
||||||
|
func (c *jobs) Update(job *v1beta1.Job) (result *v1beta1.Job, err error) {
|
||||||
|
result = &v1beta1.Job{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
Name(job.Name).
|
||||||
|
Body(job).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *jobs) UpdateStatus(job *v1beta1.Job) (result *v1beta1.Job, err error) {
|
||||||
|
result = &v1beta1.Job{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
Name(job.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(job).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the job and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *jobs) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *jobs) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the job, and returns the corresponding job object, and an error if there is any.
|
||||||
|
func (c *jobs) Get(name string) (result *v1beta1.Job, err error) {
|
||||||
|
result = &v1beta1.Job{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of Jobs that match those selectors.
|
||||||
|
func (c *jobs) List(opts api.ListOptions) (result *v1beta1.JobList, err error) {
|
||||||
|
result = &v1beta1.JobList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested jobs.
|
||||||
|
func (c *jobs) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("jobs").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
150
pkg/client/typed/generated/extensions/v1beta1/replicaset.go
Normal file
150
pkg/client/typed/generated/extensions/v1beta1/replicaset.go
Normal file
@@ -0,0 +1,150 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ReplicaSetsGetter has a method to return a ReplicaSetInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ReplicaSetsGetter interface {
|
||||||
|
ReplicaSets(namespace string) ReplicaSetInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ReplicaSetInterface has methods to work with ReplicaSet resources.
|
||||||
|
type ReplicaSetInterface interface {
|
||||||
|
Create(*v1beta1.ReplicaSet) (*v1beta1.ReplicaSet, error)
|
||||||
|
Update(*v1beta1.ReplicaSet) (*v1beta1.ReplicaSet, error)
|
||||||
|
UpdateStatus(*v1beta1.ReplicaSet) (*v1beta1.ReplicaSet, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.ReplicaSet, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.ReplicaSetList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ReplicaSetExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// replicaSets implements ReplicaSetInterface
|
||||||
|
type replicaSets struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newReplicaSets returns a ReplicaSets
|
||||||
|
func newReplicaSets(c *ExtensionsClient, namespace string) *replicaSets {
|
||||||
|
return &replicaSets{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a replicaSet and creates it. Returns the server's representation of the replicaSet, and an error, if there is any.
|
||||||
|
func (c *replicaSets) Create(replicaSet *v1beta1.ReplicaSet) (result *v1beta1.ReplicaSet, err error) {
|
||||||
|
result = &v1beta1.ReplicaSet{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
Body(replicaSet).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a replicaSet and updates it. Returns the server's representation of the replicaSet, and an error, if there is any.
|
||||||
|
func (c *replicaSets) Update(replicaSet *v1beta1.ReplicaSet) (result *v1beta1.ReplicaSet, err error) {
|
||||||
|
result = &v1beta1.ReplicaSet{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
Name(replicaSet.Name).
|
||||||
|
Body(replicaSet).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *replicaSets) UpdateStatus(replicaSet *v1beta1.ReplicaSet) (result *v1beta1.ReplicaSet, err error) {
|
||||||
|
result = &v1beta1.ReplicaSet{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
Name(replicaSet.Name).
|
||||||
|
SubResource("status").
|
||||||
|
Body(replicaSet).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the replicaSet and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *replicaSets) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *replicaSets) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the replicaSet, and returns the corresponding replicaSet object, and an error if there is any.
|
||||||
|
func (c *replicaSets) Get(name string) (result *v1beta1.ReplicaSet, err error) {
|
||||||
|
result = &v1beta1.ReplicaSet{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ReplicaSets that match those selectors.
|
||||||
|
func (c *replicaSets) List(opts api.ListOptions) (result *v1beta1.ReplicaSetList, err error) {
|
||||||
|
result = &v1beta1.ReplicaSetList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested replicaSets.
|
||||||
|
func (c *replicaSets) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("replicasets").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
42
pkg/client/typed/generated/extensions/v1beta1/scale.go
Normal file
42
pkg/client/typed/generated/extensions/v1beta1/scale.go
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
// ScalesGetter has a method to return a ScaleInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ScalesGetter interface {
|
||||||
|
Scales(namespace string) ScaleInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ScaleInterface has methods to work with Scale resources.
|
||||||
|
type ScaleInterface interface {
|
||||||
|
ScaleExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// scales implements ScaleInterface
|
||||||
|
type scales struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newScales returns a Scales
|
||||||
|
func newScales(c *ExtensionsClient, namespace string) *scales {
|
||||||
|
return &scales{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,65 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
"k8s.io/kubernetes/pkg/api/meta"
|
||||||
|
"k8s.io/kubernetes/pkg/api/unversioned"
|
||||||
|
"k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
)
|
||||||
|
|
||||||
|
// The ScaleExpansion interface allows manually adding extra methods to the ScaleInterface.
|
||||||
|
type ScaleExpansion interface {
|
||||||
|
Get(kind string, name string) (*v1beta1.Scale, error)
|
||||||
|
Update(kind string, scale *v1beta1.Scale) (*v1beta1.Scale, error)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes the reference to scale subresource and returns the subresource or error, if one occurs.
|
||||||
|
func (c *scales) Get(kind string, name string) (result *v1beta1.Scale, err error) {
|
||||||
|
result = &v1beta1.Scale{}
|
||||||
|
|
||||||
|
// TODO this method needs to take a proper unambiguous kind
|
||||||
|
fullyQualifiedKind := unversioned.GroupVersionKind{Kind: kind}
|
||||||
|
resource, _ := meta.KindToResource(fullyQualifiedKind)
|
||||||
|
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource(resource.Resource).
|
||||||
|
Name(name).
|
||||||
|
SubResource("scale").
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *scales) Update(kind string, scale *v1beta1.Scale) (result *v1beta1.Scale, err error) {
|
||||||
|
result = &v1beta1.Scale{}
|
||||||
|
|
||||||
|
// TODO this method needs to take a proper unambiguous kind
|
||||||
|
fullyQualifiedKind := unversioned.GroupVersionKind{Kind: kind}
|
||||||
|
resource, _ := meta.KindToResource(fullyQualifiedKind)
|
||||||
|
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(scale.Namespace).
|
||||||
|
Resource(resource.Resource).
|
||||||
|
Name(scale.Name).
|
||||||
|
SubResource("scale").
|
||||||
|
Body(scale).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
@@ -0,0 +1,136 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2016 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1beta1
|
||||||
|
|
||||||
|
import (
|
||||||
|
api "k8s.io/kubernetes/pkg/api"
|
||||||
|
v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
|
watch "k8s.io/kubernetes/pkg/watch"
|
||||||
|
)
|
||||||
|
|
||||||
|
// ThirdPartyResourcesGetter has a method to return a ThirdPartyResourceInterface.
|
||||||
|
// A group's client should implement this interface.
|
||||||
|
type ThirdPartyResourcesGetter interface {
|
||||||
|
ThirdPartyResources(namespace string) ThirdPartyResourceInterface
|
||||||
|
}
|
||||||
|
|
||||||
|
// ThirdPartyResourceInterface has methods to work with ThirdPartyResource resources.
|
||||||
|
type ThirdPartyResourceInterface interface {
|
||||||
|
Create(*v1beta1.ThirdPartyResource) (*v1beta1.ThirdPartyResource, error)
|
||||||
|
Update(*v1beta1.ThirdPartyResource) (*v1beta1.ThirdPartyResource, error)
|
||||||
|
Delete(name string, options *api.DeleteOptions) error
|
||||||
|
DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error
|
||||||
|
Get(name string) (*v1beta1.ThirdPartyResource, error)
|
||||||
|
List(opts api.ListOptions) (*v1beta1.ThirdPartyResourceList, error)
|
||||||
|
Watch(opts api.ListOptions) (watch.Interface, error)
|
||||||
|
ThirdPartyResourceExpansion
|
||||||
|
}
|
||||||
|
|
||||||
|
// thirdPartyResources implements ThirdPartyResourceInterface
|
||||||
|
type thirdPartyResources struct {
|
||||||
|
client *ExtensionsClient
|
||||||
|
ns string
|
||||||
|
}
|
||||||
|
|
||||||
|
// newThirdPartyResources returns a ThirdPartyResources
|
||||||
|
func newThirdPartyResources(c *ExtensionsClient, namespace string) *thirdPartyResources {
|
||||||
|
return &thirdPartyResources{
|
||||||
|
client: c,
|
||||||
|
ns: namespace,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Create takes the representation of a thirdPartyResource and creates it. Returns the server's representation of the thirdPartyResource, and an error, if there is any.
|
||||||
|
func (c *thirdPartyResources) Create(thirdPartyResource *v1beta1.ThirdPartyResource) (result *v1beta1.ThirdPartyResource, err error) {
|
||||||
|
result = &v1beta1.ThirdPartyResource{}
|
||||||
|
err = c.client.Post().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
Body(thirdPartyResource).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update takes the representation of a thirdPartyResource and updates it. Returns the server's representation of the thirdPartyResource, and an error, if there is any.
|
||||||
|
func (c *thirdPartyResources) Update(thirdPartyResource *v1beta1.ThirdPartyResource) (result *v1beta1.ThirdPartyResource, err error) {
|
||||||
|
result = &v1beta1.ThirdPartyResource{}
|
||||||
|
err = c.client.Put().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
Name(thirdPartyResource.Name).
|
||||||
|
Body(thirdPartyResource).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete takes name of the thirdPartyResource and deletes it. Returns an error if one occurs.
|
||||||
|
func (c *thirdPartyResources) Delete(name string, options *api.DeleteOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
Name(name).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeleteCollection deletes a collection of objects.
|
||||||
|
func (c *thirdPartyResources) DeleteCollection(options *api.DeleteOptions, listOptions api.ListOptions) error {
|
||||||
|
return c.client.Delete().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
VersionedParams(&listOptions, api.ParameterCodec).
|
||||||
|
Body(options).
|
||||||
|
Do().
|
||||||
|
Error()
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get takes name of the thirdPartyResource, and returns the corresponding thirdPartyResource object, and an error if there is any.
|
||||||
|
func (c *thirdPartyResources) Get(name string) (result *v1beta1.ThirdPartyResource, err error) {
|
||||||
|
result = &v1beta1.ThirdPartyResource{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
Name(name).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// List takes label and field selectors, and returns the list of ThirdPartyResources that match those selectors.
|
||||||
|
func (c *thirdPartyResources) List(opts api.ListOptions) (result *v1beta1.ThirdPartyResourceList, err error) {
|
||||||
|
result = &v1beta1.ThirdPartyResourceList{}
|
||||||
|
err = c.client.Get().
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Do().
|
||||||
|
Into(result)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// Watch returns a watch.Interface that watches the requested thirdPartyResources.
|
||||||
|
func (c *thirdPartyResources) Watch(opts api.ListOptions) (watch.Interface, error) {
|
||||||
|
return c.client.Get().
|
||||||
|
Prefix("watch").
|
||||||
|
Namespace(c.ns).
|
||||||
|
Resource("thirdpartyresources").
|
||||||
|
VersionedParams(&opts, api.ParameterCodec).
|
||||||
|
Watch()
|
||||||
|
}
|
@@ -25,6 +25,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
|
"k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2"
|
||||||
client "k8s.io/kubernetes/pkg/client/unversioned"
|
client "k8s.io/kubernetes/pkg/client/unversioned"
|
||||||
"k8s.io/kubernetes/pkg/fields"
|
"k8s.io/kubernetes/pkg/fields"
|
||||||
"k8s.io/kubernetes/pkg/metrics"
|
"k8s.io/kubernetes/pkg/metrics"
|
||||||
@@ -40,6 +41,7 @@ type Framework struct {
|
|||||||
|
|
||||||
Namespace *api.Namespace
|
Namespace *api.Namespace
|
||||||
Client *client.Client
|
Client *client.Client
|
||||||
|
Clientset_1_2 *release_1_2.Clientset
|
||||||
NamespaceDeletionTimeout time.Duration
|
NamespaceDeletionTimeout time.Duration
|
||||||
|
|
||||||
gatherer containerResourceGatherer
|
gatherer containerResourceGatherer
|
||||||
@@ -79,6 +81,7 @@ func (f *Framework) beforeEach() {
|
|||||||
Expect(err).NotTo(HaveOccurred())
|
Expect(err).NotTo(HaveOccurred())
|
||||||
|
|
||||||
f.Client = c
|
f.Client = c
|
||||||
|
f.Clientset_1_2 = release_1_2.FromUnversionedClient(c)
|
||||||
|
|
||||||
By("Building a namespace api object")
|
By("Building a namespace api object")
|
||||||
namespace, err := createTestingNS(f.BaseName, f.Client, map[string]string{
|
namespace, err := createTestingNS(f.BaseName, f.Client, map[string]string{
|
||||||
|
154
test/e2e/generated_clientset.go
Normal file
154
test/e2e/generated_clientset.go
Normal file
@@ -0,0 +1,154 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2014 The Kubernetes 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package e2e
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"strconv"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"k8s.io/kubernetes/pkg/api"
|
||||||
|
"k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
"k8s.io/kubernetes/pkg/labels"
|
||||||
|
"k8s.io/kubernetes/pkg/util"
|
||||||
|
"k8s.io/kubernetes/pkg/util/intstr"
|
||||||
|
"k8s.io/kubernetes/pkg/watch"
|
||||||
|
|
||||||
|
. "github.com/onsi/ginkgo"
|
||||||
|
. "github.com/onsi/gomega"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ = Describe("Generated release_1_2 clientset", func() {
|
||||||
|
framework := NewFramework("clientset")
|
||||||
|
It("should create pods, delete pods, watch pods", func() {
|
||||||
|
podClient := framework.Clientset_1_2.Core().Pods(framework.Namespace.Name)
|
||||||
|
By("creating the pod")
|
||||||
|
name := "pod" + string(util.NewUUID())
|
||||||
|
value := strconv.Itoa(time.Now().Nanosecond())
|
||||||
|
pod := &v1.Pod{
|
||||||
|
ObjectMeta: v1.ObjectMeta{
|
||||||
|
Name: name,
|
||||||
|
Labels: map[string]string{
|
||||||
|
"name": "foo",
|
||||||
|
"time": value,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Spec: v1.PodSpec{
|
||||||
|
Containers: []v1.Container{
|
||||||
|
{
|
||||||
|
Name: "nginx",
|
||||||
|
Image: "gcr.io/google_containers/nginx:1.7.9",
|
||||||
|
Ports: []v1.ContainerPort{{ContainerPort: 80}},
|
||||||
|
LivenessProbe: &v1.Probe{
|
||||||
|
Handler: v1.Handler{
|
||||||
|
HTTPGet: &v1.HTTPGetAction{
|
||||||
|
Path: "/index.html",
|
||||||
|
Port: intstr.FromInt(8080),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
InitialDelaySeconds: 30,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
By("setting up watch")
|
||||||
|
selector := labels.SelectorFromSet(labels.Set(map[string]string{"time": value}))
|
||||||
|
options := api.ListOptions{LabelSelector: selector}
|
||||||
|
pods, err := podClient.List(options)
|
||||||
|
if err != nil {
|
||||||
|
Failf("Failed to query for pods: %v", err)
|
||||||
|
}
|
||||||
|
Expect(len(pods.Items)).To(Equal(0))
|
||||||
|
options = api.ListOptions{
|
||||||
|
LabelSelector: selector,
|
||||||
|
ResourceVersion: pods.ListMeta.ResourceVersion,
|
||||||
|
}
|
||||||
|
w, err := podClient.Watch(options)
|
||||||
|
if err != nil {
|
||||||
|
Failf("Failed to set up watch: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
By("submitting the pod to kubernetes")
|
||||||
|
// We call defer here in case there is a problem with
|
||||||
|
// the test so we can ensure that we clean up after
|
||||||
|
// ourselves
|
||||||
|
defer podClient.Delete(pod.Name, api.NewDeleteOptions(0))
|
||||||
|
_, err = podClient.Create(pod)
|
||||||
|
if err != nil {
|
||||||
|
Failf("Failed to create pod: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
By("verifying the pod is in kubernetes")
|
||||||
|
pods, err = podClient.List(options)
|
||||||
|
if err != nil {
|
||||||
|
Failf("Failed to query for pods: %v", err)
|
||||||
|
}
|
||||||
|
Expect(len(pods.Items)).To(Equal(1))
|
||||||
|
|
||||||
|
By("verifying pod creation was observed")
|
||||||
|
select {
|
||||||
|
case event, _ := <-w.ResultChan():
|
||||||
|
if event.Type != watch.Added {
|
||||||
|
Failf("Failed to observe pod creation: %v", event)
|
||||||
|
}
|
||||||
|
case <-time.After(podStartTimeout):
|
||||||
|
Fail("Timeout while waiting for pod creation")
|
||||||
|
}
|
||||||
|
|
||||||
|
// We need to wait for the pod to be scheduled, otherwise the deletion
|
||||||
|
// will be carried out immediately rather than gracefully.
|
||||||
|
expectNoError(framework.WaitForPodRunning(pod.Name))
|
||||||
|
|
||||||
|
By("deleting the pod gracefully")
|
||||||
|
if err := podClient.Delete(pod.Name, api.NewDeleteOptions(30)); err != nil {
|
||||||
|
Failf("Failed to delete pod: %v", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
By("verifying pod deletion was observed")
|
||||||
|
deleted := false
|
||||||
|
timeout := false
|
||||||
|
var lastPod *api.Pod
|
||||||
|
timer := time.After(30 * time.Second)
|
||||||
|
for !deleted && !timeout {
|
||||||
|
select {
|
||||||
|
case event, _ := <-w.ResultChan():
|
||||||
|
if event.Type == watch.Deleted {
|
||||||
|
lastPod = event.Object.(*api.Pod)
|
||||||
|
deleted = true
|
||||||
|
}
|
||||||
|
case <-timer:
|
||||||
|
timeout = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if !deleted {
|
||||||
|
Fail("Failed to observe pod deletion")
|
||||||
|
}
|
||||||
|
|
||||||
|
Expect(lastPod.DeletionTimestamp).ToNot(BeNil())
|
||||||
|
Expect(lastPod.Spec.TerminationGracePeriodSeconds).ToNot(BeZero())
|
||||||
|
|
||||||
|
selector = labels.SelectorFromSet(labels.Set(map[string]string{"time": value}))
|
||||||
|
options = api.ListOptions{LabelSelector: selector}
|
||||||
|
pods, err = podClient.List(options)
|
||||||
|
if err != nil {
|
||||||
|
Fail(fmt.Sprintf("Failed to list pods to verify deletion: %v", err))
|
||||||
|
}
|
||||||
|
Expect(len(pods.Items)).To(Equal(0))
|
||||||
|
})
|
||||||
|
})
|
Reference in New Issue
Block a user