Use code-generator to generate clientset/informer/lister (#1492)

To reduce maintenance effort and avoid writing duplicate informer code,
use code-generator to generate clientset/informer/lister code.
This commit is contained in:
Ta-Ching Chen
2020-01-16 15:18:38 +08:00
committed by GitHub
parent b96ca0735d
commit 574fb55fcf
169 changed files with 6325 additions and 2349 deletions
+6 -6
View File
@@ -91,7 +91,7 @@ func (opts *CreateSubCommand) run(input cli.Input) error {
return errors.Wrap(err, fmt.Sprintf("error reading spec in '%v'", specDir))
}
exists, err := fr.ExistsInSpecs(fv1.Environment{
Metadata: metav1.ObjectMeta{
ObjectMeta: metav1.ObjectMeta{
Name: envName,
Namespace: envNamespace,
},
@@ -164,14 +164,14 @@ func CreatePackage(input cli.Input, client client.Interface, pkgName string, pkg
}
pkg := &fv1.Package{
Metadata: metav1.ObjectMeta{
ObjectMeta: metav1.ObjectMeta{
Name: pkgName,
Namespace: pkgNamespace,
},
Spec: pkgSpec,
Status: fv1.PackageStatus{
BuildStatus: pkgStatus,
LastUpdateTimestamp: time.Now().UTC(),
LastUpdateTimestamp: metav1.Time{Time: time.Now().UTC()},
},
}
@@ -185,15 +185,15 @@ func CreatePackage(input cli.Input, client client.Interface, pkgName string, pkg
obj := fr.SpecExists(pkg, true, true)
if obj != nil {
pkg := obj.(*fv1.Package)
fmt.Printf("Re-using previously created package %v\n", pkg.Metadata.Name)
return &pkg.Metadata, nil
fmt.Printf("Re-using previously created package %v\n", pkg.ObjectMeta.Name)
return &pkg.ObjectMeta, nil
}
err = spec.SpecSave(*pkg, specFile)
if err != nil {
return nil, errors.Wrap(err, "error saving package spec")
}
return &pkg.Metadata, nil
return &pkg.ObjectMeta, nil
} else {
pkgMetadata, err := client.V1().Package().Create(pkg)
if err != nil {
+3 -3
View File
@@ -106,12 +106,12 @@ func deleteOrphanPkgs(client client.Interface, pkgNamespace string) error {
// range through all packages and find out the ones not referenced by any function
for _, pkg := range pkgList {
fnList, err := GetFunctionsByPackage(client, pkg.Metadata.Name, pkgNamespace)
fnList, err := GetFunctionsByPackage(client, pkg.ObjectMeta.Name, pkgNamespace)
if err != nil {
return errors.Wrap(err, fmt.Sprintf("get functions sharing package %s", pkg.Metadata.Name))
return errors.Wrap(err, fmt.Sprintf("get functions sharing package %s", pkg.ObjectMeta.Name))
}
if len(fnList) == 0 {
err = deletePackage(client, pkg.Metadata.Name, pkgNamespace)
err = deletePackage(client, pkg.ObjectMeta.Name, pkgNamespace)
if err != nil {
return err
}
+4 -4
View File
@@ -65,7 +65,7 @@ func (opts *ListSubCommand) run(input cli.Input) error {
// sort the package list by lastUpdatedTimestamp
sort.Slice(pkgList, func(i, j int) bool {
return pkgList[i].Status.LastUpdateTimestamp.After(pkgList[j].Status.LastUpdateTimestamp)
return pkgList[i].Status.LastUpdateTimestamp.After(pkgList[j].Status.LastUpdateTimestamp.Time)
})
w := tabwriter.NewWriter(os.Stdout, 0, 0, 1, ' ', 0)
@@ -75,9 +75,9 @@ func (opts *ListSubCommand) run(input cli.Input) error {
show := true
// TODO improve list speed when --orphan
if opts.listOrphans {
fnList, err := GetFunctionsByPackage(opts.Client(), pkg.Metadata.Name, pkg.Metadata.Namespace)
fnList, err := GetFunctionsByPackage(opts.Client(), pkg.ObjectMeta.Name, pkg.ObjectMeta.Namespace)
if err != nil {
return errors.Wrap(err, fmt.Sprintf("get functions sharing package %s", pkg.Metadata.Name))
return errors.Wrap(err, fmt.Sprintf("get functions sharing package %s", pkg.ObjectMeta.Name))
}
if len(fnList) > 0 {
show = false
@@ -87,7 +87,7 @@ func (opts *ListSubCommand) run(input cli.Input) error {
show = false
}
if show {
fmt.Fprintf(w, "%v\t%v\t%v\t%v\n", pkg.Metadata.Name, pkg.Status.BuildStatus, pkg.Spec.Environment.Name, pkg.Status.LastUpdateTimestamp.Format(time.RFC822))
fmt.Fprintf(w, "%v\t%v\t%v\t%v\n", pkg.ObjectMeta.Name, pkg.Status.BuildStatus, pkg.Spec.Environment.Name, pkg.Status.LastUpdateTimestamp.Format(time.RFC822))
}
}
+2 -2
View File
@@ -63,7 +63,7 @@ func (opts *RebuildSubCommand) run(input cli.Input) error {
if pkg.Status.BuildStatus != fv1.BuildStatusFailed {
return errors.New(fmt.Sprintf("Package %v is not in %v state.",
pkg.Metadata.Name, fv1.BuildStatusFailed))
pkg.ObjectMeta.Name, fv1.BuildStatusFailed))
}
_, err = updatePackageStatus(opts.Client(), pkg, fv1.BuildStatusPending)
@@ -71,7 +71,7 @@ func (opts *RebuildSubCommand) run(input cli.Input) error {
return errors.Wrap(err, "update package status")
}
fmt.Printf("Retrying build for pkg %v. Use \"fission pkg info --name %v\" to view status.\n", pkg.Metadata.Name, pkg.Metadata.Name)
fmt.Printf("Retrying build for pkg %v. Use \"fission pkg info --name %v\" to view status.\n", pkg.ObjectMeta.Name, pkg.ObjectMeta.Name)
return nil
}
+6 -6
View File
@@ -68,7 +68,7 @@ func (opts *UpdateSubCommand) run(input cli.Input) error {
forceUpdate := input.Bool(flagkey.PkgForce)
fnList, err := GetFunctionsByPackage(opts.Client(), pkg.Metadata.Name, pkg.Metadata.Namespace)
fnList, err := GetFunctionsByPackage(opts.Client(), pkg.ObjectMeta.Name, pkg.ObjectMeta.Namespace)
if err != nil {
return errors.Wrap(err, "error getting function list")
}
@@ -82,7 +82,7 @@ func (opts *UpdateSubCommand) run(input cli.Input) error {
return errors.Wrap(err, "error updating package")
}
if pkg.Metadata.ResourceVersion != newPkgMeta.ResourceVersion {
if pkg.ObjectMeta.ResourceVersion != newPkgMeta.ResourceVersion {
err = UpdateFunctionPackageResourceVersion(opts.Client(), newPkgMeta, fnList...)
if err != nil {
return errors.Wrap(err, "error updating function package reference resource version")
@@ -166,7 +166,7 @@ func UpdatePackage(input cli.Input, client client.Interface, pkg *fv1.Package) (
}
if !needToUpdate {
return &pkg.Metadata, nil
return &pkg.ObjectMeta, nil
}
// Set package as pending status when needToBuild is true
@@ -174,7 +174,7 @@ func UpdatePackage(input cli.Input, client client.Interface, pkg *fv1.Package) (
// change into pending state to trigger package build
pkg.Status = fv1.PackageStatus{
BuildStatus: fv1.BuildStatusPending,
LastUpdateTimestamp: time.Now().UTC(),
LastUpdateTimestamp: metav1.Time{Time: time.Now().UTC()},
}
}
@@ -196,7 +196,7 @@ func UpdateFunctionPackageResourceVersion(client client.Interface, pkgMeta *meta
fn.Spec.Package.PackageRef.ResourceVersion = pkgMeta.ResourceVersion
_, err := client.V1().Function().Update(&fn)
if err != nil {
errs = multierror.Append(errs, errors.Wrapf(err, "error updating package resource version of function '%v'", fn.Metadata.Name))
errs = multierror.Append(errs, errors.Wrapf(err, "error updating package resource version of function '%v'", fn.ObjectMeta.Name))
}
}
@@ -208,7 +208,7 @@ func updatePackageStatus(client client.Interface, pkg *fv1.Package, status fv1.B
case fv1.BuildStatusNone, fv1.BuildStatusPending, fv1.BuildStatusRunning, fv1.BuildStatusSucceeded, fv1.CanaryConfigStatusAborted:
pkg.Status = fv1.PackageStatus{
BuildStatus: status,
LastUpdateTimestamp: time.Now().UTC(),
LastUpdateTimestamp: metav1.Time{Time: time.Now().UTC()},
}
pkg, err := client.V1().Package().Update(pkg)
return pkg, err
+1 -1
View File
@@ -182,7 +182,7 @@ func PrintPackageSummary(writer io.Writer, pkg *fv1.Package) {
// replace escaped line breaker character
buildlog := strings.ReplaceAll(pkg.Status.BuildLog, `\n`, "\n")
w := tabwriter.NewWriter(writer, 0, 0, 1, ' ', 0)
fmt.Fprintf(w, "%v\t%v\n", "Name:", pkg.Metadata.Name)
fmt.Fprintf(w, "%v\t%v\n", "Name:", pkg.ObjectMeta.Name)
fmt.Fprintf(w, "%v\t%v\n", "Environment:", pkg.Spec.Environment.Name)
fmt.Fprintf(w, "%v\t%v\n", "Status:", pkg.Status.BuildStatus)
fmt.Fprintf(w, "%v\n%v", "Build Logs:", buildlog)
@@ -13,7 +13,7 @@ import (
func TestPrintPackageSummary(t *testing.T) {
pkg := &fv1.Package{
Metadata: metav1.ObjectMeta{
ObjectMeta: metav1.ObjectMeta{
Name: "foobar",
Namespace: "dummy",
},