diff --git a/cmd/libs/go2idl/args/args.go b/cmd/libs/go2idl/args/args.go index fa1d8e57674..97b3dc989f9 100644 --- a/cmd/libs/go2idl/args/args.go +++ b/cmd/libs/go2idl/args/args.go @@ -31,6 +31,8 @@ import ( "k8s.io/kubernetes/cmd/libs/go2idl/namer" "k8s.io/kubernetes/cmd/libs/go2idl/parser" "k8s.io/kubernetes/cmd/libs/go2idl/types" + "k8s.io/kubernetes/pkg/util" + utilflag "k8s.io/kubernetes/pkg/util/flag" "github.com/spf13/pflag" ) @@ -52,15 +54,15 @@ type GeneratorArgs struct { // Which directories to parse. InputDirs []string - // If true, recurse into all children of InputDirs - Recursive bool - // Source tree to write results to. OutputBase string // Package path within the source tree. OutputPackagePath string + // Output file name. + OutputFileBaseName string + // Where to get copyright header text. GoHeaderFilePath string @@ -81,9 +83,9 @@ func (g *GeneratorArgs) AddFlags(fs *pflag.FlagSet) { fs.StringSliceVarP(&g.InputDirs, "input-dirs", "i", g.InputDirs, "Comma-separated list of import paths to get input types from.") fs.StringVarP(&g.OutputBase, "output-base", "o", g.OutputBase, "Output base; defaults to $GOPATH/src/ or ./ if $GOPATH is not set.") fs.StringVarP(&g.OutputPackagePath, "output-package", "p", g.OutputPackagePath, "Base package path.") + fs.StringVarP(&g.OutputFileBaseName, "output-file-base", "O", g.OutputFileBaseName, "Base name (without .go suffix) for output files.") fs.StringVarP(&g.GoHeaderFilePath, "go-header-file", "h", g.GoHeaderFilePath, "File containing boilerplate header text. The string YEAR will be replaced with the current 4-digit year.") fs.BoolVar(&g.VerifyOnly, "verify-only", g.VerifyOnly, "If true, only verify existing output, do not write anything.") - fs.BoolVar(&g.Recursive, "recursive", g.VerifyOnly, "If true, recurse into all children of input directories.") fs.StringVar(&g.GeneratedBuildTag, "build-tag", g.GeneratedBuildTag, "A Go build tag to use to identify files generated by this command. Should be unique.") } @@ -105,15 +107,14 @@ func (g *GeneratorArgs) NewBuilder() (*parser.Builder, error) { b.AddBuildTags(g.GeneratedBuildTag) for _, d := range g.InputDirs { - d = strings.TrimLeft(d, "+-*") - if g.Recursive { - if err := b.AddDirRecursive(d); err != nil { - return nil, fmt.Errorf("unable to add directory %q: %v", d, err) - } + var err error + if strings.HasSuffix(d, "/...") { + err = b.AddDirRecursive(strings.TrimSuffix(d, "/...")) } else { - if err := b.AddDir(d); err != nil { - return nil, fmt.Errorf("unable to add directory %q: %v", d, err) - } + err = b.AddDir(d) + } + if err != nil { + return nil, fmt.Errorf("unable to add directory %q: %v", d, err) } } return b, nil @@ -144,7 +145,8 @@ func DefaultSourceTree() string { // If you don't need any non-default behavior, use as: // args.Default().Execute(...) func (g *GeneratorArgs) Execute(nameSystems namer.NameSystems, defaultSystem string, pkgs func(*generator.Context, *GeneratorArgs) generator.Packages) error { - pflag.Parse() + utilflag.InitFlags() + util.InitLogs() b, err := g.NewBuilder() if err != nil { diff --git a/cmd/libs/go2idl/client-gen/generators/client_generator.go b/cmd/libs/go2idl/client-gen/generators/client_generator.go index 81eef6256b3..ac55f9e7768 100644 --- a/cmd/libs/go2idl/client-gen/generators/client_generator.go +++ b/cmd/libs/go2idl/client-gen/generators/client_generator.go @@ -120,7 +120,7 @@ func packageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packag return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { - return types.ExtractCommentTags("+", t.SecondClosestCommentLines)["genclient"] == "true" + return extractBoolTagOrDie("genclient", t.SecondClosestCommentLines) == true }, } } @@ -190,7 +190,7 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat } else { // User has not specified any override for this group version. // filter out types which dont have genclient=true. - if types.ExtractCommentTags("+", t.SecondClosestCommentLines)["genclient"] != "true" { + if extractBoolTagOrDie("genclient", t.SecondClosestCommentLines) == false { continue } } diff --git a/cmd/libs/go2idl/client-gen/generators/fake/fake_client_generator.go b/cmd/libs/go2idl/client-gen/generators/fake/fake_client_generator.go index 76d1f26c527..1e866bf8582 100644 --- a/cmd/libs/go2idl/client-gen/generators/fake/fake_client_generator.go +++ b/cmd/libs/go2idl/client-gen/generators/fake/fake_client_generator.go @@ -20,6 +20,8 @@ import ( "path/filepath" "strings" + "github.com/golang/glog" + clientgenargs "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/args" "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/normalization" "k8s.io/kubernetes/cmd/libs/go2idl/generator" @@ -75,11 +77,19 @@ func PackageForGroup(gv unversioned.GroupVersion, typeList []*types.Type, packag return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { - return types.ExtractCommentTags("+", t.SecondClosestCommentLines)["genclient"] == "true" + return extractBoolTagOrDie("genclient", t.SecondClosestCommentLines) == true }, } } +func extractBoolTagOrDie(key string, lines []string) bool { + val, err := types.ExtractSingleBoolCommentTag("+", key, false, lines) + if err != nil { + glog.Fatalf(err.Error()) + } + return val +} + func PackageForClientset(customArgs clientgenargs.Args, typedClientBasePath string, boilerplate []byte, generatedBy string) generator.Package { return &generator.DefaultPackage{ // TODO: we'll generate fake clientset for different release in the future. diff --git a/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_group.go b/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_group.go index 0790046d15a..59b947fcbfe 100644 --- a/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_group.go +++ b/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_group.go @@ -72,7 +72,7 @@ func (g *genFakeForGroup) GenerateType(c *generator.Context, t *types.Type, w io "Group": namer.IC(g.group), "realClientPackage": filepath.Base(g.realClientPath), } - namespaced := !(types.ExtractCommentTags("+", t.SecondClosestCommentLines)["nonNamespaced"] == "true") + namespaced := !extractBoolTagOrDie("nonNamespaced", t.SecondClosestCommentLines) if namespaced { sw.Do(getterImplNamespaced, wrapper) } else { diff --git a/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_type.go b/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_type.go index b341653ce13..c5c43e84661 100644 --- a/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_type.go +++ b/cmd/libs/go2idl/client-gen/generators/fake/generator_fake_for_type.go @@ -79,7 +79,7 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io. sw := generator.NewSnippetWriter(w, c, "$", "$") pkg := filepath.Base(t.Name.Package) const pkgTestingCore = "k8s.io/kubernetes/pkg/client/testing/core" - namespaced := !(types.ExtractCommentTags("+", t.SecondClosestCommentLines)["nonNamespaced"] == "true") + namespaced := !extractBoolTagOrDie("nonNamespaced", t.SecondClosestCommentLines) canonicalGroup := g.group if canonicalGroup == "core" { canonicalGroup = "" @@ -95,11 +95,9 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io. } // allow user to define a group name that's different from the one parsed from the directory. - for _, comment := range c.Universe.Package(g.inputPackage).DocComments { - comment = strings.TrimLeft(comment, "//") - if override, ok := types.ExtractCommentTags("+", comment)["groupName"]; ok { - groupName = override - } + p := c.Universe.Package(g.inputPackage) + if override := types.ExtractCommentTags("+", p.DocComments)["groupName"]; override != nil { + groupName = override[0] } m := map[string]interface{}{ @@ -138,7 +136,7 @@ func (g *genFakeForType) GenerateType(c *generator.Context, t *types.Type, w io. "NewPatchAction": c.Universe.Function(types.Name{Package: pkgTestingCore, Name: "NewPatchAction"}), } - noMethods := types.ExtractCommentTags("+", t.SecondClosestCommentLines)["noMethods"] == "true" + noMethods := extractBoolTagOrDie("noMethods", t.SecondClosestCommentLines) == true if namespaced { sw.Do(structNamespaced, m) diff --git a/cmd/libs/go2idl/client-gen/generators/generator_for_group.go b/cmd/libs/go2idl/client-gen/generators/generator_for_group.go index 9dca192a49e..75b5478203d 100644 --- a/cmd/libs/go2idl/client-gen/generators/generator_for_group.go +++ b/cmd/libs/go2idl/client-gen/generators/generator_for_group.go @@ -18,7 +18,6 @@ package generators import ( "io" - "strings" "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/generators/normalization" "k8s.io/kubernetes/cmd/libs/go2idl/generator" @@ -74,11 +73,9 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer groupName = "" } // allow user to define a group name that's different from the one parsed from the directory. - for _, comment := range c.Universe.Package(g.inputPacakge).DocComments { - comment = strings.TrimLeft(comment, "//") - if override, ok := types.ExtractCommentTags("+", comment)["groupName"]; ok && override != "" { - groupName = override - } + p := c.Universe.Package(g.inputPacakge) + if override := types.ExtractCommentTags("+", p.DocComments)["groupName"]; override != nil { + groupName = override[0] } m := map[string]interface{}{ @@ -104,7 +101,7 @@ func (g *genGroup) GenerateType(c *generator.Context, t *types.Type, w io.Writer "type": t, "Group": namer.IC(normalization.BeforeFirstDot(g.group)), } - namespaced := !(types.ExtractCommentTags("+", t.SecondClosestCommentLines)["nonNamespaced"] == "true") + namespaced := !extractBoolTagOrDie("nonNamespaced", t.SecondClosestCommentLines) if namespaced { sw.Do(getterImplNamespaced, wrapper) } else { diff --git a/cmd/libs/go2idl/client-gen/generators/generator_for_type.go b/cmd/libs/go2idl/client-gen/generators/generator_for_type.go index 056556eb8ce..692f0d79e61 100644 --- a/cmd/libs/go2idl/client-gen/generators/generator_for_type.go +++ b/cmd/libs/go2idl/client-gen/generators/generator_for_type.go @@ -66,7 +66,7 @@ func hasStatus(t *types.Type) bool { func (g *genClientForType) GenerateType(c *generator.Context, t *types.Type, w io.Writer) error { sw := generator.NewSnippetWriter(w, c, "$", "$") pkg := filepath.Base(t.Name.Package) - namespaced := !(types.ExtractCommentTags("+", t.SecondClosestCommentLines)["nonNamespaced"] == "true") + namespaced := !extractBoolTagOrDie("nonNamespaced", t.SecondClosestCommentLines) m := map[string]interface{}{ "type": t, "package": pkg, @@ -86,7 +86,7 @@ func (g *genClientForType) GenerateType(c *generator.Context, t *types.Type, w i } else { sw.Do(getterNonNamesapced, m) } - noMethods := types.ExtractCommentTags("+", t.SecondClosestCommentLines)["noMethods"] == "true" + noMethods := extractBoolTagOrDie("noMethods", t.SecondClosestCommentLines) == true sw.Do(interfaceTemplate1, m) if !noMethods { diff --git a/cmd/libs/go2idl/client-gen/generators/tags.go b/cmd/libs/go2idl/client-gen/generators/tags.go new file mode 100644 index 00000000000..9008fcbc9d0 --- /dev/null +++ b/cmd/libs/go2idl/client-gen/generators/tags.go @@ -0,0 +1,33 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 generators + +import ( + "github.com/golang/glog" + "k8s.io/kubernetes/cmd/libs/go2idl/types" +) + +// extractBoolTagOrDie gets the comment-tags for the key and asserts that, if +// it exists, the value is boolean. If the tag did not exist, it returns +// false. +func extractBoolTagOrDie(key string, lines []string) bool { + val, err := types.ExtractSingleBoolCommentTag("+", key, false, lines) + if err != nil { + glog.Fatalf(err.Error()) + } + return val +} diff --git a/cmd/libs/go2idl/conversion-gen/generators/conversion.go b/cmd/libs/go2idl/conversion-gen/generators/conversion.go index 2f6e79b6274..8cf6c1b5560 100644 --- a/cmd/libs/go2idl/conversion-gen/generators/conversion.go +++ b/cmd/libs/go2idl/conversion-gen/generators/conversion.go @@ -232,11 +232,8 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat // Only generate conversions for package which explicitly requested it // byt setting "+genversion=true" in their doc.go file. filtered := false - for _, comment := range p.DocComments { - comment := strings.Trim(comment, "//") - if types.ExtractCommentTags("+", comment)["genconversion"] == "true" { - filtered = true - } + if extractBoolTagOrDie("genconversion", false, p.DocComments) == true { + filtered = true } if !filtered { continue @@ -345,7 +342,7 @@ func isDirectlyConvertible(in, out *types.Type, preexisting conversions) bool { // "+ genconversion=false" // comment to ignore this field for conversion. // TODO: Switch to SecondClosestCommentLines. - if types.ExtractCommentTags("+", inMember.CommentLines)["genconversion"] == "false" { + if extractBoolTagOrDie("genconversion", true, inMember.CommentLines) == false { continue } return false @@ -431,7 +428,7 @@ func (g *genConversion) convertibleOnlyWithinPackage(inType, outType *types.Type if t.Name.Package != g.targetPackage { return false } - if types.ExtractCommentTags("+", t.CommentLines)["genconversion"] == "false" { + if extractBoolTagOrDie("genconversion", true, t.CommentLines) == false { return false } // TODO: Consider generating functions for other kinds too. @@ -613,9 +610,9 @@ func (g *genConversion) doBuiltin(inType, outType *types.Type, sw *generator.Sni func (g *genConversion) doMap(inType, outType *types.Type, sw *generator.SnippetWriter) { sw.Do("*out = make($.|raw$, len(*in))\n", outType) - if outType.Key.IsAssignable() { + if isDirectlyAssignable(inType.Key, outType.Key) { sw.Do("for key, val := range *in {\n", nil) - if outType.Elem.IsAssignable() { + if isDirectlyAssignable(inType.Elem, outType.Elem) { if inType.Key == outType.Key { sw.Do("(*out)[key] = ", nil) } else { @@ -659,7 +656,7 @@ func (g *genConversion) doSlice(inType, outType *types.Type, sw *generator.Snipp sw.Do("copy(*out, *in)\n", nil) } else { sw.Do("for i := range *in {\n", nil) - if outType.Elem.IsAssignable() { + if isDirectlyAssignable(inType.Elem, outType.Elem) { if inType.Elem == outType.Elem { sw.Do("(*out)[i] = (*in)[i]\n", nil) } else { @@ -750,7 +747,7 @@ func (g *genConversion) doStruct(inType, outType *types.Type, sw *generator.Snip sw.Do("return err\n", nil) sw.Do("}\n", nil) case types.Alias: - if outT.IsAssignable() { + if isDirectlyAssignable(t, outT) { if t == outT { sw.Do("out.$.name$ = in.$.name$\n", args) } else { @@ -787,7 +784,7 @@ func (g *genConversion) isDirectlyAssignable(inType, outType *types.Type) bool { func (g *genConversion) doPointer(inType, outType *types.Type, sw *generator.SnippetWriter) { sw.Do("*out = new($.Elem|raw$)\n", outType) - if outType.Elem.IsAssignable() { + if isDirectlyAssignable(inType.Elem, outType.Elem) { if inType.Elem == outType.Elem { sw.Do("**out = **in\n", nil) } else { @@ -816,3 +813,14 @@ func (g *genConversion) doAlias(inType, outType *types.Type, sw *generator.Snipp func (g *genConversion) doUnknown(inType, outType *types.Type, sw *generator.SnippetWriter) { sw.Do("// FIXME: Type $.|raw$ is unsupported.\n", inType) } + +func isDirectlyAssignable(inType, outType *types.Type) bool { + // TODO: This should maybe check for actual assignability between the two + // types, rather than superficial traits that happen to indicate it is + // assignable in the ways we currently use this code. + return inType.IsAssignable() && (inType.IsPrimitive() || isSamePackage(inType, outType)) +} + +func isSamePackage(inType, outType *types.Type) bool { + return inType.Name.Package == outType.Name.Package +} diff --git a/cmd/libs/go2idl/conversion-gen/generators/tags.go b/cmd/libs/go2idl/conversion-gen/generators/tags.go new file mode 100644 index 00000000000..032c501e3de --- /dev/null +++ b/cmd/libs/go2idl/conversion-gen/generators/tags.go @@ -0,0 +1,33 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 generators + +import ( + "github.com/golang/glog" + "k8s.io/kubernetes/cmd/libs/go2idl/types" +) + +// extractBoolTagOrDie gets the comment-tags for the key and asserts that, if +// it exists, the value is boolean. If the tag did not exist, it returns +// defaultVal. +func extractBoolTagOrDie(key string, defaultVal bool, lines []string) bool { + val, err := types.ExtractSingleBoolCommentTag("+", key, defaultVal, lines) + if err != nil { + glog.Fatalf(err.Error()) + } + return val +} diff --git a/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy.go b/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy.go index 3f11e8f49f3..80ab575ae7d 100644 --- a/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy.go +++ b/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy.go @@ -19,7 +19,6 @@ package generators import ( "fmt" "io" - "path" "path/filepath" "strings" @@ -32,13 +31,63 @@ import ( "github.com/golang/glog" ) -// Constraints is a set of optional limitations on what deep copy will generate. -type Constraints struct { - // PackageConstraints is an optional set of package prefixes that constrain which types - // will have inline deep copy methods generated for. Any type outside of these packages - // (if specified) will not have a function generated and will result in a call to the - // cloner.DeepCopy method. - PackageConstraints []string +// CustomArgs is used tby the go2idl framework to pass args specific to this +// generator. +type CustomArgs struct { + BoundingDirs []string // Only deal with types rooted under these dirs. +} + +// This is the comment tag that carries parameters for deep-copy generation. +const tagName = "k8s:deepcopy-gen" + +// Known values for the comment tag. +const tagValuePackage = "package" + +// tagValue holds parameters from a tagName tag. +type tagValue struct { + value string + register bool +} + +func extractTag(comments []string) *tagValue { + tagVals := types.ExtractCommentTags("+", comments)[tagName] + if tagVals == nil { + // No match for the tag. + return nil + } + // If there are multiple values, abort. + if len(tagVals) > 1 { + glog.Fatalf("Found %d %s tags: %q", len(tagVals), tagName, tagVals) + } + + // If we got here we are returning something. + tag := &tagValue{} + + // Get the primary value. + parts := strings.Split(tagVals[0], ",") + if len(parts) >= 1 { + tag.value = parts[0] + } + + // Parse extra arguments. + parts = parts[1:] + for i := range parts { + kv := strings.SplitN(parts[i], "=", 2) + k := kv[0] + v := "" + if len(kv) == 2 { + v = kv[1] + } + switch k { + case "register": + if v != "false" { + tag.register = true + } + default: + glog.Fatalf("Unsupported %s param: %q", tagName, parts[i]) + } + } + return tag } // TODO: This is created only to reduce number of changes in a single PR. @@ -72,32 +121,7 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat glog.Fatalf("Failed loading boilerplate: %v", err) } - initInputs := sets.NewString() - explicitInputs := sets.NewString() - inputs := sets.NewString() - for _, s := range arguments.InputDirs { - switch { - case strings.HasPrefix(s, "+"): - // packages with '+' prefix get functions generated for everything except gencopy=false, but - // no init function - s = strings.TrimPrefix(s, "+") - inputs.Insert(s) - case strings.HasPrefix(s, "-"): - // packages with '-' prefix only get functions generated for those with gencopy=true - s = strings.TrimPrefix(s, "-") - inputs.Insert(s) - explicitInputs.Insert(s) - default: - inputs.Insert(s) - initInputs.Insert(s) - } - } - - var restrictRange []string - if c, ok := arguments.CustomArgs.(Constraints); ok { - restrictRange = c.PackageConstraints - } - + inputs := sets.NewString(context.Inputs...) packages := generator.Packages{} header := append([]byte(fmt.Sprintf("// +build !%s\n\n", arguments.GeneratedBuildTag)), boilerplate...) header = append(header, []byte( @@ -105,48 +129,71 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat // This file was autogenerated by deepcopy-gen. Do not edit it manually! `)...) - for _, p := range context.Universe { - copyableType := false - for _, t := range p.Types { - if copyableWithinPackage(t, explicitInputs.Has(t.Name.Package)) && inputs.Has(t.Name.Package) { - copyableType = true + + boundingDirs := []string{} + if customArgs, ok := arguments.CustomArgs.(*CustomArgs); ok { + for i := range customArgs.BoundingDirs { + // Strip any trailing slashes - they are not exactly "correct" but + // this is friendlier. + boundingDirs = append(boundingDirs, strings.TrimRight(customArgs.BoundingDirs[i], "/")) + } + } + + for i := range inputs { + glog.V(5).Infof("considering pkg %q", i) + pkg := context.Universe[i] + if pkg == nil { + // If the input had no Go files, for example. + continue + } + + ptag := extractTag(pkg.Comments) + ptagValue := "" + ptagRegister := false + if ptag != nil { + ptagValue = ptag.value + if ptagValue != tagValuePackage { + glog.Fatalf("Package %v: unsupported %s value: %q", i, tagName, ptagValue) + } + ptagRegister = ptag.register + glog.V(5).Infof(" tag.value: %q, tag.register: %t", ptagValue, ptagRegister) + } else { + glog.V(5).Infof(" no tag") + } + + // If the pkg-scoped tag says to generate, we can skip scanning types. + pkgNeedsGeneration := (ptagValue == tagValuePackage) + if !pkgNeedsGeneration { + // If the pkg-scoped tag did not exist, scan all types for one that + // explicitly wants generation. + for _, t := range pkg.Types { + glog.V(5).Infof(" considering type %q", t.Name.String()) + ttag := extractTag(t.CommentLines) + if ttag != nil && ttag.value == "true" { + glog.V(5).Infof(" tag=true") + if !copyableType(t) { + glog.Fatalf("Type %v requests deepcopy generation but is not copyable", t) + } + pkgNeedsGeneration = true + break + } } } - if copyableType { - // TODO: replace this with a more sophisticated algorithm that generates private copy methods - // (like auto_DeepCopy_...) for any type that is outside of the PackageConstraints. That would - // avoid having to make a reflection call. - canInlineTypeFn := func(c *generator.Context, t *types.Type) bool { - // types must be public structs or have a custom DeepCopy_ already defined - if publicCopyFunctionDefined(c, t) { - return true - } - if !copyableWithinPackage(t, explicitInputs.Has(t.Name.Package)) { - return false - } - // only packages within the restricted range can be inlined - for _, s := range restrictRange { - if strings.HasPrefix(t.Name.Package, s) { - return true - } - } - return false - } - path := p.Path + if pkgNeedsGeneration { packages = append(packages, &generator.DefaultPackage{ - PackageName: strings.Split(filepath.Base(path), ".")[0], - PackagePath: path, + PackageName: strings.Split(filepath.Base(pkg.Path), ".")[0], + PackagePath: pkg.Path, HeaderText: header, GeneratorFunc: func(c *generator.Context) (generators []generator.Generator) { generators = []generator.Generator{} generators = append( - generators, NewGenDeepCopy("deep_copy_generated", path, initInputs.Has(path), explicitInputs.Has(path), canInlineTypeFn)) + generators, NewGenDeepCopy(arguments.OutputFileBaseName, pkg.Path, boundingDirs, (ptagValue == tagValuePackage), ptagRegister)) return generators }, FilterFunc: func(c *generator.Context, t *types.Type) bool { - return t.Name.Package == path + return t.Name.Package == pkg.Path }, }) } @@ -154,9 +201,6 @@ func Packages(context *generator.Context, arguments *args.GeneratorArgs) generat return packages } -// CanInlineTypeFunc should return true if the provided type can be converted to a function call -type CanInlineTypeFunc func(*generator.Context, *types.Type) bool - const ( apiPackagePath = "k8s.io/kubernetes/pkg/api" conversionPackagePath = "k8s.io/kubernetes/pkg/conversion" @@ -165,30 +209,27 @@ const ( // genDeepCopy produces a file with autogenerated deep-copy functions. type genDeepCopy struct { generator.DefaultGen - - targetPackage string - imports namer.ImportTracker - typesForInit []*types.Type - generateInitFunc bool - requireExplicitTag bool - canInlineTypeFn CanInlineTypeFunc - - context *generator.Context + targetPackage string + boundingDirs []string + allTypes bool + registerTypes bool + imports namer.ImportTracker + typesForInit []*types.Type globalVariables map[string]interface{} } -func NewGenDeepCopy(sanitizedName, targetPackage string, generateInitFunc, requireExplicitTag bool, canInlineTypeFn CanInlineTypeFunc) generator.Generator { +func NewGenDeepCopy(sanitizedName, targetPackage string, boundingDirs []string, allTypes, registerTypes bool) generator.Generator { return &genDeepCopy{ DefaultGen: generator.DefaultGen{ OptionalName: sanitizedName, }, - targetPackage: targetPackage, - imports: generator.NewImportTracker(), - typesForInit: make([]*types.Type, 0), - generateInitFunc: generateInitFunc, - requireExplicitTag: requireExplicitTag, - canInlineTypeFn: canInlineTypeFn, + targetPackage: targetPackage, + boundingDirs: boundingDirs, + allTypes: allTypes, + registerTypes: registerTypes, + imports: generator.NewImportTracker(), + typesForInit: make([]*types.Type, 0), } } @@ -198,30 +239,71 @@ func (g *genDeepCopy) Namers(c *generator.Context) namer.NameSystems { } func (g *genDeepCopy) Filter(c *generator.Context, t *types.Type) bool { - // Filter out all types not copyable within the package. - copyable := copyableWithinPackage(t, g.requireExplicitTag) + // Filter out types not being processed or not copyable within the package. + enabled := g.allTypes + if !enabled { + ttag := extractTag(t.CommentLines) + if ttag != nil && ttag.value == "true" { + enabled = true + } + } + copyable := enabled && copyableType(t) if copyable { g.typesForInit = append(g.typesForInit, t) } return copyable } -// publicCopyFunctionDefined returns true if a DeepCopy function has already been defined in a given -// package, which allows more efficient deep copy implementations to be defined by the caller. -func publicCopyFunctionDefined(c *generator.Context, t *types.Type) bool { - p, ok := c.Universe[t.Name.Package] - if !ok { +func (g *genDeepCopy) copyableAndInBounds(t *types.Type) bool { + if !copyableType(t) { return false } - return p.Functions["DeepCopy_"+path.Base(t.Name.Package)+"_"+t.Name.Name] != nil + // Only packages within the restricted range can be processed. + if !isRootedUnder(t.Name.Package, g.boundingDirs) { + return false + } + return true } -func copyableWithinPackage(t *types.Type, explicitCopyRequired bool) bool { - tag := types.ExtractCommentTags("+", t.CommentLines)["gencopy"] - if tag == "false" { - return false +// hasDeepCopyMethod returns true if an appropriate DeepCopy() method is +// defined for the given type. This allows more efficient deep copy +// implementations to be defined by the type's author. The correct signature +// for a type T is: +// func (t T) DeepCopy() T +// or: +// func (t *T) DeepCopyt() T +func hasDeepCopyMethod(t *types.Type) bool { + for mn, mt := range t.Methods { + if mn != "DeepCopy" { + continue + } + if len(mt.Signature.Parameters) != 0 { + return false + } + if len(mt.Signature.Results) != 1 || mt.Signature.Results[0].Name != t.Name { + return false + } + return true } - if explicitCopyRequired && tag != "true" { + return false +} + +func isRootedUnder(pkg string, roots []string) bool { + // Add trailing / to avoid false matches, e.g. foo/bar vs foo/barn. This + // assumes that bounding dirs do not have trailing slashes. + pkg = pkg + "/" + for _, root := range roots { + if strings.HasPrefix(pkg, root+"/") { + return true + } + } + return false +} + +func copyableType(t *types.Type) bool { + // If the type opts out of copy-generation, stop. + ttag := extractTag(t.CommentLines) + if ttag != nil && ttag.value == "false" { return false } // TODO: Consider generating functions for other kinds too. @@ -280,18 +362,19 @@ func (g *genDeepCopy) funcNameTmpl(t *types.Type) string { } func (g *genDeepCopy) Init(c *generator.Context, w io.Writer) error { - g.context = c cloner := c.Universe.Type(types.Name{Package: conversionPackagePath, Name: "Cloner"}) g.imports.AddType(cloner) g.globalVariables = map[string]interface{}{ "Cloner": cloner, } - if !g.generateInitFunc { + if !g.registerTypes { // TODO: We should come up with a solution to register all generated // deep-copy functions. However, for now, to avoid import cycles // we register only those explicitly requested. return nil } + glog.V(5).Infof("registering types in pkg %q", g.targetPackage) + scheme := c.Universe.Variable(types.Name{Package: apiPackagePath, Name: "Scheme"}) g.imports.AddType(scheme) g.globalVariables["scheme"] = scheme @@ -312,7 +395,34 @@ func (g *genDeepCopy) Init(c *generator.Context, w io.Writer) error { return sw.Error() } +func (g *genDeepCopy) needsGeneration(t *types.Type) bool { + tag := extractTag(t.CommentLines) + tv := "" + if tag != nil { + tv = tag.value + if tv != "true" && tv != "false" { + glog.Fatalf("Type %v: unsupported %s value: %q", t, tagName, tag.value) + } + } + if g.allTypes && tv == "false" { + // The whole package is being generated, but this type has opted out. + glog.V(5).Infof("not generating for type %v because type opted out", t) + return false + } + if !g.allTypes && tv != "true" { + // The whole package is NOT being generated, and this type has NOT opted in. + glog.V(5).Infof("not generating for type %v because type did not opt in", t) + return false + } + return true +} + func (g *genDeepCopy) GenerateType(c *generator.Context, t *types.Type, w io.Writer) error { + if !g.needsGeneration(t) { + return nil + } + glog.V(5).Infof("generating for type %v", t) + sw := generator.NewSnippetWriter(w, c, "$", "$") funcName := g.funcNameTmpl(t) sw.Do(fmt.Sprintf("func %s(in $.type|raw$, out *$.type|raw$, c *$.Cloner|raw$) error {\n", funcName), g.withGlobals(argsFromType(t))) @@ -356,6 +466,10 @@ func (g *genDeepCopy) doMap(t *types.Type, sw *generator.SnippetWriter) { sw.Do("*out = make($.|raw$)\n", t) if t.Key.IsAssignable() { switch { + case hasDeepCopyMethod(t.Elem): + sw.Do("for key, val := range in {\n", nil) + sw.Do("(*out)[key] = val.DeepCopy()\n", nil) + sw.Do("}\n", nil) case t.Elem.IsAnonymousStruct(): sw.Do("for key := range in {\n", nil) sw.Do("(*out)[key] = struct{}{}\n", nil) @@ -366,7 +480,7 @@ func (g *genDeepCopy) doMap(t *types.Type, sw *generator.SnippetWriter) { sw.Do("}\n", nil) default: sw.Do("for key, val := range in {\n", nil) - if g.canInlineTypeFn(g.context, t.Elem) { + if g.copyableAndInBounds(t.Elem) { sw.Do("newVal := new($.|raw$)\n", t.Elem) funcName := g.funcNameTmpl(t.Elem) sw.Do(fmt.Sprintf("if err := %s(val, newVal, c); err != nil {\n", funcName), argsFromType(t.Elem)) @@ -396,9 +510,11 @@ func (g *genDeepCopy) doSlice(t *types.Type, sw *generator.SnippetWriter) { sw.Do("copy(*out, in)\n", nil) } else { sw.Do("for i := range in {\n", nil) - if t.Elem.IsAssignable() { + if hasDeepCopyMethod(t.Elem) { + sw.Do("(*out)[i] = in[i].DeepCopy()\n", nil) + } else if t.Elem.IsAssignable() { sw.Do("(*out)[i] = in[i]\n", nil) - } else if g.canInlineTypeFn(g.context, t.Elem) { + } else if g.copyableAndInBounds(t.Elem) { funcName := g.funcNameTmpl(t.Elem) sw.Do(fmt.Sprintf("if err := %s(in[i], &(*out)[i], c); err != nil {\n", funcName), argsFromType(t.Elem)) sw.Do("return err\n", nil) @@ -437,7 +553,11 @@ func (g *genDeepCopy) doStruct(t *types.Type, sw *generator.SnippetWriter) { sw.Do("out.$.name$ = nil\n", args) sw.Do("}\n", nil) case types.Struct: - if g.canInlineTypeFn(g.context, t) { + if hasDeepCopyMethod(t) { + sw.Do("out.$.name$ = in.$.name$.DeepCopy()\n", args) + } else if t.IsAssignable() { + sw.Do("out.$.name$ = in.$.name$\n", args) + } else if g.copyableAndInBounds(t) { funcName := g.funcNameTmpl(t) sw.Do(fmt.Sprintf("if err := %s(in.$.name$, &out.$.name$, c); err != nil {\n", funcName), args) sw.Do("return err\n", nil) @@ -468,9 +588,11 @@ func (g *genDeepCopy) doInterface(t *types.Type, sw *generator.SnippetWriter) { func (g *genDeepCopy) doPointer(t *types.Type, sw *generator.SnippetWriter) { sw.Do("*out = new($.Elem|raw$)\n", t) - if t.Elem.IsAssignable() { + if hasDeepCopyMethod(t.Elem) { + sw.Do("**out = in.DeepCopy()\n", nil) + } else if t.Elem.IsAssignable() { sw.Do("**out = *in", nil) - } else if g.canInlineTypeFn(g.context, t.Elem) { + } else if g.copyableAndInBounds(t.Elem) { funcName := g.funcNameTmpl(t.Elem) sw.Do(fmt.Sprintf("if err := %s(*in, *out, c); err != nil {\n", funcName), argsFromType(t.Elem)) sw.Do("return err\n", nil) diff --git a/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy_test.go b/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy_test.go new file mode 100644 index 00000000000..cafab0db656 --- /dev/null +++ b/cmd/libs/go2idl/deepcopy-gen/generators/deepcopy_test.go @@ -0,0 +1,344 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 generators + +import ( + "testing" + + "k8s.io/kubernetes/cmd/libs/go2idl/types" +) + +func Test_isRootedUnder(t *testing.T) { + testCases := []struct { + path string + roots []string + expect bool + }{ + { + path: "/foo/bar", + roots: nil, + expect: false, + }, + { + path: "/foo/bar", + roots: []string{}, + expect: false, + }, + { + path: "/foo/bar", + roots: []string{ + "/bad", + }, + expect: false, + }, + { + path: "/foo/bar", + roots: []string{ + "/foo", + }, + expect: true, + }, + { + path: "/foo/bar", + roots: []string{ + "/bad", + "/foo", + }, + expect: true, + }, + { + path: "/foo/bar/qux/zorb", + roots: []string{ + "/foo/bar/qux", + }, + expect: true, + }, + { + path: "/foo/bar", + roots: []string{ + "/foo/bar", + }, + expect: true, + }, + { + path: "/foo/barn", + roots: []string{ + "/foo/bar", + }, + expect: false, + }, + { + path: "/foo/bar", + roots: []string{ + "/foo/barn", + }, + expect: false, + }, + { + path: "/foo/bar", + roots: []string{ + "", + }, + expect: true, + }, + } + + for i, tc := range testCases { + r := isRootedUnder(tc.path, tc.roots) + if r != tc.expect { + t.Errorf("case[%d]: expected %t, got %t for %q in %q", i, tc.expect, r, tc.path, tc.roots) + } + } +} + +func Test_hasDeepCopyMethod(t *testing.T) { + testCases := []struct { + typ types.Type + expect bool + }{ + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + // No DeepCopy method. + Methods: map[string]*types.Type{}, + }, + expect: false, + }, + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + Methods: map[string]*types.Type{ + // No DeepCopy method. + "method": { + Name: types.Name{Package: "pkgname", Name: "func()"}, + Kind: types.Func, + Signature: &types.Signature{ + Parameters: []*types.Type{}, + Results: []*types.Type{}, + }, + }, + }, + }, + expect: false, + }, + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + Methods: map[string]*types.Type{ + // Wrong signature (no result). + "DeepCopy": { + Name: types.Name{Package: "pkgname", Name: "func()"}, + Kind: types.Func, + Signature: &types.Signature{ + Parameters: []*types.Type{}, + Results: []*types.Type{}, + }, + }, + }, + }, + expect: false, + }, + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + Methods: map[string]*types.Type{ + // Wrong signature (wrong result). + "DeepCopy": { + Name: types.Name{Package: "pkgname", Name: "func() int"}, + Kind: types.Func, + Signature: &types.Signature{ + Parameters: []*types.Type{}, + Results: []*types.Type{ + { + Name: types.Name{Name: "int"}, + Kind: types.Builtin, + }, + }, + }, + }, + }, + }, + expect: false, + }, + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + Methods: map[string]*types.Type{ + // Correct signature. + "DeepCopy": { + Name: types.Name{Package: "pkgname", Name: "func() pkgname.typename"}, + Kind: types.Func, + Signature: &types.Signature{ + Parameters: []*types.Type{}, + Results: []*types.Type{ + { + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + }, + }, + }, + }, + }, + }, + expect: true, + }, + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + Methods: map[string]*types.Type{ + // Wrong signature (has params). + "DeepCopy": { + Name: types.Name{Package: "pkgname", Name: "func(int) pkgname.typename"}, + Kind: types.Func, + Signature: &types.Signature{ + Parameters: []*types.Type{ + { + Name: types.Name{Name: "int"}, + Kind: types.Builtin, + }, + }, + Results: []*types.Type{ + { + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + }, + }, + }, + }, + }, + }, + expect: false, + }, + { + typ: types.Type{ + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + Methods: map[string]*types.Type{ + // Wrong signature (extra results). + "DeepCopy": { + Name: types.Name{Package: "pkgname", Name: "func() (pkgname.typename, int)"}, + Kind: types.Func, + Signature: &types.Signature{ + Parameters: []*types.Type{}, + Results: []*types.Type{ + { + Name: types.Name{Package: "pkgname", Name: "typename"}, + Kind: types.Builtin, + }, + { + Name: types.Name{Name: "int"}, + Kind: types.Builtin, + }, + }, + }, + }, + }, + }, + expect: false, + }, + } + + for i, tc := range testCases { + r := hasDeepCopyMethod(&tc.typ) + if r != tc.expect { + t.Errorf("case[%d]: expected %t, got %t", i, tc.expect, r) + } + } +} + +func Test_extractTagParams(t *testing.T) { + testCases := []struct { + comments []string + expect *tagValue + }{ + { + comments: []string{ + "Human comment", + }, + expect: nil, + }, + { + comments: []string{ + "Human comment", + "+k8s:deepcopy-gen", + }, + expect: &tagValue{ + value: "", + register: false, + }, + }, + { + comments: []string{ + "Human comment", + "+k8s:deepcopy-gen=package", + }, + expect: &tagValue{ + value: "package", + register: false, + }, + }, + { + comments: []string{ + "Human comment", + "+k8s:deepcopy-gen=package,register", + }, + expect: &tagValue{ + value: "package", + register: true, + }, + }, + { + comments: []string{ + "Human comment", + "+k8s:deepcopy-gen=package,register=true", + }, + expect: &tagValue{ + value: "package", + register: true, + }, + }, + { + comments: []string{ + "Human comment", + "+k8s:deepcopy-gen=package,register=false", + }, + expect: &tagValue{ + value: "package", + register: false, + }, + }, + } + + for i, tc := range testCases { + r := extractTag(tc.comments) + if r == nil && tc.expect != nil { + t.Errorf("case[%d]: expected non-nil", i) + } + if r != nil && tc.expect == nil { + t.Errorf("case[%d]: expected nil, got %v", i, *r) + } + if r != nil && *r != *tc.expect { + t.Errorf("case[%d]: expected %v, got %v", i, *tc.expect, *r) + } + } +} diff --git a/cmd/libs/go2idl/deepcopy-gen/main.go b/cmd/libs/go2idl/deepcopy-gen/main.go index 2b84f95fab9..39927b8a655 100644 --- a/cmd/libs/go2idl/deepcopy-gen/main.go +++ b/cmd/libs/go2idl/deepcopy-gen/main.go @@ -16,9 +16,35 @@ limitations under the License. // deepcopy-gen is a tool for auto-generating DeepCopy functions. // -// Structs in the input directories with the below line in their comments -// will be ignored during generation. -// // +gencopy=false +// Given a list of input directories, it will generate functions that +// efficiently perform a full deep-copy of each type. For any type that +// offers a `.DeepCopy()` method, it will simply call that. Otherwise it will +// use standard value assignment whenever possible. If that is not possible it +// will try to call its own generated copy function for the type, if the type is +// within the allowed root packages. Failing that, it will fall back on +// `conversion.Cloner.DeepCopy(val)` to make the copy. The resulting file will +// be stored in the same directory as the processed source package. +// +// Generation is governed by comment tags in the source. Any package may +// request DeepCopy generation by including a comment in the file-comments of +// one file, of the form: +// // +k8s:deepcopy-gen=package +// +// Packages can request that the generated DeepCopy functions be registered +// with an `init()` function call to `Scheme.AddGeneratedDeepCopyFuncs()` by +// changing the tag to: +// // +k8s:deepcopy-gen=package,register +// +// DeepCopy functions can be generated for individual types, rather than the +// entire package by specifying a comment on the type definion of the form: +// // +k8s:deepcopy-gen=true +// +// When generating for a whole package, individual types may opt out of +// DeepCopy generation by specifying a comment on the of the form: +// // +k8s:deepcopy-gen=false +// +// Note that registration is a whole-package option, and is not available for +// individual types. package main import ( @@ -26,58 +52,24 @@ import ( "k8s.io/kubernetes/cmd/libs/go2idl/deepcopy-gen/generators" "github.com/golang/glog" + "github.com/spf13/pflag" ) func main() { arguments := args.Default() - arguments.CustomArgs = generators.Constraints{ - // Types outside of this package will be inlined. - PackageConstraints: []string{"k8s.io/kubernetes/"}, - } - - // Override defaults. These are Kubernetes specific input locations. - arguments.InputDirs = []string{ - // generate all types, but do not register them - "+k8s.io/kubernetes/pkg/api/unversioned", - - "-k8s.io/kubernetes/pkg/api/meta", - "-k8s.io/kubernetes/pkg/api/meta/metatypes", - "-k8s.io/kubernetes/pkg/api/resource", - "-k8s.io/kubernetes/pkg/conversion", - "-k8s.io/kubernetes/pkg/labels", - "-k8s.io/kubernetes/pkg/runtime", - "-k8s.io/kubernetes/pkg/runtime/serializer", - "-k8s.io/kubernetes/pkg/util/intstr", - "-k8s.io/kubernetes/pkg/util/sets", - - "k8s.io/kubernetes/pkg/api", - "k8s.io/kubernetes/pkg/api/v1", - "k8s.io/kubernetes/pkg/apis/authentication.k8s.io", - "k8s.io/kubernetes/pkg/apis/authentication.k8s.io/v1beta1", - "k8s.io/kubernetes/pkg/apis/authorization", - "k8s.io/kubernetes/pkg/apis/authorization/v1beta1", - "k8s.io/kubernetes/pkg/apis/autoscaling", - "k8s.io/kubernetes/pkg/apis/autoscaling/v1", - "k8s.io/kubernetes/pkg/apis/batch", - "k8s.io/kubernetes/pkg/apis/batch/v1", - "k8s.io/kubernetes/pkg/apis/batch/v2alpha1", - "k8s.io/kubernetes/pkg/apis/apps", - "k8s.io/kubernetes/pkg/apis/apps/v1alpha1", - "k8s.io/kubernetes/pkg/apis/certificates", - "k8s.io/kubernetes/pkg/apis/certificates/v1alpha1", - "k8s.io/kubernetes/pkg/apis/componentconfig", - "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1", - "k8s.io/kubernetes/pkg/apis/policy", - "k8s.io/kubernetes/pkg/apis/policy/v1alpha1", - "k8s.io/kubernetes/pkg/apis/extensions", - "k8s.io/kubernetes/pkg/apis/extensions/v1beta1", - "k8s.io/kubernetes/pkg/apis/rbac", - "k8s.io/kubernetes/pkg/apis/rbac/v1alpha1", - "k8s.io/kubernetes/federation/apis/federation", - "k8s.io/kubernetes/federation/apis/federation/v1beta1", + // Override defaults. + arguments.OutputFileBaseName = "deep_copy_generated" + + // Custom args. + customArgs := &generators.CustomArgs{ + BoundingDirs: []string{"k8s.io/kubernetes"}, } + pflag.CommandLine.StringSliceVar(&customArgs.BoundingDirs, "bounding-dirs", customArgs.BoundingDirs, + "Comma-separated list of import paths which bound the types for which deep-copies will be generated.") + arguments.CustomArgs = customArgs + // Run it. if err := arguments.Execute( generators.NameSystems(), generators.DefaultNameSystem(), diff --git a/cmd/libs/go2idl/generator/generator.go b/cmd/libs/go2idl/generator/generator.go index c0b44cddeae..bb197494c6d 100644 --- a/cmd/libs/go2idl/generator/generator.go +++ b/cmd/libs/go2idl/generator/generator.go @@ -152,6 +152,9 @@ type Context struct { // All the types, in case you want to look up something. Universe types.Universe + // All the user-specified packages. This is after recursive expansion. + Inputs []string + // The canonical ordering of the types (will be filtered by both the // Package's and Generator's Filter methods). Order []*types.Type @@ -168,14 +171,15 @@ type Context struct { // NewContext generates a context from the given builder, naming systems, and // the naming system you wish to construct the canonical ordering from. func NewContext(b *parser.Builder, nameSystems namer.NameSystems, canonicalOrderName string) (*Context, error) { - u, err := b.FindTypes() + universe, err := b.FindTypes() if err != nil { return nil, err } c := &Context{ Namers: namer.NameSystems{}, - Universe: u, + Universe: universe, + Inputs: b.FindPackages(), FileTypes: map[string]FileType{ GolangFileType: NewGolangFile(), }, @@ -185,7 +189,7 @@ func NewContext(b *parser.Builder, nameSystems namer.NameSystems, canonicalOrder c.Namers[name] = systemNamer if name == canonicalOrderName { orderer := namer.Orderer{Namer: systemNamer} - c.Order = orderer.OrderUniverse(u) + c.Order = orderer.OrderUniverse(universe) } } return c, nil diff --git a/cmd/libs/go2idl/go-to-protobuf/protobuf/generator.go b/cmd/libs/go2idl/go-to-protobuf/protobuf/generator.go index 3bfa47f9150..a41cf3c8c30 100644 --- a/cmd/libs/go2idl/go-to-protobuf/protobuf/generator.go +++ b/cmd/libs/go2idl/go-to-protobuf/protobuf/generator.go @@ -25,6 +25,8 @@ import ( "strconv" "strings" + "github.com/golang/glog" + "k8s.io/kubernetes/cmd/libs/go2idl/generator" "k8s.io/kubernetes/cmd/libs/go2idl/namer" "k8s.io/kubernetes/cmd/libs/go2idl/types" @@ -70,13 +72,20 @@ func (g *genProtoIDL) Namers(c *generator.Context) namer.NameSystems { // Filter ignores types that are identified as not exportable. func (g *genProtoIDL) Filter(c *generator.Context, t *types.Type) bool { - flags := types.ExtractCommentTags("+", t.CommentLines) - switch { - case flags["protobuf"] == "false": - return false - case flags["protobuf"] == "true": - return true - case !g.generateAll: + tagVals := types.ExtractCommentTags("+", t.CommentLines)["protobuf"] + if tagVals != nil { + if tagVals[0] == "false" { + // Type specified "false". + return false + } + if tagVals[0] == "true" { + // Type specified "true". + return true + } + glog.Fatalf(`Comment tag "protobuf" must be true or false, found: %q`, tagVals[0]) + } + if !g.generateAll { + // We're not generating everything. return false } seen := map[*types.Type]bool{} @@ -125,7 +134,7 @@ func isOptionalAlias(t *types.Type) bool { if t.Underlying == nil || (t.Underlying.Kind != types.Map && t.Underlying.Kind != types.Slice) { return false } - if types.ExtractCommentTags("+", t.CommentLines)["protobuf.nullable"] != "true" { + if extractBoolTagOrDie("protobuf.nullable", t.CommentLines) == false { return false } return true @@ -268,7 +277,7 @@ func (b bodyGen) doAlias(sw *generator.SnippetWriter) error { Members: []types.Member{ { Name: "Items", - CommentLines: fmt.Sprintf("items, if empty, will result in an empty %s\n", kind), + CommentLines: []string{fmt.Sprintf("items, if empty, will result in an empty %s\n", kind)}, Type: b.t.Underlying, }, }, @@ -296,7 +305,7 @@ func (b bodyGen) doStruct(sw *generator.SnippetWriter) error { key := strings.TrimPrefix(k, "protobuf.options.") switch key { case "marshal": - if v == "false" { + if v[0] == "false" { if !b.omitGogo { options = append(options, "(gogoproto.marshaler) = false", @@ -307,14 +316,14 @@ func (b bodyGen) doStruct(sw *generator.SnippetWriter) error { } default: if !b.omitGogo || !strings.HasPrefix(key, "(gogoproto.") { - options = append(options, fmt.Sprintf("%s = %s", key, v)) + options = append(options, fmt.Sprintf("%s = %s", key, v[0])) } } // protobuf.as allows a type to have the same message contents as another Go type case k == "protobuf.as": fields = nil - if alias = b.locator.GoTypeForName(types.Name{Name: v}); alias == nil { - return fmt.Errorf("type %v references alias %q which does not exist", b.t, v) + if alias = b.locator.GoTypeForName(types.Name{Name: v[0]}); alias == nil { + return fmt.Errorf("type %v references alias %q which does not exist", b.t, v[0]) } // protobuf.embed instructs the generator to use the named type in this package // as an embedded message. @@ -322,10 +331,10 @@ func (b bodyGen) doStruct(sw *generator.SnippetWriter) error { fields = []protoField{ { Tag: 1, - Name: v, + Name: v[0], Type: &types.Type{ Name: types.Name{ - Name: v, + Name: v[0], Package: b.localPackage.Package, Path: b.localPackage.Path, }, @@ -410,7 +419,7 @@ type protoField struct { Nullable bool Extras map[string]string - CommentLines string + CommentLines []string } var ( @@ -687,8 +696,7 @@ func membersToFields(locator ProtobufLocator, t *types.Type, localPackage types. return fields, nil } -func genComment(out io.Writer, comment, indent string) { - lines := strings.Split(comment, "\n") +func genComment(out io.Writer, lines []string, indent string) { for { l := len(lines) if l == 0 || len(lines[l-1]) != 0 { diff --git a/cmd/libs/go2idl/go-to-protobuf/protobuf/tags.go b/cmd/libs/go2idl/go-to-protobuf/protobuf/tags.go new file mode 100644 index 00000000000..04283cfbc44 --- /dev/null +++ b/cmd/libs/go2idl/go-to-protobuf/protobuf/tags.go @@ -0,0 +1,33 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 protobuf + +import ( + "github.com/golang/glog" + "k8s.io/kubernetes/cmd/libs/go2idl/types" +) + +// extractBoolTagOrDie gets the comment-tags for the key and asserts that, if +// it exists, the value is boolean. If the tag did not exist, it returns +// false. +func extractBoolTagOrDie(key string, lines []string) bool { + val, err := types.ExtractSingleBoolCommentTag("+", key, false, lines) + if err != nil { + glog.Fatalf(err.Error()) + } + return val +} diff --git a/cmd/libs/go2idl/import-boss/main.go b/cmd/libs/go2idl/import-boss/main.go index 3f2fcf2ab4c..7e587cc6e68 100644 --- a/cmd/libs/go2idl/import-boss/main.go +++ b/cmd/libs/go2idl/import-boss/main.go @@ -70,11 +70,10 @@ func main() { // Override defaults. These are Kubernetes specific input and output // locations. arguments.InputDirs = []string{ - "k8s.io/kubernetes/pkg/", - "k8s.io/kubernetes/cmd/", - "k8s.io/kubernetes/plugin/", + "k8s.io/kubernetes/pkg/...", + "k8s.io/kubernetes/cmd/...", + "k8s.io/kubernetes/plugin/...", } - arguments.Recursive = true // arguments.VerifyOnly = true if err := arguments.Execute( diff --git a/cmd/libs/go2idl/parser/parse.go b/cmd/libs/go2idl/parser/parse.go index d18080ff008..6496dc04c84 100644 --- a/cmd/libs/go2idl/parser/parse.go +++ b/cmd/libs/go2idl/parser/parse.go @@ -129,7 +129,9 @@ func (b *Builder) buildPackage(pkgPath string) (*build.Package, error) { } pkg, err = b.context.Import(pkgPath, cwd, build.ImportComment) if err != nil { - return nil, fmt.Errorf("unable to import %q: %v", pkgPath, err) + if _, ok := err.(*build.NoGoError); !ok { + return nil, fmt.Errorf("unable to import %q: %v", pkgPath, err) + } } b.buildInfo[pkgPath] = pkg @@ -350,6 +352,20 @@ func (b *Builder) makePackages() error { return nil } +// FindPackages fetches a list of the user-imported packages. +func (b *Builder) FindPackages() []string { + result := []string{} + for pkgPath := range b.pkgs { + if b.userRequested[pkgPath] { + // Since walkType is recursive, all types that are in packages that + // were directly mentioned will be included. We don't need to + // include all types in all transitive packages, though. + result = append(result, pkgPath) + } + } + return result +} + // FindTypes finalizes the package imports, and searches through all the // packages for types. func (b *Builder) FindTypes() (types.Universe, error) { @@ -370,11 +386,12 @@ func (b *Builder) FindTypes() (types.Universe, error) { for _, f := range b.parsed[pkgPath] { if strings.HasSuffix(f.name, "/doc.go") { + tp := u.Package(pkgPath) + for i := range f.file.Comments { + tp.Comments = append(tp.Comments, splitLines(f.file.Comments[i].Text())...) + } if f.file.Doc != nil { - tp := u.Package(pkgPath) - for _, c := range f.file.Doc.List { - tp.DocComments = append(tp.DocComments, c.Text) - } + tp.DocComments = splitLines(f.file.Doc.Text()) } } } @@ -386,11 +403,11 @@ func (b *Builder) FindTypes() (types.Universe, error) { if ok { t := b.walkType(u, nil, tn.Type()) c1 := b.priorCommentLines(obj.Pos(), 1) - t.CommentLines = c1.Text() + t.CommentLines = splitLines(c1.Text()) if c1 == nil { - t.SecondClosestCommentLines = b.priorCommentLines(obj.Pos(), 2).Text() + t.SecondClosestCommentLines = splitLines(b.priorCommentLines(obj.Pos(), 2).Text()) } else { - t.SecondClosestCommentLines = b.priorCommentLines(c1.List[0].Slash, 2).Text() + t.SecondClosestCommentLines = splitLines(b.priorCommentLines(c1.List[0].Slash, 2).Text()) } } tf, ok := obj.(*tc.Func) @@ -418,6 +435,10 @@ func (b *Builder) priorCommentLines(pos token.Pos, lines int) *ast.CommentGroup return b.endLineToCommentGroup[key] } +func splitLines(str string) []string { + return strings.Split(strings.TrimRight(str, "\n"), "\n") +} + func tcFuncNameToName(in string) types.Name { name := strings.TrimLeft(in, "func ") nameParts := strings.Split(name, "(") @@ -494,7 +515,7 @@ func (b *Builder) walkType(u types.Universe, useName *types.Name, in tc.Type) *t Embedded: f.Anonymous(), Tags: t.Tag(i), Type: b.walkType(u, nil, f.Type()), - CommentLines: b.priorCommentLines(f.Pos(), 1).Text(), + CommentLines: splitLines(b.priorCommentLines(f.Pos(), 1).Text()), } out.Members = append(out.Members, m) } @@ -570,7 +591,10 @@ func (b *Builder) walkType(u types.Universe, useName *types.Name, in tc.Type) *t out.Kind = types.Interface t.Complete() for i := 0; i < t.NumMethods(); i++ { - out.Methods = append(out.Methods, b.walkType(u, nil, t.Method(i).Type())) + if out.Methods == nil { + out.Methods = map[string]*types.Type{} + } + out.Methods[t.Method(i).Name()] = b.walkType(u, nil, t.Method(i).Type()) } return out case *tc.Named: @@ -599,7 +623,10 @@ func (b *Builder) walkType(u types.Universe, useName *types.Name, in tc.Type) *t // methods, add them. (Interface types will // have already added methods.) for i := 0; i < t.NumMethods(); i++ { - out.Methods = append(out.Methods, b.walkType(u, nil, t.Method(i).Type())) + if out.Methods == nil { + out.Methods = map[string]*types.Type{} + } + out.Methods[t.Method(i).Name()] = b.walkType(u, nil, t.Method(i).Type()) } } return out diff --git a/cmd/libs/go2idl/parser/parse_test.go b/cmd/libs/go2idl/parser/parse_test.go index 50e0f14017b..7ffd198c432 100644 --- a/cmd/libs/go2idl/parser/parse_test.go +++ b/cmd/libs/go2idl/parser/parse_test.go @@ -197,13 +197,13 @@ type Blah struct { if e, a := types.Struct, blahT.Kind; e != a { t.Errorf("struct kind wrong, wanted %v, got %v", e, a) } - if e, a := "Blah is a test.\nA test, I tell you.\n", blahT.CommentLines; e != a { - t.Errorf("struct comment wrong, wanted %v, got %v", e, a) + if e, a := []string{"Blah is a test.", "A test, I tell you."}, blahT.CommentLines; !reflect.DeepEqual(e, a) { + t.Errorf("struct comment wrong, wanted %q, got %q", e, a) } m := types.Member{ Name: "B", Embedded: false, - CommentLines: "B is the second field.\nMultiline comments work.\n", + CommentLines: []string{"B is the second field.", "Multiline comments work."}, Tags: `json:"b"`, Type: types.String, } @@ -216,7 +216,7 @@ func TestParseSecondClosestCommentLines(t *testing.T) { const fileName = "base/foo/proto/foo.go" testCases := []struct { testFile map[string]string - expected string + expected []string }{ { map[string]string{fileName: `package foo @@ -229,7 +229,7 @@ type Blah struct { a int } `}, - "Blah's SecondClosestCommentLines.\nAnother line.\n", + []string{"Blah's SecondClosestCommentLines.", "Another line."}, }, { map[string]string{fileName: `package foo @@ -240,15 +240,15 @@ type Blah struct { a int } `}, - "Blah's SecondClosestCommentLines.\nAnother line.\n", + []string{"Blah's SecondClosestCommentLines.", "Another line."}, }, } for _, test := range testCases { _, u, o := construct(t, test.testFile, namer.NewPublicNamer(0)) t.Logf("%#v", o) blahT := u.Type(types.Name{Package: "base/foo/proto", Name: "Blah"}) - if e, a := test.expected, blahT.SecondClosestCommentLines; e != a { - t.Errorf("struct second closest comment wrong, wanted %v, got %v", e, a) + if e, a := test.expected, blahT.SecondClosestCommentLines; !reflect.DeepEqual(e, a) { + t.Errorf("struct second closest comment wrong, wanted %q, got %q", e, a) } } } diff --git a/cmd/libs/go2idl/set-gen/generators/sets.go b/cmd/libs/go2idl/set-gen/generators/sets.go index c20e13a70a4..d8ad284a527 100644 --- a/cmd/libs/go2idl/set-gen/generators/sets.go +++ b/cmd/libs/go2idl/set-gen/generators/sets.go @@ -108,7 +108,7 @@ func Packages(_ *generator.Context, arguments *args.GeneratorArgs) generator.Pac // // +genset // or // // +genset=true - return types.ExtractCommentTags("+", t.CommentLines)["genset"] == "true" + return extractBoolTagOrDie("genset", t.CommentLines) == true } return false }, diff --git a/cmd/libs/go2idl/set-gen/generators/tags.go b/cmd/libs/go2idl/set-gen/generators/tags.go new file mode 100644 index 00000000000..9008fcbc9d0 --- /dev/null +++ b/cmd/libs/go2idl/set-gen/generators/tags.go @@ -0,0 +1,33 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 generators + +import ( + "github.com/golang/glog" + "k8s.io/kubernetes/cmd/libs/go2idl/types" +) + +// extractBoolTagOrDie gets the comment-tags for the key and asserts that, if +// it exists, the value is boolean. If the tag did not exist, it returns +// false. +func extractBoolTagOrDie(key string, lines []string) bool { + val, err := types.ExtractSingleBoolCommentTag("+", key, false, lines) + if err != nil { + glog.Fatalf(err.Error()) + } + return val +} diff --git a/cmd/libs/go2idl/types/comments.go b/cmd/libs/go2idl/types/comments.go index 40187ae6228..8150c383875 100644 --- a/cmd/libs/go2idl/types/comments.go +++ b/cmd/libs/go2idl/types/comments.go @@ -19,29 +19,28 @@ limitations under the License. package types import ( + "fmt" "strings" ) // ExtractCommentTags parses comments for lines of the form: // -// 'marker'+"key1=value1,key2=value2". +// 'marker' + "key=value". // -// Values are optional; 'true' is the default. If a key is set multiple times, -// the last one wins. +// Values are optional; "" is the default. A tag can be specified more than +// one time and all values are returned. If the resulting map has an entry for +// a key, the value (a slice) is guaranteed to have at least 1 element. // -// Example: if you pass "+" for 'marker', and the following two lines are in +// Example: if you pass "+" for 'marker', and the following lines are in // the comments: -// +foo=value1,bar -// +foo=value2,baz="frobber" +// +foo=value1 +// +bar +// +foo=value2 +// +baz="qux" // Then this function will return: -// map[string]string{"foo":"value2", "bar": "true", "baz": "frobber"} -// -// TODO: Basically we need to define a standard way of giving instructions to -// autogenerators in the comments of a type. This is a first iteration of that. -// TODO: allow multiple values per key? -func ExtractCommentTags(marker, allLines string) map[string]string { - lines := strings.Split(allLines, "\n") - out := map[string]string{} +// map[string][]string{"foo":{"value1, "value2"}, "bar": {""}, "baz": {"qux"}} +func ExtractCommentTags(marker string, lines []string) map[string][]string { + out := map[string][]string{} for _, line := range lines { line = strings.Trim(line, " ") if len(line) == 0 { @@ -50,15 +49,34 @@ func ExtractCommentTags(marker, allLines string) map[string]string { if !strings.HasPrefix(line, marker) { continue } - pairs := strings.Split(line[len(marker):], ",") - for _, p := range pairs { - kv := strings.Split(p, "=") - if len(kv) == 2 { - out[kv[0]] = kv[1] - } else if len(kv) == 1 { - out[kv[0]] = "true" - } + // TODO: we could support multiple values per key if we split on spaces + kv := strings.SplitN(line[len(marker):], "=", 2) + if len(kv) == 2 { + out[kv[0]] = append(out[kv[0]], kv[1]) + } else if len(kv) == 1 { + out[kv[0]] = append(out[kv[0]], "") } } return out } + +// ExtractSingleBoolCommentTag parses comments for lines of the form: +// +// 'marker' + "key=value1" +// +// If the tag is not found, the default value is returned. Values are asserted +// to be boolean ("true" or "false"), and any other value will cause an error +// to be returned. If the key has multiple values, the first one will be used. +func ExtractSingleBoolCommentTag(marker string, key string, defaultVal bool, lines []string) (bool, error) { + values := ExtractCommentTags(marker, lines)[key] + if values == nil { + return defaultVal, nil + } + if values[0] == "true" { + return true, nil + } + if values[0] == "false" { + return false, nil + } + return false, fmt.Errorf("tag value for %q is not boolean: %q", key, values[0]) +} diff --git a/cmd/libs/go2idl/types/comments_test.go b/cmd/libs/go2idl/types/comments_test.go index 154dcafdf44..161f4a6e98c 100644 --- a/cmd/libs/go2idl/types/comments_test.go +++ b/cmd/libs/go2idl/types/comments_test.go @@ -18,18 +18,69 @@ package types import ( "reflect" + "strings" "testing" ) func TestExtractCommentTags(t *testing.T) { - commentLines := ` -Human comment that is ignored. -+foo=value1,bar -+foo=value2,baz=frobber -` + commentLines := []string{ + "Human comment that is ignored.", + "+foo=value1", + "+bar", + "+foo=value2", + "+baz=qux,zrb=true", + } + a := ExtractCommentTags("+", commentLines) - e := map[string]string{"foo": "value2", "bar": "true", "baz": "frobber"} + e := map[string][]string{ + "foo": {"value1", "value2"}, + "bar": {""}, + "baz": {"qux,zrb=true"}, + } if !reflect.DeepEqual(e, a) { - t.Errorf("Wanted %#v, got %#v", e, a) + t.Errorf("Wanted %q, got %q", e, a) + } +} + +func TestExtractSingleBoolCommentTag(t *testing.T) { + commentLines := []string{ + "Human comment that is ignored.", + "+TRUE=true", + "+FALSE=false", + "+MULTI=true", + "+MULTI=false", + "+MULTI=multi", + "+NOTBOOL=blue", + "+EMPTY", + } + + testCases := []struct { + key string + def bool + exp bool + err string // if set, ignore exp. + }{ + {"TRUE", false, true, ""}, + {"FALSE", true, false, ""}, + {"MULTI", false, true, ""}, + {"NOTBOOL", false, true, "is not boolean"}, + {"EMPTY", false, true, "is not boolean"}, + {"ABSENT", true, true, ""}, + {"ABSENT", false, false, ""}, + } + + for i, tc := range testCases { + v, err := ExtractSingleBoolCommentTag("+", tc.key, tc.def, commentLines) + if err != nil && tc.err == "" { + t.Errorf("[%d]: unexpected failure: %v", i, err) + } else if err == nil && tc.err != "" { + t.Errorf("[%d]: expected failure: %v", i, tc.err) + } else if err != nil { + if !strings.Contains(err.Error(), tc.err) { + t.Errorf("[%d]: unexpected error: expected %q, got %q", i, tc.err, err) + } + } else if v != tc.exp { + t.Errorf("[%d]: unexpected value: expected %t, got %t", i, tc.exp, v) + } } } diff --git a/cmd/libs/go2idl/types/types.go b/cmd/libs/go2idl/types/types.go index 23693fdafaa..b6e9391d716 100644 --- a/cmd/libs/go2idl/types/types.go +++ b/cmd/libs/go2idl/types/types.go @@ -89,9 +89,12 @@ type Package struct { // 'package x' line. Name string - // Comments from doc.go file. + // DocComments from doc.go, if any. DocComments []string + // Comments from doc.go, if any. + Comments []string + // Types within this package, indexed by their name (*not* including // package name). Types map[string]*Type @@ -235,7 +238,7 @@ type Type struct { // If there are comment lines immediately before the type definition, // they will be recorded here. - CommentLines string + CommentLines []string // If there are comment lines preceding the `CommentLines`, they will be // recorded here. There are two cases: @@ -252,7 +255,7 @@ type Type struct { // a blank line // type definition // --- - SecondClosestCommentLines string + SecondClosestCommentLines []string // If Kind == Struct Members []Member @@ -267,10 +270,10 @@ type Type struct { // If Kind == DeclarationOf, this is the type of the declaration. Underlying *Type - // If Kind == Interface, this is the list of all required functions. + // If Kind == Interface, this is the set of all required functions. // Otherwise, if this is a named type, this is the list of methods that // type has. (All elements will have Kind=="Func") - Methods []*Type + Methods map[string]*Type // If Kind == func, this is the signature of the function. Signature *Signature @@ -285,9 +288,32 @@ func (t *Type) String() string { return t.Name.String() } -// IsAssignable returns whether the type is assignable. +// IsPrimitive returns whether the type is a built-in type or is an alias to a +// built-in type. For example: strings and aliases of strings are primitives, +// structs are not. +func (t *Type) IsPrimitive() bool { + if t.Kind == Builtin || (t.Kind == Alias && t.Underlying.Kind == Builtin) { + return true + } + return false +} + +// IsAssignable returns whether the type is deep-assignable. For example, +// slices and maps and pointers are shallow copies, but ints and strings are +// complete. func (t *Type) IsAssignable() bool { - return t.Kind == Builtin || (t.Kind == Alias && t.Underlying.Kind == Builtin) + if t.IsPrimitive() { + return true + } + if t.Kind == Struct { + for _, m := range t.Members { + if !m.Type.IsAssignable() { + return false + } + } + return true + } + return false } // IsAnonymousStruct returns true if the type is an anonymous struct or an alias @@ -307,7 +333,7 @@ type Member struct { // If there are comment lines immediately before the member in the type // definition, they will be recorded here. - CommentLines string + CommentLines []string // If there are tags along with this member, they will be saved here. Tags string @@ -335,7 +361,7 @@ type Signature struct { // If there are comment lines immediately before this // signature/method/function declaration, they will be recorded here. - CommentLines string + CommentLines []string } // Built in types. diff --git a/cmd/libs/go2idl/types/types_test.go b/cmd/libs/go2idl/types/types_test.go index ff6b69cb313..35cc4d61d73 100644 --- a/cmd/libs/go2idl/types/types_test.go +++ b/cmd/libs/go2idl/types/types_test.go @@ -45,3 +45,166 @@ func TestGetMarker(t *testing.T) { t.Errorf("Expected marker type.") } } + +func Test_Type_IsPrimitive(t *testing.T) { + testCases := []struct { + typ Type + expect bool + }{ + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Builtin, + }, + expect: true, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Alias, + Underlying: &Type{ + Name: Name{Package: "pkgname", Name: "underlying"}, + Kind: Builtin, + }, + }, + expect: true, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Pointer, + Elem: &Type{ + Name: Name{Package: "pkgname", Name: "pointee"}, + Kind: Builtin, + }, + }, + expect: false, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Struct, + }, + expect: false, + }, + } + + for i, tc := range testCases { + r := tc.typ.IsPrimitive() + if r != tc.expect { + t.Errorf("case[%d]: expected %t, got %t", i, tc.expect, r) + } + } +} + +func Test_Type_IsAssignable(t *testing.T) { + testCases := []struct { + typ Type + expect bool + }{ + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Builtin, + }, + expect: true, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Alias, + Underlying: &Type{ + Name: Name{Package: "pkgname", Name: "underlying"}, + Kind: Builtin, + }, + }, + expect: true, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Pointer, + Elem: &Type{ + Name: Name{Package: "pkgname", Name: "pointee"}, + Kind: Builtin, + }, + }, + expect: false, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Struct, // Empty struct + }, + expect: true, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Struct, + Members: []Member{ + { + Name: "m1", + Type: &Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Builtin, + }, + }, + { + Name: "m2", + Type: &Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Alias, + Underlying: &Type{ + Name: Name{Package: "pkgname", Name: "underlying"}, + Kind: Builtin, + }, + }, + }, + { + Name: "m3", + Type: &Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Struct, // Empty struct + }, + }, + }, + }, + expect: true, + }, + { + typ: Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Struct, + Members: []Member{ + { + Name: "m1", + Type: &Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Builtin, + }, + }, + { + Name: "m2", + Type: &Type{ + Name: Name{Package: "pkgname", Name: "typename"}, + Kind: Pointer, + Elem: &Type{ + Name: Name{Package: "pkgname", Name: "pointee"}, + Kind: Builtin, + }, + }, + }, + }, + }, + expect: false, + }, + } + + for i, tc := range testCases { + r := tc.typ.IsAssignable() + if r != tc.expect { + t.Errorf("case[%d]: expected %t, got %t", i, tc.expect, r) + } + } +} diff --git a/docs/devel/adding-an-APIGroup.md b/docs/devel/adding-an-APIGroup.md index c219776167a..63c4e2a2d69 100644 --- a/docs/devel/adding-an-APIGroup.md +++ b/docs/devel/adding-an-APIGroup.md @@ -75,12 +75,14 @@ cmd/libs/go2idl/ tool. 1. Generate conversions and deep-copies: 1. Add your "group/" or "group/version" into - cmd/libs/go2idl/{conversion-gen, deep-copy-gen}/main.go; + cmd/libs/go2idl/conversion-gen/main.go; 2. Make sure your pkg/apis/``/`` directory has a doc.go file + with the comment `// +k8s:deepcopy-gen=package,register`, to catch the + attention of our generation tools. + 3. Make sure your pkg/apis/``/`` directory has a doc.go file with the comment `// +genconversion=true`, to catch the attention of our gen-conversion script. - 3. Run hack/update-all.sh. - + 4. Run hack/update-all.sh. 2. Generate files for Ugorji codec: diff --git a/docs/devel/api_changes.md b/docs/devel/api_changes.md index c95d07364cf..d5ead760244 100644 --- a/docs/devel/api_changes.md +++ b/docs/devel/api_changes.md @@ -468,12 +468,11 @@ regenerate auto-generated ones. To regenerate them run: hack/update-codegen.sh ``` -update-codegen will also generate code to handle deep copy of your versioned -api objects. The deep copy code resides with each versioned API: - - `pkg/api//deep_copy_generated.go` containing auto-generated copy functions - - `pkg/apis/extensions//deep_copy_generated.go` containing auto-generated copy functions +As part of the build, kubernetes will also generate code to handle deep copy of +your versioned api objects. The deep copy code resides with each versioned API: + - `/zz_generated.deep_copy.go` containing auto-generated copy functions -If running the above script is impossible due to compile errors, the easiest +If regeneration is somehow not possible due to compile errors, the easiest workaround is to comment out the code causing errors and let the script to regenerate it. If the auto-generated conversion methods are not used by the manually-written ones, it's fine to just remove the whole file and let the diff --git a/federation/apis/core/deep_copy.go b/federation/apis/core/deep_copy.go deleted file mode 100644 index d83bffc81d8..00000000000 --- a/federation/apis/core/deep_copy.go +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright 2016 The Kubernetes Authors. - -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 core - -import ( - "k8s.io/kubernetes/pkg/api" - "k8s.io/kubernetes/pkg/runtime" -) - -func addDeepCopyFuncs(scheme *runtime.Scheme) { - if err := scheme.AddGeneratedDeepCopyFuncs( - api.DeepCopy_api_DeleteOptions, - api.DeepCopy_api_ExportOptions, - api.DeepCopy_api_List, - api.DeepCopy_api_ListOptions, - api.DeepCopy_api_ObjectMeta, - api.DeepCopy_api_ObjectReference, - api.DeepCopy_api_OwnerReference, - api.DeepCopy_api_Service, - api.DeepCopy_api_ServiceList, - api.DeepCopy_api_ServicePort, - api.DeepCopy_api_ServiceSpec, - api.DeepCopy_api_ServiceStatus, - ); err != nil { - // if one of the deep copy functions is malformed, detect it immediately. - panic(err) - } -} diff --git a/federation/apis/core/register.go b/federation/apis/core/register.go index c045520af88..c4d1c289e08 100644 --- a/federation/apis/core/register.go +++ b/federation/apis/core/register.go @@ -73,7 +73,6 @@ func AddToScheme(scheme *runtime.Scheme) { &unversioned.APIResourceList{}, ) - addDeepCopyFuncs(scheme) addDefaultingFuncs(scheme) addConversionFuncs(scheme) } diff --git a/federation/apis/core/v1/deep_copy.go b/federation/apis/core/v1/deep_copy.go deleted file mode 100644 index 23f8592c866..00000000000 --- a/federation/apis/core/v1/deep_copy.go +++ /dev/null @@ -1,42 +0,0 @@ -/* -Copyright 2016 The Kubernetes Authors. - -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" - "k8s.io/kubernetes/pkg/runtime" -) - -func addDeepCopyFuncs(scheme *runtime.Scheme) { - if err := scheme.AddGeneratedDeepCopyFuncs( - v1.DeepCopy_v1_DeleteOptions, - v1.DeepCopy_v1_ExportOptions, - v1.DeepCopy_v1_List, - v1.DeepCopy_v1_ListOptions, - v1.DeepCopy_v1_ObjectMeta, - v1.DeepCopy_v1_ObjectReference, - v1.DeepCopy_v1_OwnerReference, - v1.DeepCopy_v1_Service, - v1.DeepCopy_v1_ServiceList, - v1.DeepCopy_v1_ServicePort, - v1.DeepCopy_v1_ServiceSpec, - v1.DeepCopy_v1_ServiceStatus, - ); err != nil { - // if one of the deep copy functions is malformed, detect it immediately. - panic(err) - } -} diff --git a/federation/apis/core/v1/register.go b/federation/apis/core/v1/register.go index 0a3d87bb9a0..30054870f24 100644 --- a/federation/apis/core/v1/register.go +++ b/federation/apis/core/v1/register.go @@ -34,7 +34,6 @@ func AddToScheme(scheme *runtime.Scheme) { addKnownTypes(scheme) addConversionFuncs(scheme) addDefaultingFuncs(scheme) - addDeepCopyFuncs(scheme) } // Adds the list of known types to api.Scheme. diff --git a/federation/apis/federation/deep_copy_generated.go b/federation/apis/federation/deep_copy_generated.go index 79c11308401..455839d8a52 100644 --- a/federation/apis/federation/deep_copy_generated.go +++ b/federation/apis/federation/deep_copy_generated.go @@ -22,7 +22,6 @@ package federation import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -41,9 +40,7 @@ func init() { } func DeepCopy_federation_Cluster(in Cluster, out *Cluster, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -59,24 +56,16 @@ func DeepCopy_federation_Cluster(in Cluster, out *Cluster, c *conversion.Cloner) func DeepCopy_federation_ClusterCondition(in ClusterCondition, out *ClusterCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_federation_ClusterList(in ClusterList, out *ClusterList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Cluster, len(in)) @@ -96,9 +85,7 @@ func DeepCopy_federation_ClusterSpec(in ClusterSpec, out *ClusterSpec, c *conver in, out := in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs *out = make([]ServerAddressByClientCIDR, len(in)) for i := range in { - if err := DeepCopy_federation_ServerAddressByClientCIDR(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ServerAddressByClientCIDRs = nil @@ -106,9 +93,7 @@ func DeepCopy_federation_ClusterSpec(in ClusterSpec, out *ClusterSpec, c *conver if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(api.LocalObjectReference) - if err := api.DeepCopy_api_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } diff --git a/pkg/api/resource/deep_copy.go b/federation/apis/federation/doc.go similarity index 66% rename from pkg/api/resource/deep_copy.go rename to federation/apis/federation/doc.go index 4052a4823c0..7a45fb7bb8c 100644 --- a/pkg/api/resource/deep_copy.go +++ b/federation/apis/federation/doc.go @@ -14,19 +14,6 @@ See the License for the specific language governing permissions and limitations under the License. */ -package resource +// +k8s:deepcopy-gen=package,register -import ( - inf "gopkg.in/inf.v0" - - conversion "k8s.io/kubernetes/pkg/conversion" -) - -func DeepCopy_resource_Quantity(in Quantity, out *Quantity, c *conversion.Cloner) error { - *out = in - if in.d.Dec != nil { - tmp := &inf.Dec{} - out.d.Dec = tmp.Set(in.d.Dec) - } - return nil -} +package federation diff --git a/federation/apis/federation/types.go b/federation/apis/federation/types.go index c80603fd6b9..c3ee0eab83a 100644 --- a/federation/apis/federation/types.go +++ b/federation/apis/federation/types.go @@ -82,7 +82,8 @@ type ClusterStatus struct { Region string `json:"region,omitempty"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Information about a registered cluster in a federated kubernetes setup. Clusters are not namespaced and have unique names in the federation. type Cluster struct { diff --git a/federation/apis/federation/v1beta1/deep_copy_generated.go b/federation/apis/federation/v1beta1/deep_copy_generated.go index ccbed1c4ee8..2fd58fa4c61 100644 --- a/federation/apis/federation/v1beta1/deep_copy_generated.go +++ b/federation/apis/federation/v1beta1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1beta1 import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" v1 "k8s.io/kubernetes/pkg/api/v1" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -42,9 +41,7 @@ func init() { } func DeepCopy_v1beta1_Cluster(in Cluster, out *Cluster, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -60,24 +57,16 @@ func DeepCopy_v1beta1_Cluster(in Cluster, out *Cluster, c *conversion.Cloner) er func DeepCopy_v1beta1_ClusterCondition(in ClusterCondition, out *ClusterCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_v1beta1_ClusterList(in ClusterList, out *ClusterList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Cluster, len(in)) @@ -97,9 +86,7 @@ func DeepCopy_v1beta1_ClusterSpec(in ClusterSpec, out *ClusterSpec, c *conversio in, out := in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs *out = make([]ServerAddressByClientCIDR, len(in)) for i := range in { - if err := DeepCopy_v1beta1_ServerAddressByClientCIDR(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ServerAddressByClientCIDRs = nil @@ -107,9 +94,7 @@ func DeepCopy_v1beta1_ClusterSpec(in ClusterSpec, out *ClusterSpec, c *conversio if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(v1.LocalObjectReference) - if err := v1.DeepCopy_v1_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } diff --git a/federation/apis/federation/v1beta1/doc.go b/federation/apis/federation/v1beta1/doc.go index ac2fd00ba91..8eebd4e8795 100644 --- a/federation/apis/federation/v1beta1/doc.go +++ b/federation/apis/federation/v1beta1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1beta1 diff --git a/federation/apis/federation/v1beta1/types.go b/federation/apis/federation/v1beta1/types.go index 42a07667394..a69608b204c 100644 --- a/federation/apis/federation/v1beta1/types.go +++ b/federation/apis/federation/v1beta1/types.go @@ -82,7 +82,8 @@ type ClusterStatus struct { Region string `json:"region,omitempty" protobuf:"bytes,6,opt,name=region"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Information about a registered cluster in a federated kubernetes setup. Clusters are not namespaced and have unique names in the federation. type Cluster struct { diff --git a/hack/update-codegen.sh b/hack/update-codegen.sh index 979422d36bf..9d5df48b903 100755 --- a/hack/update-codegen.sh +++ b/hack/update-codegen.sh @@ -48,7 +48,34 @@ ${clientgen} --clientset-name="release_1_4" --input="api/v1,extensions/v1beta1,a ${clientgen} --clientset-name=federation_internalclientset --clientset-path=k8s.io/kubernetes/federation/client/clientset_generated --input="../../federation/apis/federation/","api/" --included-types-overrides="api/Service" "$@" ${clientgen} --clientset-name=federation_release_1_4 --clientset-path=k8s.io/kubernetes/federation/client/clientset_generated --input="../../federation/apis/federation/v1beta1","api/v1" --included-types-overrides="api/v1/Service" "$@" ${conversiongen} "$@" -${deepcopygen} "$@" ${setgen} "$@" # You may add additional calls of code generators like set-gen above. + +# Generate a list of all files that have a `+k8s:` comment-tag. This will be +# used to derive lists of files/dirs for generation tools. +ALL_K8S_TAG_FILES=$( + grep -l '^// \?+k8s:' $( + find . \ + -not \( \ + \( \ + -path ./vendor -o \ + -path ./_output -o \ + -path ./.git \ + \) -prune \ + \) \ + -type f -name \*.go \ + | sed 's|^./||' + ) + ) +DEEP_COPY_DIRS=$( + grep -l '+k8s:deepcopy-gen=' ${ALL_K8S_TAG_FILES} \ + | xargs dirname \ + | sort -u + ) +INPUTS=$( + for d in ${DEEP_COPY_DIRS}; do + echo k8s.io/kubernetes/$d + done | paste -sd, + ) +${deepcopygen} -i ${INPUTS} diff --git a/hack/verify-flags/known-flags.txt b/hack/verify-flags/known-flags.txt index e41a3c22cec..e85f40967cc 100644 --- a/hack/verify-flags/known-flags.txt +++ b/hack/verify-flags/known-flags.txt @@ -35,6 +35,7 @@ bench-workers bind-address bind-pods-burst bind-pods-qps +bounding-dirs build-only build-services build-tag @@ -339,6 +340,7 @@ out-version outofdisk-transition-frequency output-base output-directory +output-file-base output-package output-print-type output-version diff --git a/pkg/api/deep_copy_generated.go b/pkg/api/deep_copy_generated.go index 3dc99344819..340f3656138 100644 --- a/pkg/api/deep_copy_generated.go +++ b/pkg/api/deep_copy_generated.go @@ -21,14 +21,12 @@ limitations under the License. package api import ( - resource "k8s.io/kubernetes/pkg/api/resource" unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" fields "k8s.io/kubernetes/pkg/fields" labels "k8s.io/kubernetes/pkg/labels" runtime "k8s.io/kubernetes/pkg/runtime" types "k8s.io/kubernetes/pkg/types" - intstr "k8s.io/kubernetes/pkg/util/intstr" ) func init() { @@ -243,15 +241,11 @@ func DeepCopy_api_AzureFileVolumeSource(in AzureFileVolumeSource, out *AzureFile } func DeepCopy_api_Binding(in Binding, out *Binding, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_api_ObjectReference(in.Target, &out.Target, c); err != nil { - return err - } + out.Target = in.Target return nil } @@ -291,9 +285,7 @@ func DeepCopy_api_CephFSVolumeSource(in CephFSVolumeSource, out *CephFSVolumeSou if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) - if err := DeepCopy_api_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } @@ -317,9 +309,7 @@ func DeepCopy_api_ComponentCondition(in ComponentCondition, out *ComponentCondit } func DeepCopy_api_ComponentStatus(in ComponentStatus, out *ComponentStatus, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -327,9 +317,7 @@ func DeepCopy_api_ComponentStatus(in ComponentStatus, out *ComponentStatus, c *c in, out := in.Conditions, &out.Conditions *out = make([]ComponentCondition, len(in)) for i := range in { - if err := DeepCopy_api_ComponentCondition(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Conditions = nil @@ -338,12 +326,8 @@ func DeepCopy_api_ComponentStatus(in ComponentStatus, out *ComponentStatus, c *c } func DeepCopy_api_ComponentStatusList(in ComponentStatusList, out *ComponentStatusList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ComponentStatus, len(in)) @@ -359,9 +343,7 @@ func DeepCopy_api_ComponentStatusList(in ComponentStatusList, out *ComponentStat } func DeepCopy_api_ConfigMap(in ConfigMap, out *ConfigMap, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -378,20 +360,14 @@ func DeepCopy_api_ConfigMap(in ConfigMap, out *ConfigMap, c *conversion.Cloner) } func DeepCopy_api_ConfigMapKeySelector(in ConfigMapKeySelector, out *ConfigMapKeySelector, c *conversion.Cloner) error { - if err := DeepCopy_api_LocalObjectReference(in.LocalObjectReference, &out.LocalObjectReference, c); err != nil { - return err - } + out.LocalObjectReference = in.LocalObjectReference out.Key = in.Key return nil } func DeepCopy_api_ConfigMapList(in ConfigMapList, out *ConfigMapList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ConfigMap, len(in)) @@ -407,16 +383,12 @@ func DeepCopy_api_ConfigMapList(in ConfigMapList, out *ConfigMapList, c *convers } func DeepCopy_api_ConfigMapVolumeSource(in ConfigMapVolumeSource, out *ConfigMapVolumeSource, c *conversion.Cloner) error { - if err := DeepCopy_api_LocalObjectReference(in.LocalObjectReference, &out.LocalObjectReference, c); err != nil { - return err - } + out.LocalObjectReference = in.LocalObjectReference if in.Items != nil { in, out := in.Items, &out.Items *out = make([]KeyToPath, len(in)) for i := range in { - if err := DeepCopy_api_KeyToPath(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Items = nil @@ -446,9 +418,7 @@ func DeepCopy_api_Container(in Container, out *Container, c *conversion.Cloner) in, out := in.Ports, &out.Ports *out = make([]ContainerPort, len(in)) for i := range in { - if err := DeepCopy_api_ContainerPort(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ports = nil @@ -471,9 +441,7 @@ func DeepCopy_api_Container(in Container, out *Container, c *conversion.Cloner) in, out := in.VolumeMounts, &out.VolumeMounts *out = make([]VolumeMount, len(in)) for i := range in { - if err := DeepCopy_api_VolumeMount(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.VolumeMounts = nil @@ -547,9 +515,7 @@ func DeepCopy_api_ContainerState(in ContainerState, out *ContainerState, c *conv if in.Waiting != nil { in, out := in.Waiting, &out.Waiting *out = new(ContainerStateWaiting) - if err := DeepCopy_api_ContainerStateWaiting(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Waiting = nil } @@ -575,9 +541,7 @@ func DeepCopy_api_ContainerState(in ContainerState, out *ContainerState, c *conv } func DeepCopy_api_ContainerStateRunning(in ContainerStateRunning, out *ContainerStateRunning, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_Time(in.StartedAt, &out.StartedAt, c); err != nil { - return err - } + out.StartedAt = in.StartedAt.DeepCopy() return nil } @@ -586,12 +550,8 @@ func DeepCopy_api_ContainerStateTerminated(in ContainerStateTerminated, out *Con out.Signal = in.Signal out.Reason = in.Reason out.Message = in.Message - if err := unversioned.DeepCopy_unversioned_Time(in.StartedAt, &out.StartedAt, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.FinishedAt, &out.FinishedAt, c); err != nil { - return err - } + out.StartedAt = in.StartedAt.DeepCopy() + out.FinishedAt = in.FinishedAt.DeepCopy() out.ContainerID = in.ContainerID return nil } @@ -643,9 +603,7 @@ func DeepCopy_api_DaemonEndpoint(in DaemonEndpoint, out *DaemonEndpoint, c *conv } func DeepCopy_api_DeleteOptions(in DeleteOptions, out *DeleteOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if in.GracePeriodSeconds != nil { in, out := in.GracePeriodSeconds, &out.GracePeriodSeconds *out = new(int64) @@ -677,9 +635,7 @@ func DeepCopy_api_DownwardAPIVolumeFile(in DownwardAPIVolumeFile, out *DownwardA if in.FieldRef != nil { in, out := in.FieldRef, &out.FieldRef *out = new(ObjectFieldSelector) - if err := DeepCopy_api_ObjectFieldSelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.FieldRef = nil } @@ -721,9 +677,7 @@ func DeepCopy_api_EndpointAddress(in EndpointAddress, out *EndpointAddress, c *c if in.TargetRef != nil { in, out := in.TargetRef, &out.TargetRef *out = new(ObjectReference) - if err := DeepCopy_api_ObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.TargetRef = nil } @@ -764,9 +718,7 @@ func DeepCopy_api_EndpointSubset(in EndpointSubset, out *EndpointSubset, c *conv in, out := in.Ports, &out.Ports *out = make([]EndpointPort, len(in)) for i := range in { - if err := DeepCopy_api_EndpointPort(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ports = nil @@ -775,9 +727,7 @@ func DeepCopy_api_EndpointSubset(in EndpointSubset, out *EndpointSubset, c *conv } func DeepCopy_api_Endpoints(in Endpoints, out *Endpoints, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -796,12 +746,8 @@ func DeepCopy_api_Endpoints(in Endpoints, out *Endpoints, c *conversion.Cloner) } func DeepCopy_api_EndpointsList(in EndpointsList, out *EndpointsList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Endpoints, len(in)) @@ -835,9 +781,7 @@ func DeepCopy_api_EnvVarSource(in EnvVarSource, out *EnvVarSource, c *conversion if in.FieldRef != nil { in, out := in.FieldRef, &out.FieldRef *out = new(ObjectFieldSelector) - if err := DeepCopy_api_ObjectFieldSelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.FieldRef = nil } @@ -853,18 +797,14 @@ func DeepCopy_api_EnvVarSource(in EnvVarSource, out *EnvVarSource, c *conversion if in.ConfigMapKeyRef != nil { in, out := in.ConfigMapKeyRef, &out.ConfigMapKeyRef *out = new(ConfigMapKeySelector) - if err := DeepCopy_api_ConfigMapKeySelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ConfigMapKeyRef = nil } if in.SecretKeyRef != nil { in, out := in.SecretKeyRef, &out.SecretKeyRef *out = new(SecretKeySelector) - if err := DeepCopy_api_SecretKeySelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretKeyRef = nil } @@ -872,38 +812,24 @@ func DeepCopy_api_EnvVarSource(in EnvVarSource, out *EnvVarSource, c *conversion } func DeepCopy_api_Event(in Event, out *Event, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_api_ObjectReference(in.InvolvedObject, &out.InvolvedObject, c); err != nil { - return err - } + out.InvolvedObject = in.InvolvedObject out.Reason = in.Reason out.Message = in.Message - if err := DeepCopy_api_EventSource(in.Source, &out.Source, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.FirstTimestamp, &out.FirstTimestamp, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTimestamp, &out.LastTimestamp, c); err != nil { - return err - } + out.Source = in.Source + out.FirstTimestamp = in.FirstTimestamp.DeepCopy() + out.LastTimestamp = in.LastTimestamp.DeepCopy() out.Count = in.Count out.Type = in.Type return nil } func DeepCopy_api_EventList(in EventList, out *EventList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Event, len(in)) @@ -936,9 +862,7 @@ func DeepCopy_api_ExecAction(in ExecAction, out *ExecAction, c *conversion.Clone } func DeepCopy_api_ExportOptions(in ExportOptions, out *ExportOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Export = in.Export out.Exact = in.Exact return nil @@ -970,9 +894,7 @@ func DeepCopy_api_FlexVolumeSource(in FlexVolumeSource, out *FlexVolumeSource, c if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) - if err := DeepCopy_api_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } @@ -1018,18 +940,14 @@ func DeepCopy_api_GlusterfsVolumeSource(in GlusterfsVolumeSource, out *Glusterfs func DeepCopy_api_HTTPGetAction(in HTTPGetAction, out *HTTPGetAction, c *conversion.Cloner) error { out.Path = in.Path - if err := intstr.DeepCopy_intstr_IntOrString(in.Port, &out.Port, c); err != nil { - return err - } + out.Port = in.Port out.Host = in.Host out.Scheme = in.Scheme if in.HTTPHeaders != nil { in, out := in.HTTPHeaders, &out.HTTPHeaders *out = make([]HTTPHeader, len(in)) for i := range in { - if err := DeepCopy_api_HTTPHeader(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.HTTPHeaders = nil @@ -1065,9 +983,7 @@ func DeepCopy_api_Handler(in Handler, out *Handler, c *conversion.Cloner) error if in.TCPSocket != nil { in, out := in.TCPSocket, &out.TCPSocket *out = new(TCPSocketAction) - if err := DeepCopy_api_TCPSocketAction(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.TCPSocket = nil } @@ -1118,9 +1034,7 @@ func DeepCopy_api_Lifecycle(in Lifecycle, out *Lifecycle, c *conversion.Cloner) } func DeepCopy_api_LimitRange(in LimitRange, out *LimitRange, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -1136,11 +1050,7 @@ func DeepCopy_api_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conv in, out := in.Max, &out.Max *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Max = nil @@ -1149,11 +1059,7 @@ func DeepCopy_api_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conv in, out := in.Min, &out.Min *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Min = nil @@ -1162,11 +1068,7 @@ func DeepCopy_api_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conv in, out := in.Default, &out.Default *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Default = nil @@ -1175,11 +1077,7 @@ func DeepCopy_api_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conv in, out := in.DefaultRequest, &out.DefaultRequest *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.DefaultRequest = nil @@ -1188,11 +1086,7 @@ func DeepCopy_api_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conv in, out := in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.MaxLimitRequestRatio = nil @@ -1201,12 +1095,8 @@ func DeepCopy_api_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conv } func DeepCopy_api_LimitRangeList(in LimitRangeList, out *LimitRangeList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]LimitRange, len(in)) @@ -1237,12 +1127,8 @@ func DeepCopy_api_LimitRangeSpec(in LimitRangeSpec, out *LimitRangeSpec, c *conv } func DeepCopy_api_List(in List, out *List, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]runtime.Object, len(in)) @@ -1260,9 +1146,7 @@ func DeepCopy_api_List(in List, out *List, c *conversion.Cloner) error { } func DeepCopy_api_ListOptions(in ListOptions, out *ListOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if in.LabelSelector == nil { out.LabelSelector = nil } else if newVal, err := c.DeepCopy(in.LabelSelector); err != nil { @@ -1300,9 +1184,7 @@ func DeepCopy_api_LoadBalancerStatus(in LoadBalancerStatus, out *LoadBalancerSta in, out := in.Ingress, &out.Ingress *out = make([]LoadBalancerIngress, len(in)) for i := range in { - if err := DeepCopy_api_LoadBalancerIngress(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ingress = nil @@ -1323,28 +1205,20 @@ func DeepCopy_api_NFSVolumeSource(in NFSVolumeSource, out *NFSVolumeSource, c *c } func DeepCopy_api_Namespace(in Namespace, out *Namespace, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_api_NamespaceSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_api_NamespaceStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_api_NamespaceList(in NamespaceList, out *NamespaceList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Namespace, len(in)) @@ -1378,15 +1252,11 @@ func DeepCopy_api_NamespaceStatus(in NamespaceStatus, out *NamespaceStatus, c *c } func DeepCopy_api_Node(in Node, out *Node, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_api_NodeSpec(in.Spec, &out.Spec, c); err != nil { - return err - } + out.Spec = in.Spec if err := DeepCopy_api_NodeStatus(in.Status, &out.Status, c); err != nil { return err } @@ -1426,31 +1296,21 @@ func DeepCopy_api_NodeAffinity(in NodeAffinity, out *NodeAffinity, c *conversion func DeepCopy_api_NodeCondition(in NodeCondition, out *NodeCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastHeartbeatTime, &out.LastHeartbeatTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastHeartbeatTime = in.LastHeartbeatTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_api_NodeDaemonEndpoints(in NodeDaemonEndpoints, out *NodeDaemonEndpoints, c *conversion.Cloner) error { - if err := DeepCopy_api_DaemonEndpoint(in.KubeletEndpoint, &out.KubeletEndpoint, c); err != nil { - return err - } + out.KubeletEndpoint = in.KubeletEndpoint return nil } func DeepCopy_api_NodeList(in NodeList, out *NodeList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Node, len(in)) @@ -1466,9 +1326,7 @@ func DeepCopy_api_NodeList(in NodeList, out *NodeList, c *conversion.Cloner) err } func DeepCopy_api_NodeProxyOptions(in NodeProxyOptions, out *NodeProxyOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Path = in.Path return nil } @@ -1478,11 +1336,7 @@ func DeepCopy_api_NodeResources(in NodeResources, out *NodeResources, c *convers in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -1546,11 +1400,7 @@ func DeepCopy_api_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Clone in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -1559,11 +1409,7 @@ func DeepCopy_api_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Clone in, out := in.Allocatable, &out.Allocatable *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Allocatable = nil @@ -1584,19 +1430,13 @@ func DeepCopy_api_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Clone in, out := in.Addresses, &out.Addresses *out = make([]NodeAddress, len(in)) for i := range in { - if err := DeepCopy_api_NodeAddress(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Addresses = nil } - if err := DeepCopy_api_NodeDaemonEndpoints(in.DaemonEndpoints, &out.DaemonEndpoints, c); err != nil { - return err - } - if err := DeepCopy_api_NodeSystemInfo(in.NodeInfo, &out.NodeInfo, c); err != nil { - return err - } + out.DaemonEndpoints = in.DaemonEndpoints + out.NodeInfo = in.NodeInfo if in.Images != nil { in, out := in.Images, &out.Images *out = make([]ContainerImage, len(in)) @@ -1621,9 +1461,7 @@ func DeepCopy_api_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Clone in, out := in.VolumesAttached, &out.VolumesAttached *out = make([]AttachedVolume, len(in)) for i := range in { - if err := DeepCopy_api_AttachedVolume(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.VolumesAttached = nil @@ -1659,15 +1497,11 @@ func DeepCopy_api_ObjectMeta(in ObjectMeta, out *ObjectMeta, c *conversion.Clone out.UID = in.UID out.ResourceVersion = in.ResourceVersion out.Generation = in.Generation - if err := unversioned.DeepCopy_unversioned_Time(in.CreationTimestamp, &out.CreationTimestamp, c); err != nil { - return err - } + out.CreationTimestamp = in.CreationTimestamp.DeepCopy() if in.DeletionTimestamp != nil { in, out := in.DeletionTimestamp, &out.DeletionTimestamp *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.DeletionTimestamp = nil } @@ -1744,25 +1578,19 @@ func DeepCopy_api_OwnerReference(in OwnerReference, out *OwnerReference, c *conv } func DeepCopy_api_PersistentVolume(in PersistentVolume, out *PersistentVolume, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_api_PersistentVolumeSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_api_PersistentVolumeStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_api_PersistentVolumeClaim(in PersistentVolumeClaim, out *PersistentVolumeClaim, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -1776,12 +1604,8 @@ func DeepCopy_api_PersistentVolumeClaim(in PersistentVolumeClaim, out *Persisten } func DeepCopy_api_PersistentVolumeClaimList(in PersistentVolumeClaimList, out *PersistentVolumeClaimList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PersistentVolumeClaim, len(in)) @@ -1837,11 +1661,7 @@ func DeepCopy_api_PersistentVolumeClaimStatus(in PersistentVolumeClaimStatus, ou in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -1856,12 +1676,8 @@ func DeepCopy_api_PersistentVolumeClaimVolumeSource(in PersistentVolumeClaimVolu } func DeepCopy_api_PersistentVolumeList(in PersistentVolumeList, out *PersistentVolumeList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PersistentVolume, len(in)) @@ -1880,45 +1696,35 @@ func DeepCopy_api_PersistentVolumeSource(in PersistentVolumeSource, out *Persist if in.GCEPersistentDisk != nil { in, out := in.GCEPersistentDisk, &out.GCEPersistentDisk *out = new(GCEPersistentDiskVolumeSource) - if err := DeepCopy_api_GCEPersistentDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.GCEPersistentDisk = nil } if in.AWSElasticBlockStore != nil { in, out := in.AWSElasticBlockStore, &out.AWSElasticBlockStore *out = new(AWSElasticBlockStoreVolumeSource) - if err := DeepCopy_api_AWSElasticBlockStoreVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AWSElasticBlockStore = nil } if in.HostPath != nil { in, out := in.HostPath, &out.HostPath *out = new(HostPathVolumeSource) - if err := DeepCopy_api_HostPathVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.HostPath = nil } if in.Glusterfs != nil { in, out := in.Glusterfs, &out.Glusterfs *out = new(GlusterfsVolumeSource) - if err := DeepCopy_api_GlusterfsVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Glusterfs = nil } if in.NFS != nil { in, out := in.NFS, &out.NFS *out = new(NFSVolumeSource) - if err := DeepCopy_api_NFSVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NFS = nil } @@ -1934,9 +1740,7 @@ func DeepCopy_api_PersistentVolumeSource(in PersistentVolumeSource, out *Persist if in.ISCSI != nil { in, out := in.ISCSI, &out.ISCSI *out = new(ISCSIVolumeSource) - if err := DeepCopy_api_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ISCSI = nil } @@ -1952,9 +1756,7 @@ func DeepCopy_api_PersistentVolumeSource(in PersistentVolumeSource, out *Persist if in.Cinder != nil { in, out := in.Cinder, &out.Cinder *out = new(CinderVolumeSource) - if err := DeepCopy_api_CinderVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Cinder = nil } @@ -1979,27 +1781,21 @@ func DeepCopy_api_PersistentVolumeSource(in PersistentVolumeSource, out *Persist if in.Flocker != nil { in, out := in.Flocker, &out.Flocker *out = new(FlockerVolumeSource) - if err := DeepCopy_api_FlockerVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Flocker = nil } if in.AzureFile != nil { in, out := in.AzureFile, &out.AzureFile *out = new(AzureFileVolumeSource) - if err := DeepCopy_api_AzureFileVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AzureFile = nil } if in.VsphereVolume != nil { in, out := in.VsphereVolume, &out.VsphereVolume *out = new(VsphereVirtualDiskVolumeSource) - if err := DeepCopy_api_VsphereVirtualDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.VsphereVolume = nil } @@ -2011,11 +1807,7 @@ func DeepCopy_api_PersistentVolumeSpec(in PersistentVolumeSpec, out *PersistentV in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -2035,9 +1827,7 @@ func DeepCopy_api_PersistentVolumeSpec(in PersistentVolumeSpec, out *PersistentV if in.ClaimRef != nil { in, out := in.ClaimRef, &out.ClaimRef *out = new(ObjectReference) - if err := DeepCopy_api_ObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ClaimRef = nil } @@ -2053,9 +1843,7 @@ func DeepCopy_api_PersistentVolumeStatus(in PersistentVolumeStatus, out *Persist } func DeepCopy_api_Pod(in Pod, out *Pod, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2142,9 +1930,7 @@ func DeepCopy_api_PodAntiAffinity(in PodAntiAffinity, out *PodAntiAffinity, c *c } func DeepCopy_api_PodAttachOptions(in PodAttachOptions, out *PodAttachOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Stdin = in.Stdin out.Stdout = in.Stdout out.Stderr = in.Stderr @@ -2156,21 +1942,15 @@ func DeepCopy_api_PodAttachOptions(in PodAttachOptions, out *PodAttachOptions, c func DeepCopy_api_PodCondition(in PodCondition, out *PodCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_api_PodExecOptions(in PodExecOptions, out *PodExecOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Stdin = in.Stdin out.Stdout = in.Stdout out.Stderr = in.Stderr @@ -2187,12 +1967,8 @@ func DeepCopy_api_PodExecOptions(in PodExecOptions, out *PodExecOptions, c *conv } func DeepCopy_api_PodList(in PodList, out *PodList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Pod, len(in)) @@ -2208,9 +1984,7 @@ func DeepCopy_api_PodList(in PodList, out *PodList, c *conversion.Cloner) error } func DeepCopy_api_PodLogOptions(in PodLogOptions, out *PodLogOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Container = in.Container out.Follow = in.Follow out.Previous = in.Previous @@ -2224,9 +1998,7 @@ func DeepCopy_api_PodLogOptions(in PodLogOptions, out *PodLogOptions, c *convers if in.SinceTime != nil { in, out := in.SinceTime, &out.SinceTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.SinceTime = nil } @@ -2249,9 +2021,7 @@ func DeepCopy_api_PodLogOptions(in PodLogOptions, out *PodLogOptions, c *convers } func DeepCopy_api_PodProxyOptions(in PodProxyOptions, out *PodProxyOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Path = in.Path return nil } @@ -2263,9 +2033,7 @@ func DeepCopy_api_PodSecurityContext(in PodSecurityContext, out *PodSecurityCont if in.SELinuxOptions != nil { in, out := in.SELinuxOptions, &out.SELinuxOptions *out = new(SELinuxOptions) - if err := DeepCopy_api_SELinuxOptions(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SELinuxOptions = nil } @@ -2374,9 +2142,7 @@ func DeepCopy_api_PodSpec(in PodSpec, out *PodSpec, c *conversion.Cloner) error in, out := in.ImagePullSecrets, &out.ImagePullSecrets *out = make([]LocalObjectReference, len(in)) for i := range in { - if err := DeepCopy_api_LocalObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ImagePullSecrets = nil @@ -2406,9 +2172,7 @@ func DeepCopy_api_PodStatus(in PodStatus, out *PodStatus, c *conversion.Cloner) if in.StartTime != nil { in, out := in.StartTime, &out.StartTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.StartTime = nil } @@ -2438,9 +2202,7 @@ func DeepCopy_api_PodStatus(in PodStatus, out *PodStatus, c *conversion.Cloner) } func DeepCopy_api_PodStatusResult(in PodStatusResult, out *PodStatusResult, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2451,9 +2213,7 @@ func DeepCopy_api_PodStatusResult(in PodStatusResult, out *PodStatusResult, c *c } func DeepCopy_api_PodTemplate(in PodTemplate, out *PodTemplate, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2464,12 +2224,8 @@ func DeepCopy_api_PodTemplate(in PodTemplate, out *PodTemplate, c *conversion.Cl } func DeepCopy_api_PodTemplateList(in PodTemplateList, out *PodTemplateList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PodTemplate, len(in)) @@ -2541,9 +2297,7 @@ func DeepCopy_api_RBDVolumeSource(in RBDVolumeSource, out *RBDVolumeSource, c *c if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) - if err := DeepCopy_api_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } @@ -2552,9 +2306,7 @@ func DeepCopy_api_RBDVolumeSource(in RBDVolumeSource, out *RBDVolumeSource, c *c } func DeepCopy_api_RangeAllocation(in RangeAllocation, out *RangeAllocation, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2570,28 +2322,20 @@ func DeepCopy_api_RangeAllocation(in RangeAllocation, out *RangeAllocation, c *c } func DeepCopy_api_ReplicationController(in ReplicationController, out *ReplicationController, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_api_ReplicationControllerSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_api_ReplicationControllerStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_api_ReplicationControllerList(in ReplicationControllerList, out *ReplicationControllerList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ReplicationController, len(in)) @@ -2639,16 +2383,12 @@ func DeepCopy_api_ReplicationControllerStatus(in ReplicationControllerStatus, ou func DeepCopy_api_ResourceFieldSelector(in ResourceFieldSelector, out *ResourceFieldSelector, c *conversion.Cloner) error { out.ContainerName = in.ContainerName out.Resource = in.Resource - if err := resource.DeepCopy_resource_Quantity(in.Divisor, &out.Divisor, c); err != nil { - return err - } + out.Divisor = in.Divisor.DeepCopy() return nil } func DeepCopy_api_ResourceQuota(in ResourceQuota, out *ResourceQuota, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2662,12 +2402,8 @@ func DeepCopy_api_ResourceQuota(in ResourceQuota, out *ResourceQuota, c *convers } func DeepCopy_api_ResourceQuotaList(in ResourceQuotaList, out *ResourceQuotaList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ResourceQuota, len(in)) @@ -2687,11 +2423,7 @@ func DeepCopy_api_ResourceQuotaSpec(in ResourceQuotaSpec, out *ResourceQuotaSpec in, out := in.Hard, &out.Hard *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Hard = nil @@ -2713,11 +2445,7 @@ func DeepCopy_api_ResourceQuotaStatus(in ResourceQuotaStatus, out *ResourceQuota in, out := in.Hard, &out.Hard *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Hard = nil @@ -2726,11 +2454,7 @@ func DeepCopy_api_ResourceQuotaStatus(in ResourceQuotaStatus, out *ResourceQuota in, out := in.Used, &out.Used *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Used = nil @@ -2743,11 +2467,7 @@ func DeepCopy_api_ResourceRequirements(in ResourceRequirements, out *ResourceReq in, out := in.Limits, &out.Limits *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Limits = nil @@ -2756,11 +2476,7 @@ func DeepCopy_api_ResourceRequirements(in ResourceRequirements, out *ResourceReq in, out := in.Requests, &out.Requests *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Requests = nil @@ -2777,9 +2493,7 @@ func DeepCopy_api_SELinuxOptions(in SELinuxOptions, out *SELinuxOptions, c *conv } func DeepCopy_api_Secret(in Secret, out *Secret, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2801,20 +2515,14 @@ func DeepCopy_api_Secret(in Secret, out *Secret, c *conversion.Cloner) error { } func DeepCopy_api_SecretKeySelector(in SecretKeySelector, out *SecretKeySelector, c *conversion.Cloner) error { - if err := DeepCopy_api_LocalObjectReference(in.LocalObjectReference, &out.LocalObjectReference, c); err != nil { - return err - } + out.LocalObjectReference = in.LocalObjectReference out.Key = in.Key return nil } func DeepCopy_api_SecretList(in SecretList, out *SecretList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Secret, len(in)) @@ -2835,9 +2543,7 @@ func DeepCopy_api_SecretVolumeSource(in SecretVolumeSource, out *SecretVolumeSou in, out := in.Items, &out.Items *out = make([]KeyToPath, len(in)) for i := range in { - if err := DeepCopy_api_KeyToPath(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Items = nil @@ -2865,9 +2571,7 @@ func DeepCopy_api_SecurityContext(in SecurityContext, out *SecurityContext, c *c if in.SELinuxOptions != nil { in, out := in.SELinuxOptions, &out.SELinuxOptions *out = new(SELinuxOptions) - if err := DeepCopy_api_SELinuxOptions(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SELinuxOptions = nil } @@ -2896,19 +2600,13 @@ func DeepCopy_api_SecurityContext(in SecurityContext, out *SecurityContext, c *c } func DeepCopy_api_SerializedReference(in SerializedReference, out *SerializedReference, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := DeepCopy_api_ObjectReference(in.Reference, &out.Reference, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.Reference = in.Reference return nil } func DeepCopy_api_Service(in Service, out *Service, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2922,9 +2620,7 @@ func DeepCopy_api_Service(in Service, out *Service, c *conversion.Cloner) error } func DeepCopy_api_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2932,9 +2628,7 @@ func DeepCopy_api_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conv in, out := in.Secrets, &out.Secrets *out = make([]ObjectReference, len(in)) for i := range in { - if err := DeepCopy_api_ObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Secrets = nil @@ -2943,9 +2637,7 @@ func DeepCopy_api_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conv in, out := in.ImagePullSecrets, &out.ImagePullSecrets *out = make([]LocalObjectReference, len(in)) for i := range in { - if err := DeepCopy_api_LocalObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ImagePullSecrets = nil @@ -2954,12 +2646,8 @@ func DeepCopy_api_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conv } func DeepCopy_api_ServiceAccountList(in ServiceAccountList, out *ServiceAccountList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ServiceAccount, len(in)) @@ -2975,12 +2663,8 @@ func DeepCopy_api_ServiceAccountList(in ServiceAccountList, out *ServiceAccountL } func DeepCopy_api_ServiceList(in ServiceList, out *ServiceList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Service, len(in)) @@ -2999,17 +2683,13 @@ func DeepCopy_api_ServicePort(in ServicePort, out *ServicePort, c *conversion.Cl out.Name = in.Name out.Protocol = in.Protocol out.Port = in.Port - if err := intstr.DeepCopy_intstr_IntOrString(in.TargetPort, &out.TargetPort, c); err != nil { - return err - } + out.TargetPort = in.TargetPort out.NodePort = in.NodePort return nil } func DeepCopy_api_ServiceProxyOptions(in ServiceProxyOptions, out *ServiceProxyOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Path = in.Path return nil } @@ -3020,9 +2700,7 @@ func DeepCopy_api_ServiceSpec(in ServiceSpec, out *ServiceSpec, c *conversion.Cl in, out := in.Ports, &out.Ports *out = make([]ServicePort, len(in)) for i := range in { - if err := DeepCopy_api_ServicePort(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ports = nil @@ -3064,9 +2742,7 @@ func DeepCopy_api_ServiceStatus(in ServiceStatus, out *ServiceStatus, c *convers } func DeepCopy_api_TCPSocketAction(in TCPSocketAction, out *TCPSocketAction, c *conversion.Cloner) error { - if err := intstr.DeepCopy_intstr_IntOrString(in.Port, &out.Port, c); err != nil { - return err - } + out.Port = in.Port return nil } @@ -3105,45 +2781,35 @@ func DeepCopy_api_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion if in.HostPath != nil { in, out := in.HostPath, &out.HostPath *out = new(HostPathVolumeSource) - if err := DeepCopy_api_HostPathVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.HostPath = nil } if in.EmptyDir != nil { in, out := in.EmptyDir, &out.EmptyDir *out = new(EmptyDirVolumeSource) - if err := DeepCopy_api_EmptyDirVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.EmptyDir = nil } if in.GCEPersistentDisk != nil { in, out := in.GCEPersistentDisk, &out.GCEPersistentDisk *out = new(GCEPersistentDiskVolumeSource) - if err := DeepCopy_api_GCEPersistentDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.GCEPersistentDisk = nil } if in.AWSElasticBlockStore != nil { in, out := in.AWSElasticBlockStore, &out.AWSElasticBlockStore *out = new(AWSElasticBlockStoreVolumeSource) - if err := DeepCopy_api_AWSElasticBlockStoreVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AWSElasticBlockStore = nil } if in.GitRepo != nil { in, out := in.GitRepo, &out.GitRepo *out = new(GitRepoVolumeSource) - if err := DeepCopy_api_GitRepoVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.GitRepo = nil } @@ -3159,36 +2825,28 @@ func DeepCopy_api_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion if in.NFS != nil { in, out := in.NFS, &out.NFS *out = new(NFSVolumeSource) - if err := DeepCopy_api_NFSVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NFS = nil } if in.ISCSI != nil { in, out := in.ISCSI, &out.ISCSI *out = new(ISCSIVolumeSource) - if err := DeepCopy_api_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ISCSI = nil } if in.Glusterfs != nil { in, out := in.Glusterfs, &out.Glusterfs *out = new(GlusterfsVolumeSource) - if err := DeepCopy_api_GlusterfsVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Glusterfs = nil } if in.PersistentVolumeClaim != nil { in, out := in.PersistentVolumeClaim, &out.PersistentVolumeClaim *out = new(PersistentVolumeClaimVolumeSource) - if err := DeepCopy_api_PersistentVolumeClaimVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.PersistentVolumeClaim = nil } @@ -3213,9 +2871,7 @@ func DeepCopy_api_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion if in.Cinder != nil { in, out := in.Cinder, &out.Cinder *out = new(CinderVolumeSource) - if err := DeepCopy_api_CinderVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Cinder = nil } @@ -3231,9 +2887,7 @@ func DeepCopy_api_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion if in.Flocker != nil { in, out := in.Flocker, &out.Flocker *out = new(FlockerVolumeSource) - if err := DeepCopy_api_FlockerVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Flocker = nil } @@ -3258,9 +2912,7 @@ func DeepCopy_api_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion if in.AzureFile != nil { in, out := in.AzureFile, &out.AzureFile *out = new(AzureFileVolumeSource) - if err := DeepCopy_api_AzureFileVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AzureFile = nil } @@ -3276,9 +2928,7 @@ func DeepCopy_api_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion if in.VsphereVolume != nil { in, out := in.VsphereVolume, &out.VsphereVolume *out = new(VsphereVirtualDiskVolumeSource) - if err := DeepCopy_api_VsphereVirtualDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.VsphereVolume = nil } diff --git a/pkg/api/doc.go b/pkg/api/doc.go index a4262ab3613..1507a8823b4 100644 --- a/pkg/api/doc.go +++ b/pkg/api/doc.go @@ -14,6 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // Package api contains the latest (or "internal") version of the // Kubernetes API objects. This is the API objects as represented in memory. // The contract presented to clients is located in the versioned packages, diff --git a/pkg/api/resource/generated.proto b/pkg/api/resource/generated.proto index 4b7f453b10c..bdc091d98d4 100644 --- a/pkg/api/resource/generated.proto +++ b/pkg/api/resource/generated.proto @@ -83,7 +83,6 @@ option go_package = "resource"; // writing some sort of special handling code in the hopes that that will // cause implementors to also use a fixed point implementation. // -// +gencopy=false // +protobuf=true // +protobuf.embed=string // +protobuf.options.marshal=false diff --git a/pkg/api/resource/quantity.go b/pkg/api/resource/quantity.go index 067c96d40ad..823dd5ef70e 100644 --- a/pkg/api/resource/quantity.go +++ b/pkg/api/resource/quantity.go @@ -87,7 +87,6 @@ import ( // writing some sort of special handling code in the hopes that that will // cause implementors to also use a fixed point implementation. // -// +gencopy=false // +protobuf=true // +protobuf.embed=string // +protobuf.options.marshal=false @@ -386,6 +385,16 @@ func ParseQuantity(str string) (Quantity, error) { return Quantity{d: infDecAmount{amount}, Format: format}, nil } +// DeepCopy returns a deep-copy of the Quantity value. Note that the method +// receiver is a value, so we can mutate it in-place and return it. +func (q Quantity) DeepCopy() Quantity { + if q.d.Dec != nil { + tmp := &inf.Dec{} + q.d.Dec = tmp.Set(q.d.Dec) + } + return q +} + // CanonicalizeBytes returns the canonical form of q and its suffix (see comment on Quantity). // // Note about BinarySI: diff --git a/pkg/api/types.go b/pkg/api/types.go index 6eb9a2b15f2..1c038d0dc11 100644 --- a/pkg/api/types.go +++ b/pkg/api/types.go @@ -283,7 +283,8 @@ type PersistentVolumeClaimVolumeSource struct { ReadOnly bool `json:"readOnly,omitempty"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true type PersistentVolume struct { unversioned.TypeMeta `json:",inline"` @@ -2096,7 +2097,8 @@ const ( // ResourceList is a set of (resource name, quantity) pairs. type ResourceList map[ResourceName]resource.Quantity -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Node is a worker node in Kubernetes // The name of the node according to etcd is in ObjectMeta.Name. @@ -2149,7 +2151,8 @@ const ( NamespaceTerminating NamespacePhase = "Terminating" ) -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // A namespace provides a scope for Names. // Use of multiple namespaces is optional @@ -2785,7 +2788,8 @@ type ComponentCondition struct { Error string `json:"error,omitempty"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // ComponentStatus (and ComponentStatusList) holds the cluster validation info. type ComponentStatus struct { diff --git a/pkg/api/unversioned/deep_copy_generated.go b/pkg/api/unversioned/deep_copy_generated.go index a93a03c854a..77f5b66d882 100644 --- a/pkg/api/unversioned/deep_copy_generated.go +++ b/pkg/api/unversioned/deep_copy_generated.go @@ -26,31 +26,23 @@ import ( ) func DeepCopy_unversioned_APIGroup(in APIGroup, out *APIGroup, c *conversion.Cloner) error { - if err := DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Name = in.Name if in.Versions != nil { in, out := in.Versions, &out.Versions *out = make([]GroupVersionForDiscovery, len(in)) for i := range in { - if err := DeepCopy_unversioned_GroupVersionForDiscovery(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Versions = nil } - if err := DeepCopy_unversioned_GroupVersionForDiscovery(in.PreferredVersion, &out.PreferredVersion, c); err != nil { - return err - } + out.PreferredVersion = in.PreferredVersion if in.ServerAddressByClientCIDRs != nil { in, out := in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs *out = make([]ServerAddressByClientCIDR, len(in)) for i := range in { - if err := DeepCopy_unversioned_ServerAddressByClientCIDR(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ServerAddressByClientCIDRs = nil @@ -59,9 +51,7 @@ func DeepCopy_unversioned_APIGroup(in APIGroup, out *APIGroup, c *conversion.Clo } func DeepCopy_unversioned_APIGroupList(in APIGroupList, out *APIGroupList, c *conversion.Cloner) error { - if err := DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if in.Groups != nil { in, out := in.Groups, &out.Groups *out = make([]APIGroup, len(in)) @@ -84,17 +74,13 @@ func DeepCopy_unversioned_APIResource(in APIResource, out *APIResource, c *conve } func DeepCopy_unversioned_APIResourceList(in APIResourceList, out *APIResourceList, c *conversion.Cloner) error { - if err := DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.GroupVersion = in.GroupVersion if in.APIResources != nil { in, out := in.APIResources, &out.APIResources *out = make([]APIResource, len(in)) for i := range in { - if err := DeepCopy_unversioned_APIResource(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.APIResources = nil @@ -103,9 +89,7 @@ func DeepCopy_unversioned_APIResourceList(in APIResourceList, out *APIResourceLi } func DeepCopy_unversioned_APIVersions(in APIVersions, out *APIVersions, c *conversion.Cloner) error { - if err := DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if in.Versions != nil { in, out := in.Versions, &out.Versions *out = make([]string, len(in)) @@ -117,9 +101,7 @@ func DeepCopy_unversioned_APIVersions(in APIVersions, out *APIVersions, c *conve in, out := in.ServerAddressByClientCIDRs, &out.ServerAddressByClientCIDRs *out = make([]ServerAddressByClientCIDR, len(in)) for i := range in { - if err := DeepCopy_unversioned_ServerAddressByClientCIDR(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ServerAddressByClientCIDRs = nil @@ -133,9 +115,7 @@ func DeepCopy_unversioned_Duration(in Duration, out *Duration, c *conversion.Clo } func DeepCopy_unversioned_ExportOptions(in ExportOptions, out *ExportOptions, c *conversion.Cloner) error { - if err := DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Export = in.Export out.Exact = in.Exact return nil @@ -244,12 +224,8 @@ func DeepCopy_unversioned_ServerAddressByClientCIDR(in ServerAddressByClientCIDR } func DeepCopy_unversioned_Status(in Status, out *Status, c *conversion.Cloner) error { - if err := DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta out.Status = in.Status out.Message = in.Message out.Reason = in.Reason @@ -281,9 +257,7 @@ func DeepCopy_unversioned_StatusDetails(in StatusDetails, out *StatusDetails, c in, out := in.Causes, &out.Causes *out = make([]StatusCause, len(in)) for i := range in { - if err := DeepCopy_unversioned_StatusCause(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Causes = nil diff --git a/pkg/util/intstr/deep_copy_generated.go b/pkg/api/unversioned/doc.go similarity index 61% rename from pkg/util/intstr/deep_copy_generated.go rename to pkg/api/unversioned/doc.go index 793b1ebd184..d0ffc33275f 100644 --- a/pkg/util/intstr/deep_copy_generated.go +++ b/pkg/api/unversioned/doc.go @@ -1,5 +1,3 @@ -// +build !ignore_autogenerated - /* Copyright 2016 The Kubernetes Authors. @@ -16,17 +14,6 @@ See the License for the specific language governing permissions and limitations under the License. */ -// This file was autogenerated by deepcopy-gen. Do not edit it manually! +// +k8s:deepcopy-gen=package -package intstr - -import ( - conversion "k8s.io/kubernetes/pkg/conversion" -) - -func DeepCopy_intstr_IntOrString(in IntOrString, out *IntOrString, c *conversion.Cloner) error { - out.Type = in.Type - out.IntVal = in.IntVal - out.StrVal = in.StrVal - return nil -} +package unversioned diff --git a/pkg/api/unversioned/time.go b/pkg/api/unversioned/time.go index 61a000844fd..73b00f2e7c2 100644 --- a/pkg/api/unversioned/time.go +++ b/pkg/api/unversioned/time.go @@ -33,6 +33,13 @@ type Time struct { time.Time `protobuf:"-"` } +// DeepCopy returns a deep-copy of the Time value. The underlying time.Time +// type is effectively immutable in the time API, so it is safe to +// copy-by-assign, despite the presence of (unexported) Pointer fields. +func (t Time) DeepCopy() Time { + return t +} + // NewTime returns a wrapped instance of the provided time func NewTime(time time.Time) Time { return Time{time} diff --git a/pkg/api/v1/deep_copy_generated.go b/pkg/api/v1/deep_copy_generated.go index 9bf00219ae8..9054da35ed9 100644 --- a/pkg/api/v1/deep_copy_generated.go +++ b/pkg/api/v1/deep_copy_generated.go @@ -22,12 +22,10 @@ package v1 import ( api "k8s.io/kubernetes/pkg/api" - resource "k8s.io/kubernetes/pkg/api/resource" unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" runtime "k8s.io/kubernetes/pkg/runtime" types "k8s.io/kubernetes/pkg/types" - intstr "k8s.io/kubernetes/pkg/util/intstr" ) func init() { @@ -240,15 +238,11 @@ func DeepCopy_v1_AzureFileVolumeSource(in AzureFileVolumeSource, out *AzureFileV } func DeepCopy_v1_Binding(in Binding, out *Binding, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_v1_ObjectReference(in.Target, &out.Target, c); err != nil { - return err - } + out.Target = in.Target return nil } @@ -288,9 +282,7 @@ func DeepCopy_v1_CephFSVolumeSource(in CephFSVolumeSource, out *CephFSVolumeSour if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) - if err := DeepCopy_v1_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } @@ -314,9 +306,7 @@ func DeepCopy_v1_ComponentCondition(in ComponentCondition, out *ComponentConditi } func DeepCopy_v1_ComponentStatus(in ComponentStatus, out *ComponentStatus, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -324,9 +314,7 @@ func DeepCopy_v1_ComponentStatus(in ComponentStatus, out *ComponentStatus, c *co in, out := in.Conditions, &out.Conditions *out = make([]ComponentCondition, len(in)) for i := range in { - if err := DeepCopy_v1_ComponentCondition(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Conditions = nil @@ -335,12 +323,8 @@ func DeepCopy_v1_ComponentStatus(in ComponentStatus, out *ComponentStatus, c *co } func DeepCopy_v1_ComponentStatusList(in ComponentStatusList, out *ComponentStatusList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ComponentStatus, len(in)) @@ -356,9 +340,7 @@ func DeepCopy_v1_ComponentStatusList(in ComponentStatusList, out *ComponentStatu } func DeepCopy_v1_ConfigMap(in ConfigMap, out *ConfigMap, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -375,20 +357,14 @@ func DeepCopy_v1_ConfigMap(in ConfigMap, out *ConfigMap, c *conversion.Cloner) e } func DeepCopy_v1_ConfigMapKeySelector(in ConfigMapKeySelector, out *ConfigMapKeySelector, c *conversion.Cloner) error { - if err := DeepCopy_v1_LocalObjectReference(in.LocalObjectReference, &out.LocalObjectReference, c); err != nil { - return err - } + out.LocalObjectReference = in.LocalObjectReference out.Key = in.Key return nil } func DeepCopy_v1_ConfigMapList(in ConfigMapList, out *ConfigMapList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ConfigMap, len(in)) @@ -404,16 +380,12 @@ func DeepCopy_v1_ConfigMapList(in ConfigMapList, out *ConfigMapList, c *conversi } func DeepCopy_v1_ConfigMapVolumeSource(in ConfigMapVolumeSource, out *ConfigMapVolumeSource, c *conversion.Cloner) error { - if err := DeepCopy_v1_LocalObjectReference(in.LocalObjectReference, &out.LocalObjectReference, c); err != nil { - return err - } + out.LocalObjectReference = in.LocalObjectReference if in.Items != nil { in, out := in.Items, &out.Items *out = make([]KeyToPath, len(in)) for i := range in { - if err := DeepCopy_v1_KeyToPath(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Items = nil @@ -443,9 +415,7 @@ func DeepCopy_v1_Container(in Container, out *Container, c *conversion.Cloner) e in, out := in.Ports, &out.Ports *out = make([]ContainerPort, len(in)) for i := range in { - if err := DeepCopy_v1_ContainerPort(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ports = nil @@ -468,9 +438,7 @@ func DeepCopy_v1_Container(in Container, out *Container, c *conversion.Cloner) e in, out := in.VolumeMounts, &out.VolumeMounts *out = make([]VolumeMount, len(in)) for i := range in { - if err := DeepCopy_v1_VolumeMount(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.VolumeMounts = nil @@ -544,9 +512,7 @@ func DeepCopy_v1_ContainerState(in ContainerState, out *ContainerState, c *conve if in.Waiting != nil { in, out := in.Waiting, &out.Waiting *out = new(ContainerStateWaiting) - if err := DeepCopy_v1_ContainerStateWaiting(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Waiting = nil } @@ -572,9 +538,7 @@ func DeepCopy_v1_ContainerState(in ContainerState, out *ContainerState, c *conve } func DeepCopy_v1_ContainerStateRunning(in ContainerStateRunning, out *ContainerStateRunning, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_Time(in.StartedAt, &out.StartedAt, c); err != nil { - return err - } + out.StartedAt = in.StartedAt.DeepCopy() return nil } @@ -583,12 +547,8 @@ func DeepCopy_v1_ContainerStateTerminated(in ContainerStateTerminated, out *Cont out.Signal = in.Signal out.Reason = in.Reason out.Message = in.Message - if err := unversioned.DeepCopy_unversioned_Time(in.StartedAt, &out.StartedAt, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.FinishedAt, &out.FinishedAt, c); err != nil { - return err - } + out.StartedAt = in.StartedAt.DeepCopy() + out.FinishedAt = in.FinishedAt.DeepCopy() out.ContainerID = in.ContainerID return nil } @@ -621,9 +581,7 @@ func DeepCopy_v1_DaemonEndpoint(in DaemonEndpoint, out *DaemonEndpoint, c *conve } func DeepCopy_v1_DeleteOptions(in DeleteOptions, out *DeleteOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if in.GracePeriodSeconds != nil { in, out := in.GracePeriodSeconds, &out.GracePeriodSeconds *out = new(int64) @@ -655,9 +613,7 @@ func DeepCopy_v1_DownwardAPIVolumeFile(in DownwardAPIVolumeFile, out *DownwardAP if in.FieldRef != nil { in, out := in.FieldRef, &out.FieldRef *out = new(ObjectFieldSelector) - if err := DeepCopy_v1_ObjectFieldSelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.FieldRef = nil } @@ -699,9 +655,7 @@ func DeepCopy_v1_EndpointAddress(in EndpointAddress, out *EndpointAddress, c *co if in.TargetRef != nil { in, out := in.TargetRef, &out.TargetRef *out = new(ObjectReference) - if err := DeepCopy_v1_ObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.TargetRef = nil } @@ -742,9 +696,7 @@ func DeepCopy_v1_EndpointSubset(in EndpointSubset, out *EndpointSubset, c *conve in, out := in.Ports, &out.Ports *out = make([]EndpointPort, len(in)) for i := range in { - if err := DeepCopy_v1_EndpointPort(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ports = nil @@ -753,9 +705,7 @@ func DeepCopy_v1_EndpointSubset(in EndpointSubset, out *EndpointSubset, c *conve } func DeepCopy_v1_Endpoints(in Endpoints, out *Endpoints, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -774,12 +724,8 @@ func DeepCopy_v1_Endpoints(in Endpoints, out *Endpoints, c *conversion.Cloner) e } func DeepCopy_v1_EndpointsList(in EndpointsList, out *EndpointsList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Endpoints, len(in)) @@ -813,9 +759,7 @@ func DeepCopy_v1_EnvVarSource(in EnvVarSource, out *EnvVarSource, c *conversion. if in.FieldRef != nil { in, out := in.FieldRef, &out.FieldRef *out = new(ObjectFieldSelector) - if err := DeepCopy_v1_ObjectFieldSelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.FieldRef = nil } @@ -831,18 +775,14 @@ func DeepCopy_v1_EnvVarSource(in EnvVarSource, out *EnvVarSource, c *conversion. if in.ConfigMapKeyRef != nil { in, out := in.ConfigMapKeyRef, &out.ConfigMapKeyRef *out = new(ConfigMapKeySelector) - if err := DeepCopy_v1_ConfigMapKeySelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ConfigMapKeyRef = nil } if in.SecretKeyRef != nil { in, out := in.SecretKeyRef, &out.SecretKeyRef *out = new(SecretKeySelector) - if err := DeepCopy_v1_SecretKeySelector(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretKeyRef = nil } @@ -850,38 +790,24 @@ func DeepCopy_v1_EnvVarSource(in EnvVarSource, out *EnvVarSource, c *conversion. } func DeepCopy_v1_Event(in Event, out *Event, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_v1_ObjectReference(in.InvolvedObject, &out.InvolvedObject, c); err != nil { - return err - } + out.InvolvedObject = in.InvolvedObject out.Reason = in.Reason out.Message = in.Message - if err := DeepCopy_v1_EventSource(in.Source, &out.Source, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.FirstTimestamp, &out.FirstTimestamp, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTimestamp, &out.LastTimestamp, c); err != nil { - return err - } + out.Source = in.Source + out.FirstTimestamp = in.FirstTimestamp.DeepCopy() + out.LastTimestamp = in.LastTimestamp.DeepCopy() out.Count = in.Count out.Type = in.Type return nil } func DeepCopy_v1_EventList(in EventList, out *EventList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Event, len(in)) @@ -914,9 +840,7 @@ func DeepCopy_v1_ExecAction(in ExecAction, out *ExecAction, c *conversion.Cloner } func DeepCopy_v1_ExportOptions(in ExportOptions, out *ExportOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Export = in.Export out.Exact = in.Exact return nil @@ -948,9 +872,7 @@ func DeepCopy_v1_FlexVolumeSource(in FlexVolumeSource, out *FlexVolumeSource, c if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) - if err := DeepCopy_v1_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } @@ -996,18 +918,14 @@ func DeepCopy_v1_GlusterfsVolumeSource(in GlusterfsVolumeSource, out *GlusterfsV func DeepCopy_v1_HTTPGetAction(in HTTPGetAction, out *HTTPGetAction, c *conversion.Cloner) error { out.Path = in.Path - if err := intstr.DeepCopy_intstr_IntOrString(in.Port, &out.Port, c); err != nil { - return err - } + out.Port = in.Port out.Host = in.Host out.Scheme = in.Scheme if in.HTTPHeaders != nil { in, out := in.HTTPHeaders, &out.HTTPHeaders *out = make([]HTTPHeader, len(in)) for i := range in { - if err := DeepCopy_v1_HTTPHeader(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.HTTPHeaders = nil @@ -1043,9 +961,7 @@ func DeepCopy_v1_Handler(in Handler, out *Handler, c *conversion.Cloner) error { if in.TCPSocket != nil { in, out := in.TCPSocket, &out.TCPSocket *out = new(TCPSocketAction) - if err := DeepCopy_v1_TCPSocketAction(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.TCPSocket = nil } @@ -1096,9 +1012,7 @@ func DeepCopy_v1_Lifecycle(in Lifecycle, out *Lifecycle, c *conversion.Cloner) e } func DeepCopy_v1_LimitRange(in LimitRange, out *LimitRange, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -1114,11 +1028,7 @@ func DeepCopy_v1_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conve in, out := in.Max, &out.Max *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Max = nil @@ -1127,11 +1037,7 @@ func DeepCopy_v1_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conve in, out := in.Min, &out.Min *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Min = nil @@ -1140,11 +1046,7 @@ func DeepCopy_v1_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conve in, out := in.Default, &out.Default *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Default = nil @@ -1153,11 +1055,7 @@ func DeepCopy_v1_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conve in, out := in.DefaultRequest, &out.DefaultRequest *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.DefaultRequest = nil @@ -1166,11 +1064,7 @@ func DeepCopy_v1_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conve in, out := in.MaxLimitRequestRatio, &out.MaxLimitRequestRatio *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.MaxLimitRequestRatio = nil @@ -1179,12 +1073,8 @@ func DeepCopy_v1_LimitRangeItem(in LimitRangeItem, out *LimitRangeItem, c *conve } func DeepCopy_v1_LimitRangeList(in LimitRangeList, out *LimitRangeList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]LimitRange, len(in)) @@ -1215,12 +1105,8 @@ func DeepCopy_v1_LimitRangeSpec(in LimitRangeSpec, out *LimitRangeSpec, c *conve } func DeepCopy_v1_List(in List, out *List, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]runtime.RawExtension, len(in)) @@ -1236,9 +1122,7 @@ func DeepCopy_v1_List(in List, out *List, c *conversion.Cloner) error { } func DeepCopy_v1_ListOptions(in ListOptions, out *ListOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.LabelSelector = in.LabelSelector out.FieldSelector = in.FieldSelector out.Watch = in.Watch @@ -1264,9 +1148,7 @@ func DeepCopy_v1_LoadBalancerStatus(in LoadBalancerStatus, out *LoadBalancerStat in, out := in.Ingress, &out.Ingress *out = make([]LoadBalancerIngress, len(in)) for i := range in { - if err := DeepCopy_v1_LoadBalancerIngress(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ingress = nil @@ -1287,28 +1169,20 @@ func DeepCopy_v1_NFSVolumeSource(in NFSVolumeSource, out *NFSVolumeSource, c *co } func DeepCopy_v1_Namespace(in Namespace, out *Namespace, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1_NamespaceSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1_NamespaceStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1_NamespaceList(in NamespaceList, out *NamespaceList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Namespace, len(in)) @@ -1342,15 +1216,11 @@ func DeepCopy_v1_NamespaceStatus(in NamespaceStatus, out *NamespaceStatus, c *co } func DeepCopy_v1_Node(in Node, out *Node, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_v1_NodeSpec(in.Spec, &out.Spec, c); err != nil { - return err - } + out.Spec = in.Spec if err := DeepCopy_v1_NodeStatus(in.Status, &out.Status, c); err != nil { return err } @@ -1390,31 +1260,21 @@ func DeepCopy_v1_NodeAffinity(in NodeAffinity, out *NodeAffinity, c *conversion. func DeepCopy_v1_NodeCondition(in NodeCondition, out *NodeCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastHeartbeatTime, &out.LastHeartbeatTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastHeartbeatTime = in.LastHeartbeatTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_v1_NodeDaemonEndpoints(in NodeDaemonEndpoints, out *NodeDaemonEndpoints, c *conversion.Cloner) error { - if err := DeepCopy_v1_DaemonEndpoint(in.KubeletEndpoint, &out.KubeletEndpoint, c); err != nil { - return err - } + out.KubeletEndpoint = in.KubeletEndpoint return nil } func DeepCopy_v1_NodeList(in NodeList, out *NodeList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Node, len(in)) @@ -1430,9 +1290,7 @@ func DeepCopy_v1_NodeList(in NodeList, out *NodeList, c *conversion.Cloner) erro } func DeepCopy_v1_NodeProxyOptions(in NodeProxyOptions, out *NodeProxyOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Path = in.Path return nil } @@ -1493,11 +1351,7 @@ func DeepCopy_v1_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Cloner in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -1506,11 +1360,7 @@ func DeepCopy_v1_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Cloner in, out := in.Allocatable, &out.Allocatable *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Allocatable = nil @@ -1531,19 +1381,13 @@ func DeepCopy_v1_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Cloner in, out := in.Addresses, &out.Addresses *out = make([]NodeAddress, len(in)) for i := range in { - if err := DeepCopy_v1_NodeAddress(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Addresses = nil } - if err := DeepCopy_v1_NodeDaemonEndpoints(in.DaemonEndpoints, &out.DaemonEndpoints, c); err != nil { - return err - } - if err := DeepCopy_v1_NodeSystemInfo(in.NodeInfo, &out.NodeInfo, c); err != nil { - return err - } + out.DaemonEndpoints = in.DaemonEndpoints + out.NodeInfo = in.NodeInfo if in.Images != nil { in, out := in.Images, &out.Images *out = make([]ContainerImage, len(in)) @@ -1568,9 +1412,7 @@ func DeepCopy_v1_NodeStatus(in NodeStatus, out *NodeStatus, c *conversion.Cloner in, out := in.VolumesAttached, &out.VolumesAttached *out = make([]AttachedVolume, len(in)) for i := range in { - if err := DeepCopy_v1_AttachedVolume(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.VolumesAttached = nil @@ -1606,15 +1448,11 @@ func DeepCopy_v1_ObjectMeta(in ObjectMeta, out *ObjectMeta, c *conversion.Cloner out.UID = in.UID out.ResourceVersion = in.ResourceVersion out.Generation = in.Generation - if err := unversioned.DeepCopy_unversioned_Time(in.CreationTimestamp, &out.CreationTimestamp, c); err != nil { - return err - } + out.CreationTimestamp = in.CreationTimestamp.DeepCopy() if in.DeletionTimestamp != nil { in, out := in.DeletionTimestamp, &out.DeletionTimestamp *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.DeletionTimestamp = nil } @@ -1691,25 +1529,19 @@ func DeepCopy_v1_OwnerReference(in OwnerReference, out *OwnerReference, c *conve } func DeepCopy_v1_PersistentVolume(in PersistentVolume, out *PersistentVolume, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1_PersistentVolumeSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1_PersistentVolumeStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1_PersistentVolumeClaim(in PersistentVolumeClaim, out *PersistentVolumeClaim, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -1723,12 +1555,8 @@ func DeepCopy_v1_PersistentVolumeClaim(in PersistentVolumeClaim, out *Persistent } func DeepCopy_v1_PersistentVolumeClaimList(in PersistentVolumeClaimList, out *PersistentVolumeClaimList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PersistentVolumeClaim, len(in)) @@ -1784,11 +1612,7 @@ func DeepCopy_v1_PersistentVolumeClaimStatus(in PersistentVolumeClaimStatus, out in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -1803,12 +1627,8 @@ func DeepCopy_v1_PersistentVolumeClaimVolumeSource(in PersistentVolumeClaimVolum } func DeepCopy_v1_PersistentVolumeList(in PersistentVolumeList, out *PersistentVolumeList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PersistentVolume, len(in)) @@ -1827,45 +1647,35 @@ func DeepCopy_v1_PersistentVolumeSource(in PersistentVolumeSource, out *Persiste if in.GCEPersistentDisk != nil { in, out := in.GCEPersistentDisk, &out.GCEPersistentDisk *out = new(GCEPersistentDiskVolumeSource) - if err := DeepCopy_v1_GCEPersistentDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.GCEPersistentDisk = nil } if in.AWSElasticBlockStore != nil { in, out := in.AWSElasticBlockStore, &out.AWSElasticBlockStore *out = new(AWSElasticBlockStoreVolumeSource) - if err := DeepCopy_v1_AWSElasticBlockStoreVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AWSElasticBlockStore = nil } if in.HostPath != nil { in, out := in.HostPath, &out.HostPath *out = new(HostPathVolumeSource) - if err := DeepCopy_v1_HostPathVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.HostPath = nil } if in.Glusterfs != nil { in, out := in.Glusterfs, &out.Glusterfs *out = new(GlusterfsVolumeSource) - if err := DeepCopy_v1_GlusterfsVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Glusterfs = nil } if in.NFS != nil { in, out := in.NFS, &out.NFS *out = new(NFSVolumeSource) - if err := DeepCopy_v1_NFSVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NFS = nil } @@ -1881,18 +1691,14 @@ func DeepCopy_v1_PersistentVolumeSource(in PersistentVolumeSource, out *Persiste if in.ISCSI != nil { in, out := in.ISCSI, &out.ISCSI *out = new(ISCSIVolumeSource) - if err := DeepCopy_v1_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ISCSI = nil } if in.Cinder != nil { in, out := in.Cinder, &out.Cinder *out = new(CinderVolumeSource) - if err := DeepCopy_v1_CinderVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Cinder = nil } @@ -1917,9 +1723,7 @@ func DeepCopy_v1_PersistentVolumeSource(in PersistentVolumeSource, out *Persiste if in.Flocker != nil { in, out := in.Flocker, &out.Flocker *out = new(FlockerVolumeSource) - if err := DeepCopy_v1_FlockerVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Flocker = nil } @@ -1935,18 +1739,14 @@ func DeepCopy_v1_PersistentVolumeSource(in PersistentVolumeSource, out *Persiste if in.AzureFile != nil { in, out := in.AzureFile, &out.AzureFile *out = new(AzureFileVolumeSource) - if err := DeepCopy_v1_AzureFileVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AzureFile = nil } if in.VsphereVolume != nil { in, out := in.VsphereVolume, &out.VsphereVolume *out = new(VsphereVirtualDiskVolumeSource) - if err := DeepCopy_v1_VsphereVirtualDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.VsphereVolume = nil } @@ -1958,11 +1758,7 @@ func DeepCopy_v1_PersistentVolumeSpec(in PersistentVolumeSpec, out *PersistentVo in, out := in.Capacity, &out.Capacity *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Capacity = nil @@ -1982,9 +1778,7 @@ func DeepCopy_v1_PersistentVolumeSpec(in PersistentVolumeSpec, out *PersistentVo if in.ClaimRef != nil { in, out := in.ClaimRef, &out.ClaimRef *out = new(ObjectReference) - if err := DeepCopy_v1_ObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ClaimRef = nil } @@ -2000,9 +1794,7 @@ func DeepCopy_v1_PersistentVolumeStatus(in PersistentVolumeStatus, out *Persiste } func DeepCopy_v1_Pod(in Pod, out *Pod, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2089,9 +1881,7 @@ func DeepCopy_v1_PodAntiAffinity(in PodAntiAffinity, out *PodAntiAffinity, c *co } func DeepCopy_v1_PodAttachOptions(in PodAttachOptions, out *PodAttachOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Stdin = in.Stdin out.Stdout = in.Stdout out.Stderr = in.Stderr @@ -2103,21 +1893,15 @@ func DeepCopy_v1_PodAttachOptions(in PodAttachOptions, out *PodAttachOptions, c func DeepCopy_v1_PodCondition(in PodCondition, out *PodCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_v1_PodExecOptions(in PodExecOptions, out *PodExecOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Stdin = in.Stdin out.Stdout = in.Stdout out.Stderr = in.Stderr @@ -2134,12 +1918,8 @@ func DeepCopy_v1_PodExecOptions(in PodExecOptions, out *PodExecOptions, c *conve } func DeepCopy_v1_PodList(in PodList, out *PodList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Pod, len(in)) @@ -2155,9 +1935,7 @@ func DeepCopy_v1_PodList(in PodList, out *PodList, c *conversion.Cloner) error { } func DeepCopy_v1_PodLogOptions(in PodLogOptions, out *PodLogOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Container = in.Container out.Follow = in.Follow out.Previous = in.Previous @@ -2171,9 +1949,7 @@ func DeepCopy_v1_PodLogOptions(in PodLogOptions, out *PodLogOptions, c *conversi if in.SinceTime != nil { in, out := in.SinceTime, &out.SinceTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.SinceTime = nil } @@ -2196,9 +1972,7 @@ func DeepCopy_v1_PodLogOptions(in PodLogOptions, out *PodLogOptions, c *conversi } func DeepCopy_v1_PodProxyOptions(in PodProxyOptions, out *PodProxyOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Path = in.Path return nil } @@ -2207,9 +1981,7 @@ func DeepCopy_v1_PodSecurityContext(in PodSecurityContext, out *PodSecurityConte if in.SELinuxOptions != nil { in, out := in.SELinuxOptions, &out.SELinuxOptions *out = new(SELinuxOptions) - if err := DeepCopy_v1_SELinuxOptions(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SELinuxOptions = nil } @@ -2322,9 +2094,7 @@ func DeepCopy_v1_PodSpec(in PodSpec, out *PodSpec, c *conversion.Cloner) error { in, out := in.ImagePullSecrets, &out.ImagePullSecrets *out = make([]LocalObjectReference, len(in)) for i := range in { - if err := DeepCopy_v1_LocalObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ImagePullSecrets = nil @@ -2354,9 +2124,7 @@ func DeepCopy_v1_PodStatus(in PodStatus, out *PodStatus, c *conversion.Cloner) e if in.StartTime != nil { in, out := in.StartTime, &out.StartTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.StartTime = nil } @@ -2386,9 +2154,7 @@ func DeepCopy_v1_PodStatus(in PodStatus, out *PodStatus, c *conversion.Cloner) e } func DeepCopy_v1_PodStatusResult(in PodStatusResult, out *PodStatusResult, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2399,9 +2165,7 @@ func DeepCopy_v1_PodStatusResult(in PodStatusResult, out *PodStatusResult, c *co } func DeepCopy_v1_PodTemplate(in PodTemplate, out *PodTemplate, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2412,12 +2176,8 @@ func DeepCopy_v1_PodTemplate(in PodTemplate, out *PodTemplate, c *conversion.Clo } func DeepCopy_v1_PodTemplateList(in PodTemplateList, out *PodTemplateList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PodTemplate, len(in)) @@ -2489,9 +2249,7 @@ func DeepCopy_v1_RBDVolumeSource(in RBDVolumeSource, out *RBDVolumeSource, c *co if in.SecretRef != nil { in, out := in.SecretRef, &out.SecretRef *out = new(LocalObjectReference) - if err := DeepCopy_v1_LocalObjectReference(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SecretRef = nil } @@ -2500,9 +2258,7 @@ func DeepCopy_v1_RBDVolumeSource(in RBDVolumeSource, out *RBDVolumeSource, c *co } func DeepCopy_v1_RangeAllocation(in RangeAllocation, out *RangeAllocation, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2518,28 +2274,20 @@ func DeepCopy_v1_RangeAllocation(in RangeAllocation, out *RangeAllocation, c *co } func DeepCopy_v1_ReplicationController(in ReplicationController, out *ReplicationController, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1_ReplicationControllerSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1_ReplicationControllerStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1_ReplicationControllerList(in ReplicationControllerList, out *ReplicationControllerList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ReplicationController, len(in)) @@ -2593,16 +2341,12 @@ func DeepCopy_v1_ReplicationControllerStatus(in ReplicationControllerStatus, out func DeepCopy_v1_ResourceFieldSelector(in ResourceFieldSelector, out *ResourceFieldSelector, c *conversion.Cloner) error { out.ContainerName = in.ContainerName out.Resource = in.Resource - if err := resource.DeepCopy_resource_Quantity(in.Divisor, &out.Divisor, c); err != nil { - return err - } + out.Divisor = in.Divisor.DeepCopy() return nil } func DeepCopy_v1_ResourceQuota(in ResourceQuota, out *ResourceQuota, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2616,12 +2360,8 @@ func DeepCopy_v1_ResourceQuota(in ResourceQuota, out *ResourceQuota, c *conversi } func DeepCopy_v1_ResourceQuotaList(in ResourceQuotaList, out *ResourceQuotaList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ResourceQuota, len(in)) @@ -2641,11 +2381,7 @@ func DeepCopy_v1_ResourceQuotaSpec(in ResourceQuotaSpec, out *ResourceQuotaSpec, in, out := in.Hard, &out.Hard *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Hard = nil @@ -2667,11 +2403,7 @@ func DeepCopy_v1_ResourceQuotaStatus(in ResourceQuotaStatus, out *ResourceQuotaS in, out := in.Hard, &out.Hard *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Hard = nil @@ -2680,11 +2412,7 @@ func DeepCopy_v1_ResourceQuotaStatus(in ResourceQuotaStatus, out *ResourceQuotaS in, out := in.Used, &out.Used *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Used = nil @@ -2697,11 +2425,7 @@ func DeepCopy_v1_ResourceRequirements(in ResourceRequirements, out *ResourceRequ in, out := in.Limits, &out.Limits *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Limits = nil @@ -2710,11 +2434,7 @@ func DeepCopy_v1_ResourceRequirements(in ResourceRequirements, out *ResourceRequ in, out := in.Requests, &out.Requests *out = make(ResourceList) for key, val := range in { - newVal := new(resource.Quantity) - if err := resource.DeepCopy_resource_Quantity(val, newVal, c); err != nil { - return err - } - (*out)[key] = *newVal + (*out)[key] = val.DeepCopy() } } else { out.Requests = nil @@ -2731,9 +2451,7 @@ func DeepCopy_v1_SELinuxOptions(in SELinuxOptions, out *SELinuxOptions, c *conve } func DeepCopy_v1_Secret(in Secret, out *Secret, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2764,20 +2482,14 @@ func DeepCopy_v1_Secret(in Secret, out *Secret, c *conversion.Cloner) error { } func DeepCopy_v1_SecretKeySelector(in SecretKeySelector, out *SecretKeySelector, c *conversion.Cloner) error { - if err := DeepCopy_v1_LocalObjectReference(in.LocalObjectReference, &out.LocalObjectReference, c); err != nil { - return err - } + out.LocalObjectReference = in.LocalObjectReference out.Key = in.Key return nil } func DeepCopy_v1_SecretList(in SecretList, out *SecretList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Secret, len(in)) @@ -2798,9 +2510,7 @@ func DeepCopy_v1_SecretVolumeSource(in SecretVolumeSource, out *SecretVolumeSour in, out := in.Items, &out.Items *out = make([]KeyToPath, len(in)) for i := range in { - if err := DeepCopy_v1_KeyToPath(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Items = nil @@ -2828,9 +2538,7 @@ func DeepCopy_v1_SecurityContext(in SecurityContext, out *SecurityContext, c *co if in.SELinuxOptions != nil { in, out := in.SELinuxOptions, &out.SELinuxOptions *out = new(SELinuxOptions) - if err := DeepCopy_v1_SELinuxOptions(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SELinuxOptions = nil } @@ -2859,19 +2567,13 @@ func DeepCopy_v1_SecurityContext(in SecurityContext, out *SecurityContext, c *co } func DeepCopy_v1_SerializedReference(in SerializedReference, out *SerializedReference, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := DeepCopy_v1_ObjectReference(in.Reference, &out.Reference, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.Reference = in.Reference return nil } func DeepCopy_v1_Service(in Service, out *Service, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2885,9 +2587,7 @@ func DeepCopy_v1_Service(in Service, out *Service, c *conversion.Cloner) error { } func DeepCopy_v1_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -2895,9 +2595,7 @@ func DeepCopy_v1_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conve in, out := in.Secrets, &out.Secrets *out = make([]ObjectReference, len(in)) for i := range in { - if err := DeepCopy_v1_ObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Secrets = nil @@ -2906,9 +2604,7 @@ func DeepCopy_v1_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conve in, out := in.ImagePullSecrets, &out.ImagePullSecrets *out = make([]LocalObjectReference, len(in)) for i := range in { - if err := DeepCopy_v1_LocalObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.ImagePullSecrets = nil @@ -2917,12 +2613,8 @@ func DeepCopy_v1_ServiceAccount(in ServiceAccount, out *ServiceAccount, c *conve } func DeepCopy_v1_ServiceAccountList(in ServiceAccountList, out *ServiceAccountList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ServiceAccount, len(in)) @@ -2938,12 +2630,8 @@ func DeepCopy_v1_ServiceAccountList(in ServiceAccountList, out *ServiceAccountLi } func DeepCopy_v1_ServiceList(in ServiceList, out *ServiceList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Service, len(in)) @@ -2962,17 +2650,13 @@ func DeepCopy_v1_ServicePort(in ServicePort, out *ServicePort, c *conversion.Clo out.Name = in.Name out.Protocol = in.Protocol out.Port = in.Port - if err := intstr.DeepCopy_intstr_IntOrString(in.TargetPort, &out.TargetPort, c); err != nil { - return err - } + out.TargetPort = in.TargetPort out.NodePort = in.NodePort return nil } func DeepCopy_v1_ServiceProxyOptions(in ServiceProxyOptions, out *ServiceProxyOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Path = in.Path return nil } @@ -2982,9 +2666,7 @@ func DeepCopy_v1_ServiceSpec(in ServiceSpec, out *ServiceSpec, c *conversion.Clo in, out := in.Ports, &out.Ports *out = make([]ServicePort, len(in)) for i := range in { - if err := DeepCopy_v1_ServicePort(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ports = nil @@ -3034,9 +2716,7 @@ func DeepCopy_v1_ServiceStatus(in ServiceStatus, out *ServiceStatus, c *conversi } func DeepCopy_v1_TCPSocketAction(in TCPSocketAction, out *TCPSocketAction, c *conversion.Cloner) error { - if err := intstr.DeepCopy_intstr_IntOrString(in.Port, &out.Port, c); err != nil { - return err - } + out.Port = in.Port return nil } @@ -3075,45 +2755,35 @@ func DeepCopy_v1_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion. if in.HostPath != nil { in, out := in.HostPath, &out.HostPath *out = new(HostPathVolumeSource) - if err := DeepCopy_v1_HostPathVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.HostPath = nil } if in.EmptyDir != nil { in, out := in.EmptyDir, &out.EmptyDir *out = new(EmptyDirVolumeSource) - if err := DeepCopy_v1_EmptyDirVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.EmptyDir = nil } if in.GCEPersistentDisk != nil { in, out := in.GCEPersistentDisk, &out.GCEPersistentDisk *out = new(GCEPersistentDiskVolumeSource) - if err := DeepCopy_v1_GCEPersistentDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.GCEPersistentDisk = nil } if in.AWSElasticBlockStore != nil { in, out := in.AWSElasticBlockStore, &out.AWSElasticBlockStore *out = new(AWSElasticBlockStoreVolumeSource) - if err := DeepCopy_v1_AWSElasticBlockStoreVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AWSElasticBlockStore = nil } if in.GitRepo != nil { in, out := in.GitRepo, &out.GitRepo *out = new(GitRepoVolumeSource) - if err := DeepCopy_v1_GitRepoVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.GitRepo = nil } @@ -3129,36 +2799,28 @@ func DeepCopy_v1_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion. if in.NFS != nil { in, out := in.NFS, &out.NFS *out = new(NFSVolumeSource) - if err := DeepCopy_v1_NFSVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NFS = nil } if in.ISCSI != nil { in, out := in.ISCSI, &out.ISCSI *out = new(ISCSIVolumeSource) - if err := DeepCopy_v1_ISCSIVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ISCSI = nil } if in.Glusterfs != nil { in, out := in.Glusterfs, &out.Glusterfs *out = new(GlusterfsVolumeSource) - if err := DeepCopy_v1_GlusterfsVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Glusterfs = nil } if in.PersistentVolumeClaim != nil { in, out := in.PersistentVolumeClaim, &out.PersistentVolumeClaim *out = new(PersistentVolumeClaimVolumeSource) - if err := DeepCopy_v1_PersistentVolumeClaimVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.PersistentVolumeClaim = nil } @@ -3183,9 +2845,7 @@ func DeepCopy_v1_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion. if in.Cinder != nil { in, out := in.Cinder, &out.Cinder *out = new(CinderVolumeSource) - if err := DeepCopy_v1_CinderVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Cinder = nil } @@ -3201,9 +2861,7 @@ func DeepCopy_v1_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion. if in.Flocker != nil { in, out := in.Flocker, &out.Flocker *out = new(FlockerVolumeSource) - if err := DeepCopy_v1_FlockerVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Flocker = nil } @@ -3228,9 +2886,7 @@ func DeepCopy_v1_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion. if in.AzureFile != nil { in, out := in.AzureFile, &out.AzureFile *out = new(AzureFileVolumeSource) - if err := DeepCopy_v1_AzureFileVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.AzureFile = nil } @@ -3246,9 +2902,7 @@ func DeepCopy_v1_VolumeSource(in VolumeSource, out *VolumeSource, c *conversion. if in.VsphereVolume != nil { in, out := in.VsphereVolume, &out.VsphereVolume *out = new(VsphereVirtualDiskVolumeSource) - if err := DeepCopy_v1_VsphereVirtualDiskVolumeSource(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.VsphereVolume = nil } diff --git a/pkg/api/v1/doc.go b/pkg/api/v1/doc.go index 6f00ffc857c..0d81e264a06 100644 --- a/pkg/api/v1/doc.go +++ b/pkg/api/v1/doc.go @@ -14,6 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // Package v1 is the v1 version of the API. // +genconversion=true package v1 diff --git a/pkg/api/v1/types.go b/pkg/api/v1/types.go index 557a61a5562..9cb0ac558a2 100644 --- a/pkg/api/v1/types.go +++ b/pkg/api/v1/types.go @@ -341,7 +341,8 @@ type PersistentVolumeSource struct { VsphereVolume *VsphereVirtualDiskVolumeSource `json:"vsphereVolume,omitempty" protobuf:"bytes,14,opt,name=vsphereVolume"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // PersistentVolume (PV) is a storage resource provisioned by an administrator. // It is analogous to a node. @@ -2497,7 +2498,8 @@ const ( // ResourceList is a set of (resource name, quantity) pairs. type ResourceList map[ResourceName]resource.Quantity -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // 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). @@ -2560,7 +2562,8 @@ const ( NamespaceTerminating NamespacePhase = "Terminating" ) -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Namespace provides a scope for Names. // Use of multiple namespaces is optional. @@ -3215,7 +3218,8 @@ type ComponentCondition struct { Error string `json:"error,omitempty" protobuf:"bytes,4,opt,name=error"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // ComponentStatus (and ComponentStatusList) holds the cluster validation info. type ComponentStatus struct { diff --git a/pkg/apis/apps/deep_copy_generated.go b/pkg/apis/apps/deep_copy_generated.go index 290c647fad0..bdeb0b19c83 100644 --- a/pkg/apis/apps/deep_copy_generated.go +++ b/pkg/apis/apps/deep_copy_generated.go @@ -39,9 +39,7 @@ func init() { } func DeepCopy_apps_PetSet(in PetSet, out *PetSet, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -55,12 +53,8 @@ func DeepCopy_apps_PetSet(in PetSet, out *PetSet, c *conversion.Cloner) error { } func DeepCopy_apps_PetSetList(in PetSetList, out *PetSetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PetSet, len(in)) diff --git a/pkg/apis/apps/doc.go b/pkg/apis/apps/doc.go new file mode 100644 index 00000000000..bca1ff4ef01 --- /dev/null +++ b/pkg/apis/apps/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package apps diff --git a/pkg/apis/apps/v1alpha1/deep_copy_generated.go b/pkg/apis/apps/v1alpha1/deep_copy_generated.go index 0f000c0c1e3..871894214f0 100644 --- a/pkg/apis/apps/v1alpha1/deep_copy_generated.go +++ b/pkg/apis/apps/v1alpha1/deep_copy_generated.go @@ -40,9 +40,7 @@ func init() { } func DeepCopy_v1alpha1_PetSet(in PetSet, out *PetSet, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -56,12 +54,8 @@ func DeepCopy_v1alpha1_PetSet(in PetSet, out *PetSet, c *conversion.Cloner) erro } func DeepCopy_v1alpha1_PetSetList(in PetSetList, out *PetSetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PetSet, len(in)) diff --git a/pkg/apis/apps/v1alpha1/doc.go b/pkg/apis/apps/v1alpha1/doc.go index 935d55b7423..97c790d9da3 100644 --- a/pkg/apis/apps/v1alpha1/doc.go +++ b/pkg/apis/apps/v1alpha1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1alpha1 diff --git a/pkg/apis/authentication.k8s.io/deep_copy_generated.go b/pkg/apis/authentication.k8s.io/deep_copy_generated.go index e339b4f850c..6424875d524 100644 --- a/pkg/apis/authentication.k8s.io/deep_copy_generated.go +++ b/pkg/apis/authentication.k8s.io/deep_copy_generated.go @@ -22,7 +22,6 @@ package authentication import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -39,12 +38,8 @@ func init() { } func DeepCopy_authenticationk8sio_TokenReview(in TokenReview, out *TokenReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := DeepCopy_authenticationk8sio_TokenReviewSpec(in.Spec, &out.Spec, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.Spec = in.Spec if err := DeepCopy_authenticationk8sio_TokenReviewStatus(in.Status, &out.Status, c); err != nil { return err } diff --git a/pkg/apis/authentication.k8s.io/doc.go b/pkg/apis/authentication.k8s.io/doc.go new file mode 100644 index 00000000000..66c5ae720c0 --- /dev/null +++ b/pkg/apis/authentication.k8s.io/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package authentication diff --git a/pkg/apis/authentication.k8s.io/v1beta1/deep_copy_generated.go b/pkg/apis/authentication.k8s.io/v1beta1/deep_copy_generated.go index f24f3ba8592..d3294bfc8d0 100644 --- a/pkg/apis/authentication.k8s.io/v1beta1/deep_copy_generated.go +++ b/pkg/apis/authentication.k8s.io/v1beta1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1beta1 import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -39,12 +38,8 @@ func init() { } func DeepCopy_v1beta1_TokenReview(in TokenReview, out *TokenReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := DeepCopy_v1beta1_TokenReviewSpec(in.Spec, &out.Spec, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.Spec = in.Spec if err := DeepCopy_v1beta1_TokenReviewStatus(in.Status, &out.Status, c); err != nil { return err } diff --git a/pkg/apis/authentication.k8s.io/v1beta1/doc.go b/pkg/apis/authentication.k8s.io/v1beta1/doc.go index ac2fd00ba91..8eebd4e8795 100644 --- a/pkg/apis/authentication.k8s.io/v1beta1/doc.go +++ b/pkg/apis/authentication.k8s.io/v1beta1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1beta1 diff --git a/pkg/apis/authorization/deep_copy_generated.go b/pkg/apis/authorization/deep_copy_generated.go index d6aebc6ca35..5e92552c037 100644 --- a/pkg/apis/authorization/deep_copy_generated.go +++ b/pkg/apis/authorization/deep_copy_generated.go @@ -22,7 +22,6 @@ package authorization import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -43,15 +42,11 @@ func init() { } func DeepCopy_authorization_LocalSubjectAccessReview(in LocalSubjectAccessReview, out *LocalSubjectAccessReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_authorization_SubjectAccessReviewSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_authorization_SubjectAccessReviewStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } @@ -73,15 +68,11 @@ func DeepCopy_authorization_ResourceAttributes(in ResourceAttributes, out *Resou } func DeepCopy_authorization_SelfSubjectAccessReview(in SelfSubjectAccessReview, out *SelfSubjectAccessReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_authorization_SelfSubjectAccessReviewSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_authorization_SubjectAccessReviewStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } @@ -89,18 +80,14 @@ func DeepCopy_authorization_SelfSubjectAccessReviewSpec(in SelfSubjectAccessRevi if in.ResourceAttributes != nil { in, out := in.ResourceAttributes, &out.ResourceAttributes *out = new(ResourceAttributes) - if err := DeepCopy_authorization_ResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ResourceAttributes = nil } if in.NonResourceAttributes != nil { in, out := in.NonResourceAttributes, &out.NonResourceAttributes *out = new(NonResourceAttributes) - if err := DeepCopy_authorization_NonResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NonResourceAttributes = nil } @@ -108,15 +95,11 @@ func DeepCopy_authorization_SelfSubjectAccessReviewSpec(in SelfSubjectAccessRevi } func DeepCopy_authorization_SubjectAccessReview(in SubjectAccessReview, out *SubjectAccessReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_authorization_SubjectAccessReviewSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_authorization_SubjectAccessReviewStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } @@ -124,18 +107,14 @@ func DeepCopy_authorization_SubjectAccessReviewSpec(in SubjectAccessReviewSpec, if in.ResourceAttributes != nil { in, out := in.ResourceAttributes, &out.ResourceAttributes *out = new(ResourceAttributes) - if err := DeepCopy_authorization_ResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ResourceAttributes = nil } if in.NonResourceAttributes != nil { in, out := in.NonResourceAttributes, &out.NonResourceAttributes *out = new(NonResourceAttributes) - if err := DeepCopy_authorization_NonResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NonResourceAttributes = nil } diff --git a/pkg/apis/authorization/doc.go b/pkg/apis/authorization/doc.go new file mode 100644 index 00000000000..9660e5eacf9 --- /dev/null +++ b/pkg/apis/authorization/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package authorization diff --git a/pkg/apis/authorization/v1beta1/deep_copy_generated.go b/pkg/apis/authorization/v1beta1/deep_copy_generated.go index 59f56c36480..23d2edf03dc 100644 --- a/pkg/apis/authorization/v1beta1/deep_copy_generated.go +++ b/pkg/apis/authorization/v1beta1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1beta1 import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -43,15 +42,11 @@ func init() { } func DeepCopy_v1beta1_LocalSubjectAccessReview(in LocalSubjectAccessReview, out *LocalSubjectAccessReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1beta1_SubjectAccessReviewSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1beta1_SubjectAccessReviewStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } @@ -73,15 +68,11 @@ func DeepCopy_v1beta1_ResourceAttributes(in ResourceAttributes, out *ResourceAtt } func DeepCopy_v1beta1_SelfSubjectAccessReview(in SelfSubjectAccessReview, out *SelfSubjectAccessReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1beta1_SelfSubjectAccessReviewSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1beta1_SubjectAccessReviewStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } @@ -89,18 +80,14 @@ func DeepCopy_v1beta1_SelfSubjectAccessReviewSpec(in SelfSubjectAccessReviewSpec if in.ResourceAttributes != nil { in, out := in.ResourceAttributes, &out.ResourceAttributes *out = new(ResourceAttributes) - if err := DeepCopy_v1beta1_ResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ResourceAttributes = nil } if in.NonResourceAttributes != nil { in, out := in.NonResourceAttributes, &out.NonResourceAttributes *out = new(NonResourceAttributes) - if err := DeepCopy_v1beta1_NonResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NonResourceAttributes = nil } @@ -108,15 +95,11 @@ func DeepCopy_v1beta1_SelfSubjectAccessReviewSpec(in SelfSubjectAccessReviewSpec } func DeepCopy_v1beta1_SubjectAccessReview(in SubjectAccessReview, out *SubjectAccessReview, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := DeepCopy_v1beta1_SubjectAccessReviewSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1beta1_SubjectAccessReviewStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } @@ -124,18 +107,14 @@ func DeepCopy_v1beta1_SubjectAccessReviewSpec(in SubjectAccessReviewSpec, out *S if in.ResourceAttributes != nil { in, out := in.ResourceAttributes, &out.ResourceAttributes *out = new(ResourceAttributes) - if err := DeepCopy_v1beta1_ResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.ResourceAttributes = nil } if in.NonResourceAttributes != nil { in, out := in.NonResourceAttributes, &out.NonResourceAttributes *out = new(NonResourceAttributes) - if err := DeepCopy_v1beta1_NonResourceAttributes(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.NonResourceAttributes = nil } diff --git a/pkg/apis/authorization/v1beta1/doc.go b/pkg/apis/authorization/v1beta1/doc.go index ac2fd00ba91..8eebd4e8795 100644 --- a/pkg/apis/authorization/v1beta1/doc.go +++ b/pkg/apis/authorization/v1beta1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1beta1 diff --git a/pkg/apis/autoscaling/deep_copy_generated.go b/pkg/apis/autoscaling/deep_copy_generated.go index b3a6987c954..1ddcc135b03 100644 --- a/pkg/apis/autoscaling/deep_copy_generated.go +++ b/pkg/apis/autoscaling/deep_copy_generated.go @@ -50,9 +50,7 @@ func DeepCopy_autoscaling_CrossVersionObjectReference(in CrossVersionObjectRefer } func DeepCopy_autoscaling_HorizontalPodAutoscaler(in HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -66,12 +64,8 @@ func DeepCopy_autoscaling_HorizontalPodAutoscaler(in HorizontalPodAutoscaler, ou } func DeepCopy_autoscaling_HorizontalPodAutoscalerList(in HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]HorizontalPodAutoscaler, len(in)) @@ -87,9 +81,7 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerList(in HorizontalPodAutoscaler } func DeepCopy_autoscaling_HorizontalPodAutoscalerSpec(in HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, c *conversion.Cloner) error { - if err := DeepCopy_autoscaling_CrossVersionObjectReference(in.ScaleTargetRef, &out.ScaleTargetRef, c); err != nil { - return err - } + out.ScaleTargetRef = in.ScaleTargetRef if in.MinReplicas != nil { in, out := in.MinReplicas, &out.MinReplicas *out = new(int32) @@ -119,9 +111,7 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerStatus(in HorizontalPodAutoscal if in.LastScaleTime != nil { in, out := in.LastScaleTime, &out.LastScaleTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.LastScaleTime = nil } @@ -138,18 +128,12 @@ func DeepCopy_autoscaling_HorizontalPodAutoscalerStatus(in HorizontalPodAutoscal } func DeepCopy_autoscaling_Scale(in Scale, out *Scale, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_autoscaling_ScaleSpec(in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_autoscaling_ScaleStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Spec = in.Spec + out.Status = in.Status return nil } diff --git a/pkg/apis/autoscaling/doc.go b/pkg/apis/autoscaling/doc.go new file mode 100644 index 00000000000..2c770186ba7 --- /dev/null +++ b/pkg/apis/autoscaling/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package autoscaling diff --git a/pkg/apis/autoscaling/v1/deep_copy_generated.go b/pkg/apis/autoscaling/v1/deep_copy_generated.go index ff94c7aa3bd..af0245eb31b 100644 --- a/pkg/apis/autoscaling/v1/deep_copy_generated.go +++ b/pkg/apis/autoscaling/v1/deep_copy_generated.go @@ -51,9 +51,7 @@ func DeepCopy_v1_CrossVersionObjectReference(in CrossVersionObjectReference, out } func DeepCopy_v1_HorizontalPodAutoscaler(in HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api_v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -67,12 +65,8 @@ func DeepCopy_v1_HorizontalPodAutoscaler(in HorizontalPodAutoscaler, out *Horizo } func DeepCopy_v1_HorizontalPodAutoscalerList(in HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]HorizontalPodAutoscaler, len(in)) @@ -88,9 +82,7 @@ func DeepCopy_v1_HorizontalPodAutoscalerList(in HorizontalPodAutoscalerList, out } func DeepCopy_v1_HorizontalPodAutoscalerSpec(in HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, c *conversion.Cloner) error { - if err := DeepCopy_v1_CrossVersionObjectReference(in.ScaleTargetRef, &out.ScaleTargetRef, c); err != nil { - return err - } + out.ScaleTargetRef = in.ScaleTargetRef if in.MinReplicas != nil { in, out := in.MinReplicas, &out.MinReplicas *out = new(int32) @@ -120,9 +112,7 @@ func DeepCopy_v1_HorizontalPodAutoscalerStatus(in HorizontalPodAutoscalerStatus, if in.LastScaleTime != nil { in, out := in.LastScaleTime, &out.LastScaleTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.LastScaleTime = nil } @@ -139,18 +129,12 @@ func DeepCopy_v1_HorizontalPodAutoscalerStatus(in HorizontalPodAutoscalerStatus, } func DeepCopy_v1_Scale(in Scale, out *Scale, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api_v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_v1_ScaleSpec(in.Spec, &out.Spec, c); err != nil { - return err - } - if err := DeepCopy_v1_ScaleStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Spec = in.Spec + out.Status = in.Status return nil } diff --git a/pkg/apis/autoscaling/v1/doc.go b/pkg/apis/autoscaling/v1/doc.go index 30030131794..0dc08faf0a7 100644 --- a/pkg/apis/autoscaling/v1/doc.go +++ b/pkg/apis/autoscaling/v1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1 diff --git a/pkg/apis/batch/deep_copy_generated.go b/pkg/apis/batch/deep_copy_generated.go index c8106aff072..a6adac46708 100644 --- a/pkg/apis/batch/deep_copy_generated.go +++ b/pkg/apis/batch/deep_copy_generated.go @@ -46,9 +46,7 @@ func init() { } func DeepCopy_batch_Job(in Job, out *Job, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -64,24 +62,16 @@ func DeepCopy_batch_Job(in Job, out *Job, c *conversion.Cloner) error { func DeepCopy_batch_JobCondition(in JobCondition, out *JobCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_batch_JobList(in JobList, out *JobList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Job, len(in)) @@ -155,18 +145,14 @@ func DeepCopy_batch_JobStatus(in JobStatus, out *JobStatus, c *conversion.Cloner if in.StartTime != nil { in, out := in.StartTime, &out.StartTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.StartTime = nil } if in.CompletionTime != nil { in, out := in.CompletionTime, &out.CompletionTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.CompletionTime = nil } @@ -177,9 +163,7 @@ func DeepCopy_batch_JobStatus(in JobStatus, out *JobStatus, c *conversion.Cloner } func DeepCopy_batch_JobTemplate(in JobTemplate, out *JobTemplate, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -200,9 +184,7 @@ func DeepCopy_batch_JobTemplateSpec(in JobTemplateSpec, out *JobTemplateSpec, c } func DeepCopy_batch_ScheduledJob(in ScheduledJob, out *ScheduledJob, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -216,12 +198,8 @@ func DeepCopy_batch_ScheduledJob(in ScheduledJob, out *ScheduledJob, c *conversi } func DeepCopy_batch_ScheduledJobList(in ScheduledJobList, out *ScheduledJobList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ScheduledJob, len(in)) @@ -264,9 +242,7 @@ func DeepCopy_batch_ScheduledJobStatus(in ScheduledJobStatus, out *ScheduledJobS in, out := in.Active, &out.Active *out = make([]api.ObjectReference, len(in)) for i := range in { - if err := api.DeepCopy_api_ObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Active = nil @@ -274,9 +250,7 @@ func DeepCopy_batch_ScheduledJobStatus(in ScheduledJobStatus, out *ScheduledJobS if in.LastScheduleTime != nil { in, out := in.LastScheduleTime, &out.LastScheduleTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.LastScheduleTime = nil } diff --git a/pkg/apis/batch/doc.go b/pkg/apis/batch/doc.go new file mode 100644 index 00000000000..c6b203cd8eb --- /dev/null +++ b/pkg/apis/batch/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package batch diff --git a/pkg/apis/batch/v1/deep_copy_generated.go b/pkg/apis/batch/v1/deep_copy_generated.go index 5374d69144d..53d4eab004d 100644 --- a/pkg/apis/batch/v1/deep_copy_generated.go +++ b/pkg/apis/batch/v1/deep_copy_generated.go @@ -43,9 +43,7 @@ func init() { } func DeepCopy_v1_Job(in Job, out *Job, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api_v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -61,24 +59,16 @@ func DeepCopy_v1_Job(in Job, out *Job, c *conversion.Cloner) error { func DeepCopy_v1_JobCondition(in JobCondition, out *JobCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_v1_JobList(in JobList, out *JobList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Job, len(in)) @@ -152,18 +142,14 @@ func DeepCopy_v1_JobStatus(in JobStatus, out *JobStatus, c *conversion.Cloner) e if in.StartTime != nil { in, out := in.StartTime, &out.StartTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.StartTime = nil } if in.CompletionTime != nil { in, out := in.CompletionTime, &out.CompletionTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.CompletionTime = nil } diff --git a/pkg/apis/batch/v1/doc.go b/pkg/apis/batch/v1/doc.go index 30030131794..0dc08faf0a7 100644 --- a/pkg/apis/batch/v1/doc.go +++ b/pkg/apis/batch/v1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1 diff --git a/pkg/apis/batch/v2alpha1/deep_copy_generated.go b/pkg/apis/batch/v2alpha1/deep_copy_generated.go index f33eb9c21b6..baa1b59646e 100644 --- a/pkg/apis/batch/v2alpha1/deep_copy_generated.go +++ b/pkg/apis/batch/v2alpha1/deep_copy_generated.go @@ -49,9 +49,7 @@ func init() { } func DeepCopy_v2alpha1_Job(in Job, out *Job, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -67,24 +65,16 @@ func DeepCopy_v2alpha1_Job(in Job, out *Job, c *conversion.Cloner) error { func DeepCopy_v2alpha1_JobCondition(in JobCondition, out *JobCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_v2alpha1_JobList(in JobList, out *JobList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Job, len(in)) @@ -158,18 +148,14 @@ func DeepCopy_v2alpha1_JobStatus(in JobStatus, out *JobStatus, c *conversion.Clo if in.StartTime != nil { in, out := in.StartTime, &out.StartTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.StartTime = nil } if in.CompletionTime != nil { in, out := in.CompletionTime, &out.CompletionTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.CompletionTime = nil } @@ -180,9 +166,7 @@ func DeepCopy_v2alpha1_JobStatus(in JobStatus, out *JobStatus, c *conversion.Clo } func DeepCopy_v2alpha1_JobTemplate(in JobTemplate, out *JobTemplate, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -240,9 +224,7 @@ func DeepCopy_v2alpha1_LabelSelectorRequirement(in LabelSelectorRequirement, out } func DeepCopy_v2alpha1_ScheduledJob(in ScheduledJob, out *ScheduledJob, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -256,12 +238,8 @@ func DeepCopy_v2alpha1_ScheduledJob(in ScheduledJob, out *ScheduledJob, c *conve } func DeepCopy_v2alpha1_ScheduledJobList(in ScheduledJobList, out *ScheduledJobList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ScheduledJob, len(in)) @@ -304,9 +282,7 @@ func DeepCopy_v2alpha1_ScheduledJobStatus(in ScheduledJobStatus, out *ScheduledJ in, out := in.Active, &out.Active *out = make([]v1.ObjectReference, len(in)) for i := range in { - if err := v1.DeepCopy_v1_ObjectReference(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Active = nil @@ -314,9 +290,7 @@ func DeepCopy_v2alpha1_ScheduledJobStatus(in ScheduledJobStatus, out *ScheduledJ if in.LastScheduleTime != nil { in, out := in.LastScheduleTime, &out.LastScheduleTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.LastScheduleTime = nil } diff --git a/pkg/apis/batch/v2alpha1/doc.go b/pkg/apis/batch/v2alpha1/doc.go index d320bc733c0..c7cf93b9f98 100644 --- a/pkg/apis/batch/v2alpha1/doc.go +++ b/pkg/apis/batch/v2alpha1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v2alpha1 diff --git a/pkg/apis/certificates/deep_copy_generated.go b/pkg/apis/certificates/deep_copy_generated.go index 51f1323f73d..07b1b2d4d91 100644 --- a/pkg/apis/certificates/deep_copy_generated.go +++ b/pkg/apis/certificates/deep_copy_generated.go @@ -22,7 +22,6 @@ package certificates import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -40,9 +39,7 @@ func init() { } func DeepCopy_certificates_CertificateSigningRequest(in CertificateSigningRequest, out *CertificateSigningRequest, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -59,19 +56,13 @@ func DeepCopy_certificates_CertificateSigningRequestCondition(in CertificateSign out.Type = in.Type out.Reason = in.Reason out.Message = in.Message - if err := unversioned.DeepCopy_unversioned_Time(in.LastUpdateTime, &out.LastUpdateTime, c); err != nil { - return err - } + out.LastUpdateTime = in.LastUpdateTime.DeepCopy() return nil } func DeepCopy_certificates_CertificateSigningRequestList(in CertificateSigningRequestList, out *CertificateSigningRequestList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]CertificateSigningRequest, len(in)) diff --git a/pkg/apis/certificates/doc.go b/pkg/apis/certificates/doc.go new file mode 100644 index 00000000000..d2897cb87d7 --- /dev/null +++ b/pkg/apis/certificates/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package certificates diff --git a/pkg/apis/certificates/types.go b/pkg/apis/certificates/types.go index 46c41e392b4..c0eb47b1f06 100644 --- a/pkg/apis/certificates/types.go +++ b/pkg/apis/certificates/types.go @@ -21,7 +21,8 @@ import ( "k8s.io/kubernetes/pkg/api/unversioned" ) -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Describes a certificate signing request type CertificateSigningRequest struct { diff --git a/pkg/apis/certificates/v1alpha1/deep_copy_generated.go b/pkg/apis/certificates/v1alpha1/deep_copy_generated.go index 6a3e80a0b90..5b4a3ad220b 100644 --- a/pkg/apis/certificates/v1alpha1/deep_copy_generated.go +++ b/pkg/apis/certificates/v1alpha1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1alpha1 import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" v1 "k8s.io/kubernetes/pkg/api/v1" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -41,9 +40,7 @@ func init() { } func DeepCopy_v1alpha1_CertificateSigningRequest(in CertificateSigningRequest, out *CertificateSigningRequest, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -60,19 +57,13 @@ func DeepCopy_v1alpha1_CertificateSigningRequestCondition(in CertificateSigningR out.Type = in.Type out.Reason = in.Reason out.Message = in.Message - if err := unversioned.DeepCopy_unversioned_Time(in.LastUpdateTime, &out.LastUpdateTime, c); err != nil { - return err - } + out.LastUpdateTime = in.LastUpdateTime.DeepCopy() return nil } func DeepCopy_v1alpha1_CertificateSigningRequestList(in CertificateSigningRequestList, out *CertificateSigningRequestList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]CertificateSigningRequest, len(in)) diff --git a/pkg/apis/certificates/v1alpha1/doc.go b/pkg/apis/certificates/v1alpha1/doc.go index 935d55b7423..97c790d9da3 100644 --- a/pkg/apis/certificates/v1alpha1/doc.go +++ b/pkg/apis/certificates/v1alpha1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1alpha1 diff --git a/pkg/apis/certificates/v1alpha1/types.go b/pkg/apis/certificates/v1alpha1/types.go index 85969cfc403..5f046ba85e0 100644 --- a/pkg/apis/certificates/v1alpha1/types.go +++ b/pkg/apis/certificates/v1alpha1/types.go @@ -21,7 +21,8 @@ import ( "k8s.io/kubernetes/pkg/api/v1" ) -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Describes a certificate signing request type CertificateSigningRequest struct { diff --git a/pkg/apis/componentconfig/deep_copy_generated.go b/pkg/apis/componentconfig/deep_copy_generated.go index 9c4259a8dd1..37615c4da52 100644 --- a/pkg/apis/componentconfig/deep_copy_generated.go +++ b/pkg/apis/componentconfig/deep_copy_generated.go @@ -22,7 +22,6 @@ package componentconfig import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -55,9 +54,7 @@ func DeepCopy_componentconfig_IPVar(in IPVar, out *IPVar, c *conversion.Cloner) } func DeepCopy_componentconfig_KubeControllerManagerConfiguration(in KubeControllerManagerConfiguration, out *KubeControllerManagerConfiguration, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Port = in.Port out.Address = in.Address out.CloudProvider = in.CloudProvider @@ -74,46 +71,22 @@ func DeepCopy_componentconfig_KubeControllerManagerConfiguration(in KubeControll out.LookupCacheSizeForRC = in.LookupCacheSizeForRC out.LookupCacheSizeForRS = in.LookupCacheSizeForRS out.LookupCacheSizeForDaemonSet = in.LookupCacheSizeForDaemonSet - if err := unversioned.DeepCopy_unversioned_Duration(in.ServiceSyncPeriod, &out.ServiceSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.NodeSyncPeriod, &out.NodeSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.ResourceQuotaSyncPeriod, &out.ResourceQuotaSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.NamespaceSyncPeriod, &out.NamespaceSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.PVClaimBinderSyncPeriod, &out.PVClaimBinderSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.MinResyncPeriod, &out.MinResyncPeriod, c); err != nil { - return err - } + out.ServiceSyncPeriod = in.ServiceSyncPeriod + out.NodeSyncPeriod = in.NodeSyncPeriod + out.ResourceQuotaSyncPeriod = in.ResourceQuotaSyncPeriod + out.NamespaceSyncPeriod = in.NamespaceSyncPeriod + out.PVClaimBinderSyncPeriod = in.PVClaimBinderSyncPeriod + out.MinResyncPeriod = in.MinResyncPeriod out.TerminatedPodGCThreshold = in.TerminatedPodGCThreshold - if err := unversioned.DeepCopy_unversioned_Duration(in.HorizontalPodAutoscalerSyncPeriod, &out.HorizontalPodAutoscalerSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.DeploymentControllerSyncPeriod, &out.DeploymentControllerSyncPeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.PodEvictionTimeout, &out.PodEvictionTimeout, c); err != nil { - return err - } + out.HorizontalPodAutoscalerSyncPeriod = in.HorizontalPodAutoscalerSyncPeriod + out.DeploymentControllerSyncPeriod = in.DeploymentControllerSyncPeriod + out.PodEvictionTimeout = in.PodEvictionTimeout out.DeletingPodsQps = in.DeletingPodsQps out.DeletingPodsBurst = in.DeletingPodsBurst - if err := unversioned.DeepCopy_unversioned_Duration(in.NodeMonitorGracePeriod, &out.NodeMonitorGracePeriod, c); err != nil { - return err - } + out.NodeMonitorGracePeriod = in.NodeMonitorGracePeriod out.RegisterRetryCount = in.RegisterRetryCount - if err := unversioned.DeepCopy_unversioned_Duration(in.NodeStartupGracePeriod, &out.NodeStartupGracePeriod, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.NodeMonitorPeriod, &out.NodeMonitorPeriod, c); err != nil { - return err - } + out.NodeStartupGracePeriod = in.NodeStartupGracePeriod + out.NodeMonitorPeriod = in.NodeMonitorPeriod out.ServiceAccountKeyFile = in.ServiceAccountKeyFile out.EnableProfiling = in.EnableProfiling out.ClusterName = in.ClusterName @@ -126,23 +99,15 @@ func DeepCopy_componentconfig_KubeControllerManagerConfiguration(in KubeControll out.ContentType = in.ContentType out.KubeAPIQPS = in.KubeAPIQPS out.KubeAPIBurst = in.KubeAPIBurst - if err := DeepCopy_componentconfig_LeaderElectionConfiguration(in.LeaderElection, &out.LeaderElection, c); err != nil { - return err - } - if err := DeepCopy_componentconfig_VolumeConfiguration(in.VolumeConfiguration, &out.VolumeConfiguration, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.ControllerStartInterval, &out.ControllerStartInterval, c); err != nil { - return err - } + out.LeaderElection = in.LeaderElection + out.VolumeConfiguration = in.VolumeConfiguration + out.ControllerStartInterval = in.ControllerStartInterval out.EnableGarbageCollector = in.EnableGarbageCollector return nil } func DeepCopy_componentconfig_KubeProxyConfiguration(in KubeProxyConfiguration, out *KubeProxyConfiguration, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.BindAddress = in.BindAddress out.ClusterCIDR = in.ClusterCIDR out.HealthzBindAddress = in.HealthzBindAddress @@ -155,9 +120,7 @@ func DeepCopy_componentconfig_KubeProxyConfiguration(in KubeProxyConfiguration, } else { out.IPTablesMasqueradeBit = nil } - if err := unversioned.DeepCopy_unversioned_Duration(in.IPTablesSyncPeriod, &out.IPTablesSyncPeriod, c); err != nil { - return err - } + out.IPTablesSyncPeriod = in.IPTablesSyncPeriod out.KubeconfigPath = in.KubeconfigPath out.MasqueradeAll = in.MasqueradeAll out.Master = in.Master @@ -171,20 +134,14 @@ func DeepCopy_componentconfig_KubeProxyConfiguration(in KubeProxyConfiguration, out.Mode = in.Mode out.PortRange = in.PortRange out.ResourceContainer = in.ResourceContainer - if err := unversioned.DeepCopy_unversioned_Duration(in.UDPIdleTimeout, &out.UDPIdleTimeout, c); err != nil { - return err - } + out.UDPIdleTimeout = in.UDPIdleTimeout out.ConntrackMax = in.ConntrackMax - if err := unversioned.DeepCopy_unversioned_Duration(in.ConntrackTCPEstablishedTimeout, &out.ConntrackTCPEstablishedTimeout, c); err != nil { - return err - } + out.ConntrackTCPEstablishedTimeout = in.ConntrackTCPEstablishedTimeout return nil } func DeepCopy_componentconfig_KubeSchedulerConfiguration(in KubeSchedulerConfiguration, out *KubeSchedulerConfiguration, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Port = in.Port out.Address = in.Address out.AlgorithmProvider = in.AlgorithmProvider @@ -196,23 +153,15 @@ func DeepCopy_componentconfig_KubeSchedulerConfiguration(in KubeSchedulerConfigu out.SchedulerName = in.SchedulerName out.HardPodAffinitySymmetricWeight = in.HardPodAffinitySymmetricWeight out.FailureDomains = in.FailureDomains - if err := DeepCopy_componentconfig_LeaderElectionConfiguration(in.LeaderElection, &out.LeaderElection, c); err != nil { - return err - } + out.LeaderElection = in.LeaderElection return nil } func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out *KubeletConfiguration, c *conversion.Cloner) error { out.Config = in.Config - if err := unversioned.DeepCopy_unversioned_Duration(in.SyncFrequency, &out.SyncFrequency, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.FileCheckFrequency, &out.FileCheckFrequency, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.HTTPCheckFrequency, &out.HTTPCheckFrequency, c); err != nil { - return err - } + out.SyncFrequency = in.SyncFrequency + out.FileCheckFrequency = in.FileCheckFrequency + out.HTTPCheckFrequency = in.HTTPCheckFrequency out.ManifestURL = in.ManifestURL out.ManifestURLHeader = in.ManifestURLHeader out.EnableServer = in.EnableServer @@ -236,9 +185,7 @@ func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out out.EventRecordQPS = in.EventRecordQPS out.EventBurst = in.EventBurst out.EnableDebuggingHandlers = in.EnableDebuggingHandlers - if err := unversioned.DeepCopy_unversioned_Duration(in.MinimumGCAge, &out.MinimumGCAge, c); err != nil { - return err - } + out.MinimumGCAge = in.MinimumGCAge out.MaxPerPodContainerCount = in.MaxPerPodContainerCount out.MaxContainerCount = in.MaxContainerCount out.CAdvisorPort = in.CAdvisorPort @@ -249,21 +196,13 @@ func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out out.ClusterDomain = in.ClusterDomain out.MasterServiceNamespace = in.MasterServiceNamespace out.ClusterDNS = in.ClusterDNS - if err := unversioned.DeepCopy_unversioned_Duration(in.StreamingConnectionIdleTimeout, &out.StreamingConnectionIdleTimeout, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.NodeStatusUpdateFrequency, &out.NodeStatusUpdateFrequency, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.ImageMinimumGCAge, &out.ImageMinimumGCAge, c); err != nil { - return err - } + out.StreamingConnectionIdleTimeout = in.StreamingConnectionIdleTimeout + out.NodeStatusUpdateFrequency = in.NodeStatusUpdateFrequency + out.ImageMinimumGCAge = in.ImageMinimumGCAge out.ImageGCHighThresholdPercent = in.ImageGCHighThresholdPercent out.ImageGCLowThresholdPercent = in.ImageGCLowThresholdPercent out.LowDiskSpaceThresholdMB = in.LowDiskSpaceThresholdMB - if err := unversioned.DeepCopy_unversioned_Duration(in.VolumeStatsAggPeriod, &out.VolumeStatsAggPeriod, c); err != nil { - return err - } + out.VolumeStatsAggPeriod = in.VolumeStatsAggPeriod out.NetworkPluginName = in.NetworkPluginName out.NetworkPluginDir = in.NetworkPluginDir out.VolumePluginDir = in.VolumePluginDir @@ -274,9 +213,7 @@ func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out out.SystemCgroups = in.SystemCgroups out.CgroupRoot = in.CgroupRoot out.ContainerRuntime = in.ContainerRuntime - if err := unversioned.DeepCopy_unversioned_Duration(in.RuntimeRequestTimeout, &out.RuntimeRequestTimeout, c); err != nil { - return err - } + out.RuntimeRequestTimeout = in.RuntimeRequestTimeout out.RktPath = in.RktPath out.RktAPIEndpoint = in.RktAPIEndpoint out.RktStage1Image = in.RktStage1Image @@ -300,9 +237,7 @@ func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out out.KubeAPIBurst = in.KubeAPIBurst out.SerializeImagePulls = in.SerializeImagePulls out.ExperimentalFlannelOverlay = in.ExperimentalFlannelOverlay - if err := unversioned.DeepCopy_unversioned_Duration(in.OutOfDiskTransitionFrequency, &out.OutOfDiskTransitionFrequency, c); err != nil { - return err - } + out.OutOfDiskTransitionFrequency = in.OutOfDiskTransitionFrequency out.NodeIP = in.NodeIP if in.NodeLabels != nil { in, out := in.NodeLabels, &out.NodeLabels @@ -318,9 +253,7 @@ func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out out.EvictionHard = in.EvictionHard out.EvictionSoft = in.EvictionSoft out.EvictionSoftGracePeriod = in.EvictionSoftGracePeriod - if err := unversioned.DeepCopy_unversioned_Duration(in.EvictionPressureTransitionPeriod, &out.EvictionPressureTransitionPeriod, c); err != nil { - return err - } + out.EvictionPressureTransitionPeriod = in.EvictionPressureTransitionPeriod out.EvictionMaxPodGracePeriod = in.EvictionMaxPodGracePeriod out.PodsPerCore = in.PodsPerCore out.EnableControllerAttachDetach = in.EnableControllerAttachDetach @@ -329,15 +262,9 @@ func DeepCopy_componentconfig_KubeletConfiguration(in KubeletConfiguration, out func DeepCopy_componentconfig_LeaderElectionConfiguration(in LeaderElectionConfiguration, out *LeaderElectionConfiguration, c *conversion.Cloner) error { out.LeaderElect = in.LeaderElect - if err := unversioned.DeepCopy_unversioned_Duration(in.LeaseDuration, &out.LeaseDuration, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.RenewDeadline, &out.RenewDeadline, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.RetryPeriod, &out.RetryPeriod, c); err != nil { - return err - } + out.LeaseDuration = in.LeaseDuration + out.RenewDeadline = in.RenewDeadline + out.RetryPeriod = in.RetryPeriod return nil } @@ -366,9 +293,7 @@ func DeepCopy_componentconfig_PortRangeVar(in PortRangeVar, out *PortRangeVar, c func DeepCopy_componentconfig_VolumeConfiguration(in VolumeConfiguration, out *VolumeConfiguration, c *conversion.Cloner) error { out.EnableHostPathProvisioning = in.EnableHostPathProvisioning out.EnableDynamicProvisioning = in.EnableDynamicProvisioning - if err := DeepCopy_componentconfig_PersistentVolumeRecyclerConfiguration(in.PersistentVolumeRecyclerConfiguration, &out.PersistentVolumeRecyclerConfiguration, c); err != nil { - return err - } + out.PersistentVolumeRecyclerConfiguration = in.PersistentVolumeRecyclerConfiguration out.FlexVolumePluginDir = in.FlexVolumePluginDir return nil } diff --git a/pkg/apis/componentconfig/doc.go b/pkg/apis/componentconfig/doc.go new file mode 100644 index 00000000000..d044b16db39 --- /dev/null +++ b/pkg/apis/componentconfig/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package componentconfig diff --git a/pkg/apis/componentconfig/v1alpha1/deep_copy_generated.go b/pkg/apis/componentconfig/v1alpha1/deep_copy_generated.go index 69904b5e9b4..04d9ab09b9c 100644 --- a/pkg/apis/componentconfig/v1alpha1/deep_copy_generated.go +++ b/pkg/apis/componentconfig/v1alpha1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1alpha1 import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" ) @@ -38,9 +37,7 @@ func init() { } func DeepCopy_v1alpha1_KubeProxyConfiguration(in KubeProxyConfiguration, out *KubeProxyConfiguration, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.BindAddress = in.BindAddress out.ClusterCIDR = in.ClusterCIDR out.HealthzBindAddress = in.HealthzBindAddress @@ -53,9 +50,7 @@ func DeepCopy_v1alpha1_KubeProxyConfiguration(in KubeProxyConfiguration, out *Ku } else { out.IPTablesMasqueradeBit = nil } - if err := unversioned.DeepCopy_unversioned_Duration(in.IPTablesSyncPeriod, &out.IPTablesSyncPeriod, c); err != nil { - return err - } + out.IPTablesSyncPeriod = in.IPTablesSyncPeriod out.KubeconfigPath = in.KubeconfigPath out.MasqueradeAll = in.MasqueradeAll out.Master = in.Master @@ -69,20 +64,14 @@ func DeepCopy_v1alpha1_KubeProxyConfiguration(in KubeProxyConfiguration, out *Ku out.Mode = in.Mode out.PortRange = in.PortRange out.ResourceContainer = in.ResourceContainer - if err := unversioned.DeepCopy_unversioned_Duration(in.UDPIdleTimeout, &out.UDPIdleTimeout, c); err != nil { - return err - } + out.UDPIdleTimeout = in.UDPIdleTimeout out.ConntrackMax = in.ConntrackMax - if err := unversioned.DeepCopy_unversioned_Duration(in.ConntrackTCPEstablishedTimeout, &out.ConntrackTCPEstablishedTimeout, c); err != nil { - return err - } + out.ConntrackTCPEstablishedTimeout = in.ConntrackTCPEstablishedTimeout return nil } func DeepCopy_v1alpha1_KubeSchedulerConfiguration(in KubeSchedulerConfiguration, out *KubeSchedulerConfiguration, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Port = in.Port out.Address = in.Address out.AlgorithmProvider = in.AlgorithmProvider @@ -114,14 +103,8 @@ func DeepCopy_v1alpha1_LeaderElectionConfiguration(in LeaderElectionConfiguratio } else { out.LeaderElect = nil } - if err := unversioned.DeepCopy_unversioned_Duration(in.LeaseDuration, &out.LeaseDuration, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.RenewDeadline, &out.RenewDeadline, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Duration(in.RetryPeriod, &out.RetryPeriod, c); err != nil { - return err - } + out.LeaseDuration = in.LeaseDuration + out.RenewDeadline = in.RenewDeadline + out.RetryPeriod = in.RetryPeriod return nil } diff --git a/pkg/apis/componentconfig/v1alpha1/doc.go b/pkg/apis/componentconfig/v1alpha1/doc.go index 935d55b7423..97c790d9da3 100644 --- a/pkg/apis/componentconfig/v1alpha1/doc.go +++ b/pkg/apis/componentconfig/v1alpha1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1alpha1 diff --git a/pkg/apis/extensions/deep_copy_generated.go b/pkg/apis/extensions/deep_copy_generated.go index 39f6ac10555..d7bbf3bbac3 100644 --- a/pkg/apis/extensions/deep_copy_generated.go +++ b/pkg/apis/extensions/deep_copy_generated.go @@ -22,7 +22,6 @@ package extensions import ( api "k8s.io/kubernetes/pkg/api" - resource "k8s.io/kubernetes/pkg/api/resource" unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" intstr "k8s.io/kubernetes/pkg/util/intstr" @@ -97,9 +96,7 @@ func DeepCopy_extensions_APIVersion(in APIVersion, out *APIVersion, c *conversio func DeepCopy_extensions_CustomMetricCurrentStatus(in CustomMetricCurrentStatus, out *CustomMetricCurrentStatus, c *conversion.Cloner) error { out.Name = in.Name - if err := resource.DeepCopy_resource_Quantity(in.CurrentValue, &out.CurrentValue, c); err != nil { - return err - } + out.CurrentValue = in.CurrentValue.DeepCopy() return nil } @@ -120,9 +117,7 @@ func DeepCopy_extensions_CustomMetricCurrentStatusList(in CustomMetricCurrentSta func DeepCopy_extensions_CustomMetricTarget(in CustomMetricTarget, out *CustomMetricTarget, c *conversion.Cloner) error { out.Name = in.Name - if err := resource.DeepCopy_resource_Quantity(in.TargetValue, &out.TargetValue, c); err != nil { - return err - } + out.TargetValue = in.TargetValue.DeepCopy() return nil } @@ -142,28 +137,20 @@ func DeepCopy_extensions_CustomMetricTargetList(in CustomMetricTargetList, out * } func DeepCopy_extensions_DaemonSet(in DaemonSet, out *DaemonSet, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_extensions_DaemonSetSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_extensions_DaemonSetStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_extensions_DaemonSetList(in DaemonSetList, out *DaemonSetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]DaemonSet, len(in)) @@ -202,28 +189,20 @@ func DeepCopy_extensions_DaemonSetStatus(in DaemonSetStatus, out *DaemonSetStatu } func DeepCopy_extensions_Deployment(in Deployment, out *Deployment, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_extensions_DeploymentSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_extensions_DeploymentStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_extensions_DeploymentList(in DeploymentList, out *DeploymentList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Deployment, len(in)) @@ -239,9 +218,7 @@ func DeepCopy_extensions_DeploymentList(in DeploymentList, out *DeploymentList, } func DeepCopy_extensions_DeploymentRollback(in DeploymentRollback, out *DeploymentRollback, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Name = in.Name if in.UpdatedAnnotations != nil { in, out := in.UpdatedAnnotations, &out.UpdatedAnnotations @@ -252,9 +229,7 @@ func DeepCopy_extensions_DeploymentRollback(in DeploymentRollback, out *Deployme } else { out.UpdatedAnnotations = nil } - if err := DeepCopy_extensions_RollbackConfig(in.RollbackTo, &out.RollbackTo, c); err != nil { - return err - } + out.RollbackTo = in.RollbackTo return nil } @@ -287,9 +262,7 @@ func DeepCopy_extensions_DeploymentSpec(in DeploymentSpec, out *DeploymentSpec, if in.RollbackTo != nil { in, out := in.RollbackTo, &out.RollbackTo *out = new(RollbackConfig) - if err := DeepCopy_extensions_RollbackConfig(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.RollbackTo = nil } @@ -310,9 +283,7 @@ func DeepCopy_extensions_DeploymentStrategy(in DeploymentStrategy, out *Deployme if in.RollingUpdate != nil { in, out := in.RollingUpdate, &out.RollingUpdate *out = new(RollingUpdateDeployment) - if err := DeepCopy_extensions_RollingUpdateDeployment(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.RollingUpdate = nil } @@ -325,9 +296,7 @@ func DeepCopy_extensions_FSGroupStrategyOptions(in FSGroupStrategyOptions, out * in, out := in.Ranges, &out.Ranges *out = make([]IDRange, len(in)) for i := range in { - if err := DeepCopy_extensions_IDRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ranges = nil @@ -337,9 +306,7 @@ func DeepCopy_extensions_FSGroupStrategyOptions(in FSGroupStrategyOptions, out * func DeepCopy_extensions_HTTPIngressPath(in HTTPIngressPath, out *HTTPIngressPath, c *conversion.Cloner) error { out.Path = in.Path - if err := DeepCopy_extensions_IngressBackend(in.Backend, &out.Backend, c); err != nil { - return err - } + out.Backend = in.Backend return nil } @@ -348,9 +315,7 @@ func DeepCopy_extensions_HTTPIngressRuleValue(in HTTPIngressRuleValue, out *HTTP in, out := in.Paths, &out.Paths *out = make([]HTTPIngressPath, len(in)) for i := range in { - if err := DeepCopy_extensions_HTTPIngressPath(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Paths = nil @@ -371,9 +336,7 @@ func DeepCopy_extensions_IDRange(in IDRange, out *IDRange, c *conversion.Cloner) } func DeepCopy_extensions_Ingress(in Ingress, out *Ingress, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -388,19 +351,13 @@ func DeepCopy_extensions_Ingress(in Ingress, out *Ingress, c *conversion.Cloner) func DeepCopy_extensions_IngressBackend(in IngressBackend, out *IngressBackend, c *conversion.Cloner) error { out.ServiceName = in.ServiceName - if err := intstr.DeepCopy_intstr_IntOrString(in.ServicePort, &out.ServicePort, c); err != nil { - return err - } + out.ServicePort = in.ServicePort return nil } func DeepCopy_extensions_IngressList(in IngressList, out *IngressList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Ingress, len(in)) @@ -440,9 +397,7 @@ func DeepCopy_extensions_IngressSpec(in IngressSpec, out *IngressSpec, c *conver if in.Backend != nil { in, out := in.Backend, &out.Backend *out = new(IngressBackend) - if err := DeepCopy_extensions_IngressBackend(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Backend = nil } @@ -491,9 +446,7 @@ func DeepCopy_extensions_IngressTLS(in IngressTLS, out *IngressTLS, c *conversio } func DeepCopy_extensions_NetworkPolicy(in NetworkPolicy, out *NetworkPolicy, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -530,12 +483,8 @@ func DeepCopy_extensions_NetworkPolicyIngressRule(in NetworkPolicyIngressRule, o } func DeepCopy_extensions_NetworkPolicyList(in NetworkPolicyList, out *NetworkPolicyList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]NetworkPolicy, len(in)) @@ -583,9 +532,7 @@ func DeepCopy_extensions_NetworkPolicyPort(in NetworkPolicyPort, out *NetworkPol if in.Port != nil { in, out := in.Port, &out.Port *out = new(intstr.IntOrString) - if err := intstr.DeepCopy_intstr_IntOrString(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Port = nil } @@ -611,9 +558,7 @@ func DeepCopy_extensions_NetworkPolicySpec(in NetworkPolicySpec, out *NetworkPol } func DeepCopy_extensions_PodSecurityPolicy(in PodSecurityPolicy, out *PodSecurityPolicy, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -624,12 +569,8 @@ func DeepCopy_extensions_PodSecurityPolicy(in PodSecurityPolicy, out *PodSecurit } func DeepCopy_extensions_PodSecurityPolicyList(in PodSecurityPolicyList, out *PodSecurityPolicyList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PodSecurityPolicy, len(in)) @@ -687,9 +628,7 @@ func DeepCopy_extensions_PodSecurityPolicySpec(in PodSecurityPolicySpec, out *Po in, out := in.HostPorts, &out.HostPorts *out = make([]HostPortRange, len(in)) for i := range in { - if err := DeepCopy_extensions_HostPortRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.HostPorts = nil @@ -713,28 +652,20 @@ func DeepCopy_extensions_PodSecurityPolicySpec(in PodSecurityPolicySpec, out *Po } func DeepCopy_extensions_ReplicaSet(in ReplicaSet, out *ReplicaSet, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_extensions_ReplicaSetSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_extensions_ReplicaSetStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_extensions_ReplicaSetList(in ReplicaSetList, out *ReplicaSetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ReplicaSet, len(in)) @@ -774,9 +705,7 @@ func DeepCopy_extensions_ReplicaSetStatus(in ReplicaSetStatus, out *ReplicaSetSt } func DeepCopy_extensions_ReplicationControllerDummy(in ReplicationControllerDummy, out *ReplicationControllerDummy, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta return nil } @@ -786,12 +715,8 @@ func DeepCopy_extensions_RollbackConfig(in RollbackConfig, out *RollbackConfig, } func DeepCopy_extensions_RollingUpdateDeployment(in RollingUpdateDeployment, out *RollingUpdateDeployment, c *conversion.Cloner) error { - if err := intstr.DeepCopy_intstr_IntOrString(in.MaxUnavailable, &out.MaxUnavailable, c); err != nil { - return err - } - if err := intstr.DeepCopy_intstr_IntOrString(in.MaxSurge, &out.MaxSurge, c); err != nil { - return err - } + out.MaxUnavailable = in.MaxUnavailable + out.MaxSurge = in.MaxSurge return nil } @@ -801,9 +726,7 @@ func DeepCopy_extensions_RunAsUserStrategyOptions(in RunAsUserStrategyOptions, o in, out := in.Ranges, &out.Ranges *out = make([]IDRange, len(in)) for i := range in { - if err := DeepCopy_extensions_IDRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ranges = nil @@ -816,9 +739,7 @@ func DeepCopy_extensions_SELinuxStrategyOptions(in SELinuxStrategyOptions, out * if in.SELinuxOptions != nil { in, out := in.SELinuxOptions, &out.SELinuxOptions *out = new(api.SELinuxOptions) - if err := api.DeepCopy_api_SELinuxOptions(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SELinuxOptions = nil } @@ -826,15 +747,11 @@ func DeepCopy_extensions_SELinuxStrategyOptions(in SELinuxStrategyOptions, out * } func DeepCopy_extensions_Scale(in Scale, out *Scale, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_extensions_ScaleSpec(in.Spec, &out.Spec, c); err != nil { - return err - } + out.Spec = in.Spec if err := DeepCopy_extensions_ScaleStatus(in.Status, &out.Status, c); err != nil { return err } @@ -866,9 +783,7 @@ func DeepCopy_extensions_SupplementalGroupsStrategyOptions(in SupplementalGroups in, out := in.Ranges, &out.Ranges *out = make([]IDRange, len(in)) for i := range in { - if err := DeepCopy_extensions_IDRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ranges = nil @@ -877,9 +792,7 @@ func DeepCopy_extensions_SupplementalGroupsStrategyOptions(in SupplementalGroups } func DeepCopy_extensions_ThirdPartyResource(in ThirdPartyResource, out *ThirdPartyResource, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -888,9 +801,7 @@ func DeepCopy_extensions_ThirdPartyResource(in ThirdPartyResource, out *ThirdPar in, out := in.Versions, &out.Versions *out = make([]APIVersion, len(in)) for i := range in { - if err := DeepCopy_extensions_APIVersion(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Versions = nil @@ -899,9 +810,7 @@ func DeepCopy_extensions_ThirdPartyResource(in ThirdPartyResource, out *ThirdPar } func DeepCopy_extensions_ThirdPartyResourceData(in ThirdPartyResourceData, out *ThirdPartyResourceData, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -916,12 +825,8 @@ func DeepCopy_extensions_ThirdPartyResourceData(in ThirdPartyResourceData, out * } func DeepCopy_extensions_ThirdPartyResourceDataList(in ThirdPartyResourceDataList, out *ThirdPartyResourceDataList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ThirdPartyResourceData, len(in)) @@ -937,12 +842,8 @@ func DeepCopy_extensions_ThirdPartyResourceDataList(in ThirdPartyResourceDataLis } func DeepCopy_extensions_ThirdPartyResourceList(in ThirdPartyResourceList, out *ThirdPartyResourceList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ThirdPartyResource, len(in)) diff --git a/pkg/apis/extensions/doc.go b/pkg/apis/extensions/doc.go new file mode 100644 index 00000000000..2bbb71d0571 --- /dev/null +++ b/pkg/apis/extensions/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package extensions diff --git a/pkg/apis/extensions/types.go b/pkg/apis/extensions/types.go index a2b6cc9cde0..8c73db72ea3 100644 --- a/pkg/apis/extensions/types.go +++ b/pkg/apis/extensions/types.go @@ -51,7 +51,8 @@ type ScaleStatus struct { Selector *unversioned.LabelSelector `json:"selector,omitempty"` } -// +genclient=true,noMethods=true +// +genclient=true +// +noMethods=true // represents a scaling request for a resource. type Scale struct { @@ -94,7 +95,8 @@ type CustomMetricCurrentStatusList struct { Items []CustomMetricCurrentStatus `json:"items"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // 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. @@ -624,7 +626,8 @@ type ReplicaSetStatus struct { ObservedGeneration int64 `json:"observedGeneration,omitempty"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // PodSecurityPolicy governs the ability to make requests that affect the SecurityContext // that will be applied to a pod and container. diff --git a/pkg/apis/extensions/v1beta1/deep_copy_generated.go b/pkg/apis/extensions/v1beta1/deep_copy_generated.go index d2a9727c442..b7e43ed8826 100644 --- a/pkg/apis/extensions/v1beta1/deep_copy_generated.go +++ b/pkg/apis/extensions/v1beta1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1beta1 import ( api "k8s.io/kubernetes/pkg/api" - resource "k8s.io/kubernetes/pkg/api/resource" unversioned "k8s.io/kubernetes/pkg/api/unversioned" v1 "k8s.io/kubernetes/pkg/api/v1" conversion "k8s.io/kubernetes/pkg/conversion" @@ -118,9 +117,7 @@ func DeepCopy_v1beta1_CPUTargetUtilization(in CPUTargetUtilization, out *CPUTarg func DeepCopy_v1beta1_CustomMetricCurrentStatus(in CustomMetricCurrentStatus, out *CustomMetricCurrentStatus, c *conversion.Cloner) error { out.Name = in.Name - if err := resource.DeepCopy_resource_Quantity(in.CurrentValue, &out.CurrentValue, c); err != nil { - return err - } + out.CurrentValue = in.CurrentValue.DeepCopy() return nil } @@ -141,9 +138,7 @@ func DeepCopy_v1beta1_CustomMetricCurrentStatusList(in CustomMetricCurrentStatus func DeepCopy_v1beta1_CustomMetricTarget(in CustomMetricTarget, out *CustomMetricTarget, c *conversion.Cloner) error { out.Name = in.Name - if err := resource.DeepCopy_resource_Quantity(in.TargetValue, &out.TargetValue, c); err != nil { - return err - } + out.TargetValue = in.TargetValue.DeepCopy() return nil } @@ -163,28 +158,20 @@ func DeepCopy_v1beta1_CustomMetricTargetList(in CustomMetricTargetList, out *Cus } func DeepCopy_v1beta1_DaemonSet(in DaemonSet, out *DaemonSet, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1beta1_DaemonSetSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1beta1_DaemonSetStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1beta1_DaemonSetList(in DaemonSetList, out *DaemonSetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]DaemonSet, len(in)) @@ -223,28 +210,20 @@ func DeepCopy_v1beta1_DaemonSetStatus(in DaemonSetStatus, out *DaemonSetStatus, } func DeepCopy_v1beta1_Deployment(in Deployment, out *Deployment, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1beta1_DeploymentSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1beta1_DeploymentStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1beta1_DeploymentList(in DeploymentList, out *DeploymentList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Deployment, len(in)) @@ -260,9 +239,7 @@ func DeepCopy_v1beta1_DeploymentList(in DeploymentList, out *DeploymentList, c * } func DeepCopy_v1beta1_DeploymentRollback(in DeploymentRollback, out *DeploymentRollback, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Name = in.Name if in.UpdatedAnnotations != nil { in, out := in.UpdatedAnnotations, &out.UpdatedAnnotations @@ -273,9 +250,7 @@ func DeepCopy_v1beta1_DeploymentRollback(in DeploymentRollback, out *DeploymentR } else { out.UpdatedAnnotations = nil } - if err := DeepCopy_v1beta1_RollbackConfig(in.RollbackTo, &out.RollbackTo, c); err != nil { - return err - } + out.RollbackTo = in.RollbackTo return nil } @@ -314,9 +289,7 @@ func DeepCopy_v1beta1_DeploymentSpec(in DeploymentSpec, out *DeploymentSpec, c * if in.RollbackTo != nil { in, out := in.RollbackTo, &out.RollbackTo *out = new(RollbackConfig) - if err := DeepCopy_v1beta1_RollbackConfig(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.RollbackTo = nil } @@ -347,9 +320,7 @@ func DeepCopy_v1beta1_DeploymentStrategy(in DeploymentStrategy, out *DeploymentS } func DeepCopy_v1beta1_ExportOptions(in ExportOptions, out *ExportOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.Export = in.Export out.Exact = in.Exact return nil @@ -361,9 +332,7 @@ func DeepCopy_v1beta1_FSGroupStrategyOptions(in FSGroupStrategyOptions, out *FSG in, out := in.Ranges, &out.Ranges *out = make([]IDRange, len(in)) for i := range in { - if err := DeepCopy_v1beta1_IDRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ranges = nil @@ -373,9 +342,7 @@ func DeepCopy_v1beta1_FSGroupStrategyOptions(in FSGroupStrategyOptions, out *FSG func DeepCopy_v1beta1_HTTPIngressPath(in HTTPIngressPath, out *HTTPIngressPath, c *conversion.Cloner) error { out.Path = in.Path - if err := DeepCopy_v1beta1_IngressBackend(in.Backend, &out.Backend, c); err != nil { - return err - } + out.Backend = in.Backend return nil } @@ -384,9 +351,7 @@ func DeepCopy_v1beta1_HTTPIngressRuleValue(in HTTPIngressRuleValue, out *HTTPIng in, out := in.Paths, &out.Paths *out = make([]HTTPIngressPath, len(in)) for i := range in { - if err := DeepCopy_v1beta1_HTTPIngressPath(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Paths = nil @@ -395,9 +360,7 @@ func DeepCopy_v1beta1_HTTPIngressRuleValue(in HTTPIngressRuleValue, out *HTTPIng } func DeepCopy_v1beta1_HorizontalPodAutoscaler(in HorizontalPodAutoscaler, out *HorizontalPodAutoscaler, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -411,12 +374,8 @@ func DeepCopy_v1beta1_HorizontalPodAutoscaler(in HorizontalPodAutoscaler, out *H } func DeepCopy_v1beta1_HorizontalPodAutoscalerList(in HorizontalPodAutoscalerList, out *HorizontalPodAutoscalerList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]HorizontalPodAutoscaler, len(in)) @@ -432,9 +391,7 @@ func DeepCopy_v1beta1_HorizontalPodAutoscalerList(in HorizontalPodAutoscalerList } func DeepCopy_v1beta1_HorizontalPodAutoscalerSpec(in HorizontalPodAutoscalerSpec, out *HorizontalPodAutoscalerSpec, c *conversion.Cloner) error { - if err := DeepCopy_v1beta1_SubresourceReference(in.ScaleRef, &out.ScaleRef, c); err != nil { - return err - } + out.ScaleRef = in.ScaleRef if in.MinReplicas != nil { in, out := in.MinReplicas, &out.MinReplicas *out = new(int32) @@ -446,9 +403,7 @@ func DeepCopy_v1beta1_HorizontalPodAutoscalerSpec(in HorizontalPodAutoscalerSpec if in.CPUUtilization != nil { in, out := in.CPUUtilization, &out.CPUUtilization *out = new(CPUTargetUtilization) - if err := DeepCopy_v1beta1_CPUTargetUtilization(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.CPUUtilization = nil } @@ -466,9 +421,7 @@ func DeepCopy_v1beta1_HorizontalPodAutoscalerStatus(in HorizontalPodAutoscalerSt if in.LastScaleTime != nil { in, out := in.LastScaleTime, &out.LastScaleTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.LastScaleTime = nil } @@ -497,9 +450,7 @@ func DeepCopy_v1beta1_IDRange(in IDRange, out *IDRange, c *conversion.Cloner) er } func DeepCopy_v1beta1_Ingress(in Ingress, out *Ingress, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -514,19 +465,13 @@ func DeepCopy_v1beta1_Ingress(in Ingress, out *Ingress, c *conversion.Cloner) er func DeepCopy_v1beta1_IngressBackend(in IngressBackend, out *IngressBackend, c *conversion.Cloner) error { out.ServiceName = in.ServiceName - if err := intstr.DeepCopy_intstr_IntOrString(in.ServicePort, &out.ServicePort, c); err != nil { - return err - } + out.ServicePort = in.ServicePort return nil } func DeepCopy_v1beta1_IngressList(in IngressList, out *IngressList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Ingress, len(in)) @@ -566,9 +511,7 @@ func DeepCopy_v1beta1_IngressSpec(in IngressSpec, out *IngressSpec, c *conversio if in.Backend != nil { in, out := in.Backend, &out.Backend *out = new(IngressBackend) - if err := DeepCopy_v1beta1_IngressBackend(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Backend = nil } @@ -617,9 +560,7 @@ func DeepCopy_v1beta1_IngressTLS(in IngressTLS, out *IngressTLS, c *conversion.C } func DeepCopy_v1beta1_Job(in Job, out *Job, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -635,24 +576,16 @@ func DeepCopy_v1beta1_Job(in Job, out *Job, c *conversion.Cloner) error { func DeepCopy_v1beta1_JobCondition(in JobCondition, out *JobCondition, c *conversion.Cloner) error { out.Type = in.Type out.Status = in.Status - if err := unversioned.DeepCopy_unversioned_Time(in.LastProbeTime, &out.LastProbeTime, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_Time(in.LastTransitionTime, &out.LastTransitionTime, c); err != nil { - return err - } + out.LastProbeTime = in.LastProbeTime.DeepCopy() + out.LastTransitionTime = in.LastTransitionTime.DeepCopy() out.Reason = in.Reason out.Message = in.Message return nil } func DeepCopy_v1beta1_JobList(in JobList, out *JobList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Job, len(in)) @@ -726,18 +659,14 @@ func DeepCopy_v1beta1_JobStatus(in JobStatus, out *JobStatus, c *conversion.Clon if in.StartTime != nil { in, out := in.StartTime, &out.StartTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.StartTime = nil } if in.CompletionTime != nil { in, out := in.CompletionTime, &out.CompletionTime *out = new(unversioned.Time) - if err := unversioned.DeepCopy_unversioned_Time(*in, *out, c); err != nil { - return err - } + **out = in.DeepCopy() } else { out.CompletionTime = nil } @@ -785,9 +714,7 @@ func DeepCopy_v1beta1_LabelSelectorRequirement(in LabelSelectorRequirement, out } func DeepCopy_v1beta1_ListOptions(in ListOptions, out *ListOptions, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta out.LabelSelector = in.LabelSelector out.FieldSelector = in.FieldSelector out.Watch = in.Watch @@ -803,9 +730,7 @@ func DeepCopy_v1beta1_ListOptions(in ListOptions, out *ListOptions, c *conversio } func DeepCopy_v1beta1_NetworkPolicy(in NetworkPolicy, out *NetworkPolicy, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -842,12 +767,8 @@ func DeepCopy_v1beta1_NetworkPolicyIngressRule(in NetworkPolicyIngressRule, out } func DeepCopy_v1beta1_NetworkPolicyList(in NetworkPolicyList, out *NetworkPolicyList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]NetworkPolicy, len(in)) @@ -895,9 +816,7 @@ func DeepCopy_v1beta1_NetworkPolicyPort(in NetworkPolicyPort, out *NetworkPolicy if in.Port != nil { in, out := in.Port, &out.Port *out = new(intstr.IntOrString) - if err := intstr.DeepCopy_intstr_IntOrString(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.Port = nil } @@ -923,9 +842,7 @@ func DeepCopy_v1beta1_NetworkPolicySpec(in NetworkPolicySpec, out *NetworkPolicy } func DeepCopy_v1beta1_PodSecurityPolicy(in PodSecurityPolicy, out *PodSecurityPolicy, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -936,12 +853,8 @@ func DeepCopy_v1beta1_PodSecurityPolicy(in PodSecurityPolicy, out *PodSecurityPo } func DeepCopy_v1beta1_PodSecurityPolicyList(in PodSecurityPolicyList, out *PodSecurityPolicyList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PodSecurityPolicy, len(in)) @@ -999,9 +912,7 @@ func DeepCopy_v1beta1_PodSecurityPolicySpec(in PodSecurityPolicySpec, out *PodSe in, out := in.HostPorts, &out.HostPorts *out = make([]HostPortRange, len(in)) for i := range in { - if err := DeepCopy_v1beta1_HostPortRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.HostPorts = nil @@ -1025,28 +936,20 @@ func DeepCopy_v1beta1_PodSecurityPolicySpec(in PodSecurityPolicySpec, out *PodSe } func DeepCopy_v1beta1_ReplicaSet(in ReplicaSet, out *ReplicaSet, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1beta1_ReplicaSetSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1beta1_ReplicaSetStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1beta1_ReplicaSetList(in ReplicaSetList, out *ReplicaSetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ReplicaSet, len(in)) @@ -1092,9 +995,7 @@ func DeepCopy_v1beta1_ReplicaSetStatus(in ReplicaSetStatus, out *ReplicaSetStatu } func DeepCopy_v1beta1_ReplicationControllerDummy(in ReplicationControllerDummy, out *ReplicationControllerDummy, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta return nil } @@ -1107,18 +1008,14 @@ func DeepCopy_v1beta1_RollingUpdateDeployment(in RollingUpdateDeployment, out *R if in.MaxUnavailable != nil { in, out := in.MaxUnavailable, &out.MaxUnavailable *out = new(intstr.IntOrString) - if err := intstr.DeepCopy_intstr_IntOrString(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.MaxUnavailable = nil } if in.MaxSurge != nil { in, out := in.MaxSurge, &out.MaxSurge *out = new(intstr.IntOrString) - if err := intstr.DeepCopy_intstr_IntOrString(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.MaxSurge = nil } @@ -1131,9 +1028,7 @@ func DeepCopy_v1beta1_RunAsUserStrategyOptions(in RunAsUserStrategyOptions, out in, out := in.Ranges, &out.Ranges *out = make([]IDRange, len(in)) for i := range in { - if err := DeepCopy_v1beta1_IDRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ranges = nil @@ -1146,9 +1041,7 @@ func DeepCopy_v1beta1_SELinuxStrategyOptions(in SELinuxStrategyOptions, out *SEL if in.SELinuxOptions != nil { in, out := in.SELinuxOptions, &out.SELinuxOptions *out = new(v1.SELinuxOptions) - if err := v1.DeepCopy_v1_SELinuxOptions(*in, *out, c); err != nil { - return err - } + **out = *in } else { out.SELinuxOptions = nil } @@ -1156,15 +1049,11 @@ func DeepCopy_v1beta1_SELinuxStrategyOptions(in SELinuxStrategyOptions, out *SEL } func DeepCopy_v1beta1_Scale(in Scale, out *Scale, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } - if err := DeepCopy_v1beta1_ScaleSpec(in.Spec, &out.Spec, c); err != nil { - return err - } + out.Spec = in.Spec if err := DeepCopy_v1beta1_ScaleStatus(in.Status, &out.Status, c); err != nil { return err } @@ -1205,9 +1094,7 @@ func DeepCopy_v1beta1_SupplementalGroupsStrategyOptions(in SupplementalGroupsStr in, out := in.Ranges, &out.Ranges *out = make([]IDRange, len(in)) for i := range in { - if err := DeepCopy_v1beta1_IDRange(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Ranges = nil @@ -1216,9 +1103,7 @@ func DeepCopy_v1beta1_SupplementalGroupsStrategyOptions(in SupplementalGroupsStr } func DeepCopy_v1beta1_ThirdPartyResource(in ThirdPartyResource, out *ThirdPartyResource, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -1227,9 +1112,7 @@ func DeepCopy_v1beta1_ThirdPartyResource(in ThirdPartyResource, out *ThirdPartyR in, out := in.Versions, &out.Versions *out = make([]APIVersion, len(in)) for i := range in { - if err := DeepCopy_v1beta1_APIVersion(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Versions = nil @@ -1238,9 +1121,7 @@ func DeepCopy_v1beta1_ThirdPartyResource(in ThirdPartyResource, out *ThirdPartyR } func DeepCopy_v1beta1_ThirdPartyResourceData(in ThirdPartyResourceData, out *ThirdPartyResourceData, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -1255,12 +1136,8 @@ func DeepCopy_v1beta1_ThirdPartyResourceData(in ThirdPartyResourceData, out *Thi } func DeepCopy_v1beta1_ThirdPartyResourceDataList(in ThirdPartyResourceDataList, out *ThirdPartyResourceDataList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ThirdPartyResourceData, len(in)) @@ -1276,12 +1153,8 @@ func DeepCopy_v1beta1_ThirdPartyResourceDataList(in ThirdPartyResourceDataList, } func DeepCopy_v1beta1_ThirdPartyResourceList(in ThirdPartyResourceList, out *ThirdPartyResourceList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ThirdPartyResource, len(in)) diff --git a/pkg/apis/extensions/v1beta1/doc.go b/pkg/apis/extensions/v1beta1/doc.go index ac2fd00ba91..8eebd4e8795 100644 --- a/pkg/apis/extensions/v1beta1/doc.go +++ b/pkg/apis/extensions/v1beta1/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1beta1 diff --git a/pkg/apis/extensions/v1beta1/types.go b/pkg/apis/extensions/v1beta1/types.go index 99901133847..55719fdbae8 100644 --- a/pkg/apis/extensions/v1beta1/types.go +++ b/pkg/apis/extensions/v1beta1/types.go @@ -46,7 +46,8 @@ type ScaleStatus struct { TargetSelector string `json:"targetSelector,omitempty" protobuf:"bytes,3,opt,name=targetSelector"` } -// +genclient=true,noMethods=true +// +genclient=true +// +noMethods=true // represents a scaling request for a resource. type Scale struct { @@ -166,7 +167,8 @@ type HorizontalPodAutoscalerList struct { Items []HorizontalPodAutoscaler `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // 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. @@ -912,7 +914,8 @@ type ReplicaSetStatus struct { ObservedGeneration int64 `json:"observedGeneration,omitempty" protobuf:"varint,3,opt,name=observedGeneration"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // Pod Security Policy governs the ability to make requests that affect the Security Context // that will be applied to a pod and container. diff --git a/pkg/apis/policy/deep_copy_generated.go b/pkg/apis/policy/deep_copy_generated.go index ab83ab89d62..098a0eed867 100644 --- a/pkg/apis/policy/deep_copy_generated.go +++ b/pkg/apis/policy/deep_copy_generated.go @@ -24,7 +24,6 @@ import ( api "k8s.io/kubernetes/pkg/api" unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" - intstr "k8s.io/kubernetes/pkg/util/intstr" ) func init() { @@ -40,28 +39,20 @@ func init() { } func DeepCopy_policy_PodDisruptionBudget(in PodDisruptionBudget, out *PodDisruptionBudget, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_policy_PodDisruptionBudgetSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_policy_PodDisruptionBudgetStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_policy_PodDisruptionBudgetList(in PodDisruptionBudgetList, out *PodDisruptionBudgetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PodDisruptionBudget, len(in)) @@ -77,9 +68,7 @@ func DeepCopy_policy_PodDisruptionBudgetList(in PodDisruptionBudgetList, out *Po } func DeepCopy_policy_PodDisruptionBudgetSpec(in PodDisruptionBudgetSpec, out *PodDisruptionBudgetSpec, c *conversion.Cloner) error { - if err := intstr.DeepCopy_intstr_IntOrString(in.MinAvailable, &out.MinAvailable, c); err != nil { - return err - } + out.MinAvailable = in.MinAvailable if in.Selector != nil { in, out := in.Selector, &out.Selector *out = new(unversioned.LabelSelector) diff --git a/pkg/apis/policy/doc.go b/pkg/apis/policy/doc.go new file mode 100644 index 00000000000..876858cd9a7 --- /dev/null +++ b/pkg/apis/policy/doc.go @@ -0,0 +1,19 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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. +*/ + +// +k8s:deepcopy-gen=package,register + +package policy diff --git a/pkg/apis/policy/types.go b/pkg/apis/policy/types.go index 9b20699bd22..adc31e59f15 100644 --- a/pkg/apis/policy/types.go +++ b/pkg/apis/policy/types.go @@ -49,7 +49,8 @@ type PodDisruptionBudgetStatus struct { ExpectedPods int32 `json:"expectedPods"` } -// +genclient=true,noMethods=true +// +genclient=true +// +noMethods=true // PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods type PodDisruptionBudget struct { diff --git a/pkg/apis/policy/v1alpha1/deep_copy_generated.go b/pkg/apis/policy/v1alpha1/deep_copy_generated.go index e284bd31bc9..05f286d09bd 100644 --- a/pkg/apis/policy/v1alpha1/deep_copy_generated.go +++ b/pkg/apis/policy/v1alpha1/deep_copy_generated.go @@ -25,7 +25,6 @@ import ( unversioned "k8s.io/kubernetes/pkg/api/unversioned" v1 "k8s.io/kubernetes/pkg/api/v1" conversion "k8s.io/kubernetes/pkg/conversion" - intstr "k8s.io/kubernetes/pkg/util/intstr" ) func init() { @@ -41,28 +40,20 @@ func init() { } func DeepCopy_v1alpha1_PodDisruptionBudget(in PodDisruptionBudget, out *PodDisruptionBudget, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } if err := DeepCopy_v1alpha1_PodDisruptionBudgetSpec(in.Spec, &out.Spec, c); err != nil { return err } - if err := DeepCopy_v1alpha1_PodDisruptionBudgetStatus(in.Status, &out.Status, c); err != nil { - return err - } + out.Status = in.Status return nil } func DeepCopy_v1alpha1_PodDisruptionBudgetList(in PodDisruptionBudgetList, out *PodDisruptionBudgetList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]PodDisruptionBudget, len(in)) @@ -78,9 +69,7 @@ func DeepCopy_v1alpha1_PodDisruptionBudgetList(in PodDisruptionBudgetList, out * } func DeepCopy_v1alpha1_PodDisruptionBudgetSpec(in PodDisruptionBudgetSpec, out *PodDisruptionBudgetSpec, c *conversion.Cloner) error { - if err := intstr.DeepCopy_intstr_IntOrString(in.MinAvailable, &out.MinAvailable, c); err != nil { - return err - } + out.MinAvailable = in.MinAvailable if in.Selector != nil { in, out := in.Selector, &out.Selector *out = new(unversioned.LabelSelector) diff --git a/pkg/apis/policy/v1alpha1/doc.go b/pkg/apis/policy/v1alpha1/doc.go index 67857651c4f..37d78e29170 100644 --- a/pkg/apis/policy/v1alpha1/doc.go +++ b/pkg/apis/policy/v1alpha1/doc.go @@ -14,6 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // Package policy is for any kind of policy object. Suitable examples, even if // they aren't all here, are PodDisruptionBudget, PodSecurityPolicy, // NetworkPolicy, etc. diff --git a/pkg/apis/policy/v1alpha1/types.go b/pkg/apis/policy/v1alpha1/types.go index 09d62285c78..efe136fda2a 100644 --- a/pkg/apis/policy/v1alpha1/types.go +++ b/pkg/apis/policy/v1alpha1/types.go @@ -50,7 +50,8 @@ type PodDisruptionBudgetStatus struct { ExpectedPods int32 `json:"expectedPods" protobuf:"varint,4,opt,name=expectedPods"` } -// +genclient=true,noMethods=true +// +genclient=true +// +noMethods=true // PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods type PodDisruptionBudget struct { diff --git a/pkg/apis/rbac/deep_copy_generated.go b/pkg/apis/rbac/deep_copy_generated.go index 6c2bb5716ea..10d8c40f61e 100644 --- a/pkg/apis/rbac/deep_copy_generated.go +++ b/pkg/apis/rbac/deep_copy_generated.go @@ -22,7 +22,6 @@ package rbac import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" conversion "k8s.io/kubernetes/pkg/conversion" runtime "k8s.io/kubernetes/pkg/runtime" ) @@ -46,9 +45,7 @@ func init() { } func DeepCopy_rbac_ClusterRole(in ClusterRole, out *ClusterRole, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -67,9 +64,7 @@ func DeepCopy_rbac_ClusterRole(in ClusterRole, out *ClusterRole, c *conversion.C } func DeepCopy_rbac_ClusterRoleBinding(in ClusterRoleBinding, out *ClusterRoleBinding, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -77,26 +72,18 @@ func DeepCopy_rbac_ClusterRoleBinding(in ClusterRoleBinding, out *ClusterRoleBin in, out := in.Subjects, &out.Subjects *out = make([]Subject, len(in)) for i := range in { - if err := DeepCopy_rbac_Subject(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Subjects = nil } - if err := api.DeepCopy_api_ObjectReference(in.RoleRef, &out.RoleRef, c); err != nil { - return err - } + out.RoleRef = in.RoleRef return nil } func DeepCopy_rbac_ClusterRoleBindingList(in ClusterRoleBindingList, out *ClusterRoleBindingList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ClusterRoleBinding, len(in)) @@ -112,12 +99,8 @@ func DeepCopy_rbac_ClusterRoleBindingList(in ClusterRoleBindingList, out *Cluste } func DeepCopy_rbac_ClusterRoleList(in ClusterRoleList, out *ClusterRoleList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ClusterRole, len(in)) @@ -179,9 +162,7 @@ func DeepCopy_rbac_PolicyRule(in PolicyRule, out *PolicyRule, c *conversion.Clon } func DeepCopy_rbac_Role(in Role, out *Role, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -200,9 +181,7 @@ func DeepCopy_rbac_Role(in Role, out *Role, c *conversion.Cloner) error { } func DeepCopy_rbac_RoleBinding(in RoleBinding, out *RoleBinding, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := api.DeepCopy_api_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -210,26 +189,18 @@ func DeepCopy_rbac_RoleBinding(in RoleBinding, out *RoleBinding, c *conversion.C in, out := in.Subjects, &out.Subjects *out = make([]Subject, len(in)) for i := range in { - if err := DeepCopy_rbac_Subject(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Subjects = nil } - if err := api.DeepCopy_api_ObjectReference(in.RoleRef, &out.RoleRef, c); err != nil { - return err - } + out.RoleRef = in.RoleRef return nil } func DeepCopy_rbac_RoleBindingList(in RoleBindingList, out *RoleBindingList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]RoleBinding, len(in)) @@ -245,12 +216,8 @@ func DeepCopy_rbac_RoleBindingList(in RoleBindingList, out *RoleBindingList, c * } func DeepCopy_rbac_RoleList(in RoleList, out *RoleList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Role, len(in)) diff --git a/pkg/apis/rbac/doc.go b/pkg/apis/rbac/doc.go index c5f057484c4..e4ce69b40b9 100644 --- a/pkg/apis/rbac/doc.go +++ b/pkg/apis/rbac/doc.go @@ -14,5 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ +// +k8s:deepcopy-gen=package,register + // +groupName=rbac.authorization.k8s.io package rbac diff --git a/pkg/apis/rbac/types.go b/pkg/apis/rbac/types.go index 361c9361513..44a38971b45 100644 --- a/pkg/apis/rbac/types.go +++ b/pkg/apis/rbac/types.go @@ -126,7 +126,8 @@ type RoleList struct { Items []Role } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding. type ClusterRole struct { @@ -138,7 +139,8 @@ type ClusterRole struct { Rules []PolicyRule } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // ClusterRoleBinding references a ClusterRole, but not contain it. It can reference a ClusterRole in the global namespace, // and adds who information via Subject. diff --git a/pkg/apis/rbac/v1alpha1/deep_copy_generated.go b/pkg/apis/rbac/v1alpha1/deep_copy_generated.go index 8b46841482d..3f0e1eb360d 100644 --- a/pkg/apis/rbac/v1alpha1/deep_copy_generated.go +++ b/pkg/apis/rbac/v1alpha1/deep_copy_generated.go @@ -22,7 +22,6 @@ package v1alpha1 import ( api "k8s.io/kubernetes/pkg/api" - unversioned "k8s.io/kubernetes/pkg/api/unversioned" v1 "k8s.io/kubernetes/pkg/api/v1" conversion "k8s.io/kubernetes/pkg/conversion" runtime "k8s.io/kubernetes/pkg/runtime" @@ -47,9 +46,7 @@ func init() { } func DeepCopy_v1alpha1_ClusterRole(in ClusterRole, out *ClusterRole, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -68,9 +65,7 @@ func DeepCopy_v1alpha1_ClusterRole(in ClusterRole, out *ClusterRole, c *conversi } func DeepCopy_v1alpha1_ClusterRoleBinding(in ClusterRoleBinding, out *ClusterRoleBinding, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -78,26 +73,18 @@ func DeepCopy_v1alpha1_ClusterRoleBinding(in ClusterRoleBinding, out *ClusterRol in, out := in.Subjects, &out.Subjects *out = make([]Subject, len(in)) for i := range in { - if err := DeepCopy_v1alpha1_Subject(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Subjects = nil } - if err := v1.DeepCopy_v1_ObjectReference(in.RoleRef, &out.RoleRef, c); err != nil { - return err - } + out.RoleRef = in.RoleRef return nil } func DeepCopy_v1alpha1_ClusterRoleBindingList(in ClusterRoleBindingList, out *ClusterRoleBindingList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ClusterRoleBinding, len(in)) @@ -113,12 +100,8 @@ func DeepCopy_v1alpha1_ClusterRoleBindingList(in ClusterRoleBindingList, out *Cl } func DeepCopy_v1alpha1_ClusterRoleList(in ClusterRoleList, out *ClusterRoleList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]ClusterRole, len(in)) @@ -176,9 +159,7 @@ func DeepCopy_v1alpha1_PolicyRule(in PolicyRule, out *PolicyRule, c *conversion. } func DeepCopy_v1alpha1_Role(in Role, out *Role, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -197,9 +178,7 @@ func DeepCopy_v1alpha1_Role(in Role, out *Role, c *conversion.Cloner) error { } func DeepCopy_v1alpha1_RoleBinding(in RoleBinding, out *RoleBinding, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if err := v1.DeepCopy_v1_ObjectMeta(in.ObjectMeta, &out.ObjectMeta, c); err != nil { return err } @@ -207,26 +186,18 @@ func DeepCopy_v1alpha1_RoleBinding(in RoleBinding, out *RoleBinding, c *conversi in, out := in.Subjects, &out.Subjects *out = make([]Subject, len(in)) for i := range in { - if err := DeepCopy_v1alpha1_Subject(in[i], &(*out)[i], c); err != nil { - return err - } + (*out)[i] = in[i] } } else { out.Subjects = nil } - if err := v1.DeepCopy_v1_ObjectReference(in.RoleRef, &out.RoleRef, c); err != nil { - return err - } + out.RoleRef = in.RoleRef return nil } func DeepCopy_v1alpha1_RoleBindingList(in RoleBindingList, out *RoleBindingList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]RoleBinding, len(in)) @@ -242,12 +213,8 @@ func DeepCopy_v1alpha1_RoleBindingList(in RoleBindingList, out *RoleBindingList, } func DeepCopy_v1alpha1_RoleList(in RoleList, out *RoleList, c *conversion.Cloner) error { - if err := unversioned.DeepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } - if err := unversioned.DeepCopy_unversioned_ListMeta(in.ListMeta, &out.ListMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta + out.ListMeta = in.ListMeta if in.Items != nil { in, out := in.Items, &out.Items *out = make([]Role, len(in)) diff --git a/pkg/apis/rbac/v1alpha1/doc.go b/pkg/apis/rbac/v1alpha1/doc.go index 84205537df6..35aef40894f 100644 --- a/pkg/apis/rbac/v1alpha1/doc.go +++ b/pkg/apis/rbac/v1alpha1/doc.go @@ -15,5 +15,7 @@ limitations under the License. */ // +groupName=rbac.authorization.k8s.io +// +k8s:deepcopy-gen=package,register + // +genconversion=true package v1alpha1 diff --git a/pkg/apis/rbac/v1alpha1/types.go b/pkg/apis/rbac/v1alpha1/types.go index e05c78998d1..a260facea9b 100644 --- a/pkg/apis/rbac/v1alpha1/types.go +++ b/pkg/apis/rbac/v1alpha1/types.go @@ -113,7 +113,8 @@ type RoleList struct { Items []Role `json:"items" protobuf:"bytes,2,rep,name=items"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding. type ClusterRole struct { @@ -125,7 +126,8 @@ type ClusterRole struct { Rules []PolicyRule `json:"rules" protobuf:"bytes,2,rep,name=rules"` } -// +genclient=true,nonNamespaced=true +// +genclient=true +// +nonNamespaced=true // ClusterRoleBinding references a ClusterRole, but not contain it. It can reference a ClusterRole in the global namespace, // and adds who information via Subject. diff --git a/pkg/runtime/deep_copy_generated.go b/pkg/runtime/deep_copy_generated.go index 3456eabeb32..6f5f613076c 100644 --- a/pkg/runtime/deep_copy_generated.go +++ b/pkg/runtime/deep_copy_generated.go @@ -49,9 +49,7 @@ func DeepCopy_runtime_TypeMeta(in TypeMeta, out *TypeMeta, c *conversion.Cloner) } func DeepCopy_runtime_Unknown(in Unknown, out *Unknown, c *conversion.Cloner) error { - if err := DeepCopy_runtime_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { - return err - } + out.TypeMeta = in.TypeMeta if in.Raw != nil { in, out := in.Raw, &out.Raw *out = make([]byte, len(in)) diff --git a/pkg/runtime/doc.go b/pkg/runtime/doc.go index 7bdc70a2f77..a9d084d9fbe 100644 --- a/pkg/runtime/doc.go +++ b/pkg/runtime/doc.go @@ -41,4 +41,5 @@ limitations under the License. // // As a bonus, a few common types useful from all api objects and versions // are provided in types.go. + package runtime diff --git a/pkg/runtime/generated.proto b/pkg/runtime/generated.proto index ce55c88ec44..0e602abe1b3 100644 --- a/pkg/runtime/generated.proto +++ b/pkg/runtime/generated.proto @@ -69,7 +69,7 @@ option go_package = "runtime"; // in the Object. (TODO: In the case where the object is of an unknown type, a // runtime.Unknown object will be created and stored.) // -// +gencopy=true +// +k8s:deepcopy-gen=true // +protobuf=true message RawExtension { // Raw is the underlying serialization of this object. @@ -89,7 +89,7 @@ message RawExtension { // TypeMeta is provided here for convenience. You may use it directly from this package or define // your own with the same fields. // -// +gencopy=true +// +k8s:deepcopy-gen=true // +protobuf=true message TypeMeta { optional string apiVersion = 1; @@ -103,7 +103,7 @@ message TypeMeta { // TODO: Make this object have easy access to field based accessors and settors for // metadata and field mutatation. // -// +gencopy=true +// +k8s:deepcopy-gen=true // +protobuf=true message Unknown { optional TypeMeta typeMeta = 1; diff --git a/pkg/runtime/types.go b/pkg/runtime/types.go index 3e810bc0547..5033c0dc2c9 100644 --- a/pkg/runtime/types.go +++ b/pkg/runtime/types.go @@ -40,7 +40,7 @@ import ( // TypeMeta is provided here for convenience. You may use it directly from this package or define // your own with the same fields. // -// +gencopy=true +// +k8s:deepcopy-gen=true // +protobuf=true type TypeMeta struct { APIVersion string `json:"apiVersion,omitempty" yaml:"apiVersion,omitempty" protobuf:"bytes,1,opt,name=apiVersion"` @@ -93,7 +93,7 @@ const ( // in the Object. (TODO: In the case where the object is of an unknown type, a // runtime.Unknown object will be created and stored.) // -// +gencopy=true +// +k8s:deepcopy-gen=true // +protobuf=true type RawExtension struct { // Raw is the underlying serialization of this object. @@ -111,7 +111,7 @@ type RawExtension struct { // TODO: Make this object have easy access to field based accessors and settors for // metadata and field mutatation. // -// +gencopy=true +// +k8s:deepcopy-gen=true // +protobuf=true type Unknown struct { TypeMeta `json:",inline" protobuf:"bytes,1,opt,name=typeMeta"` diff --git a/pkg/util/intstr/generated.proto b/pkg/util/intstr/generated.proto index b29579a0de9..dd508e1c8fa 100644 --- a/pkg/util/intstr/generated.proto +++ b/pkg/util/intstr/generated.proto @@ -30,7 +30,6 @@ option go_package = "intstr"; // accept a name or number. // TODO: Rename to Int32OrString // -// +gencopy=true // +protobuf=true // +protobuf.options.(gogoproto.goproto_stringer)=false message IntOrString { diff --git a/pkg/util/intstr/intstr.go b/pkg/util/intstr/intstr.go index c50d14fad50..59e7a066336 100644 --- a/pkg/util/intstr/intstr.go +++ b/pkg/util/intstr/intstr.go @@ -32,7 +32,6 @@ import ( // accept a name or number. // TODO: Rename to Int32OrString // -// +gencopy=true // +protobuf=true // +protobuf.options.(gogoproto.goproto_stringer)=false type IntOrString struct {