...

Source file src/edge-infra.dev/pkg/f8n/warehouse/k8s/controllers/lumperctl/oci.go

Documentation: edge-infra.dev/pkg/f8n/warehouse/k8s/controllers/lumperctl

     1  package lumperctl
     2  
     3  import (
     4  	"fmt"
     5  
     6  	"github.com/go-logr/logr"
     7  	"github.com/google/go-containerregistry/pkg/name"
     8  
     9  	whv1 "edge-infra.dev/pkg/f8n/warehouse/k8s/apis/v1alpha2"
    10  	"edge-infra.dev/pkg/k8s/runtime/controller/reconcile/recerr"
    11  )
    12  
    13  // parseRef parses the reference and handles status updates for the
    14  // resource
    15  func parseRef(a whv1.Artifact) (name.Reference, recerr.Error) {
    16  	ref, err := a.Ref()
    17  	if err != nil {
    18  		return nil, recerr.NewStalled(
    19  			fmt.Errorf("failed to parse OCI reference: %w", err),
    20  			whv1.InvalidReferenceReason,
    21  		)
    22  	}
    23  	return ref, nil
    24  }
    25  
    26  // decorate logger with OCI ref information
    27  func logWithRef(log logr.Logger, ref name.Reference, pkgName string) logr.Logger {
    28  	return log.WithValues(
    29  		"repo", ref.Context().RegistryStr()+"/"+ref.Context().RepositoryStr(),
    30  		"identifier", ref.Identifier(),
    31  		"package", pkgName,
    32  		"ref", ref,
    33  	)
    34  }
    35  

View as plain text