diff --git a/client/go.mod b/client/go.mod index cd0ea9ba2..9edc227c5 100644 --- a/client/go.mod +++ b/client/go.mod @@ -14,7 +14,7 @@ require ( github.com/ProtonMail/gopenpgp/v2 v2.7.5 github.com/adrg/xdg v0.5.3 github.com/blang/semver v3.5.1+incompatible - github.com/cosi-project/runtime v0.6.4 + github.com/cosi-project/runtime v0.7.1 github.com/dustin/go-humanize v1.0.1 github.com/fatih/color v1.18.0 github.com/gertd/go-pluralize v0.2.1 diff --git a/client/go.sum b/client/go.sum index 2cf1311ef..d29abe4dc 100644 --- a/client/go.sum +++ b/client/go.sum @@ -27,8 +27,8 @@ github.com/containerd/go-cni v1.1.10 h1:c2U73nld7spSWfiJwSh/8W9DK+/qQwYM2rngIhCy github.com/containerd/go-cni v1.1.10/go.mod h1:/Y/sL8yqYQn1ZG1om1OncJB1W4zN3YmjfP/ShCzG/OY= github.com/containernetworking/cni v1.2.3 h1:hhOcjNVUQTnzdRJ6alC5XF+wd9mfGIUaj8FuJbEslXM= github.com/containernetworking/cni v1.2.3/go.mod h1:DuLgF+aPd3DzcTQTtp/Nvl1Kim23oFKdm2okJzBQA5M= -github.com/cosi-project/runtime v0.6.4 h1:roifc5e+Q1+72EI36BYSRT9aXyskU+coiKHeoBBWkMg= -github.com/cosi-project/runtime v0.6.4/go.mod h1:EMLs8a55tJ6zA4UyDbRsTvXBd6UIlNwZfCVGvCyiXK8= +github.com/cosi-project/runtime v0.7.1 h1:cOF2/ljLa0NPQV6/S1RZHcSUXM0UyOlD5F3fwwYSQEg= +github.com/cosi-project/runtime v0.7.1/go.mod h1:EMLs8a55tJ6zA4UyDbRsTvXBd6UIlNwZfCVGvCyiXK8= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc= github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= diff --git a/client/pkg/client/omni/omni.go b/client/pkg/client/omni/omni.go index f7b880df3..5c4ac1df6 100644 --- a/client/pkg/client/omni/omni.go +++ b/client/pkg/client/omni/omni.go @@ -11,6 +11,7 @@ import ( "github.com/cosi-project/runtime/api/v1alpha1" "github.com/cosi-project/runtime/pkg/state" "github.com/cosi-project/runtime/pkg/state/protobuf/client" + "go.uber.org/zap" "google.golang.org/grpc" "google.golang.org/grpc/metadata" @@ -27,6 +28,7 @@ import ( // Options defines additional Omni client options. type Options struct { + retryLogger *zap.Logger infraProviderID string } @@ -40,6 +42,13 @@ func WithProviderID(id string) Option { } } +// WithRetryLogger sets logger for retry operations. +func WithRetryLogger(lg *zap.Logger) Option { + return func(o *Options) { + o.retryLogger = lg + } +} + // Client for Omni resource API (COSI). type Client struct { conn *grpc.ClientConn @@ -51,13 +60,16 @@ type Client struct { func NewClient(conn *grpc.ClientConn, options ...Option) *Client { c := &Client{ conn: conn, + options: Options{ + retryLogger: zap.NewNop(), + }, } for _, o := range options { o(&c.options) } - c.state = state.WrapCore(client.NewAdapter(v1alpha1.NewStateClient(c))) + c.state = state.WrapCore(client.NewAdapter(v1alpha1.NewStateClient(c), client.WithRetryLogger(c.options.retryLogger))) return c } diff --git a/client/pkg/omnictl/internal/access/client.go b/client/pkg/omnictl/internal/access/client.go index 6947cfd13..9564d601e 100644 --- a/client/pkg/omnictl/internal/access/client.go +++ b/client/pkg/omnictl/internal/access/client.go @@ -14,8 +14,10 @@ import ( "github.com/cosi-project/runtime/pkg/safe" "github.com/cosi-project/runtime/pkg/state" "github.com/siderolabs/go-api-signature/pkg/serviceaccount" + "go.uber.org/zap" "github.com/siderolabs/omni/client/pkg/client" + "github.com/siderolabs/omni/client/pkg/client/omni" "github.com/siderolabs/omni/client/pkg/omni/resources" "github.com/siderolabs/omni/client/pkg/omni/resources/system" "github.com/siderolabs/omni/client/pkg/omnictl/config" @@ -112,6 +114,16 @@ func WithClient(f func(ctx context.Context, client *client.Client) error, client url = endpointEnv } + loggerCfg := zap.NewDevelopmentConfig() + loggerCfg.Development = false + + logger, err := loggerCfg.Build() + if err != nil { + return err + } + + opts = append(opts, client.WithOmniClientOptions(omni.WithRetryLogger(logger))) + client, err := client.New(url, opts...) if err != nil { return err diff --git a/frontend/bun.lockb b/frontend/bun.lockb deleted file mode 100755 index 0de2deca7..000000000 Binary files a/frontend/bun.lockb and /dev/null differ diff --git a/go.mod b/go.mod index 81356093c..a5cab1110 100644 --- a/go.mod +++ b/go.mod @@ -26,8 +26,8 @@ require ( github.com/blang/semver v3.5.1+incompatible github.com/blang/semver/v4 v4.0.0 github.com/containers/image/v5 v5.32.2 - github.com/cosi-project/runtime v0.6.4 - github.com/cosi-project/state-etcd v0.3.2 + github.com/cosi-project/runtime v0.7.1 + github.com/cosi-project/state-etcd v0.4.0 github.com/crewjam/saml v0.4.14 github.com/dustin/go-humanize v1.0.1 github.com/emicklei/dot v1.6.2 diff --git a/go.sum b/go.sum index 694210610..5ccd25486 100644 --- a/go.sum +++ b/go.sum @@ -109,10 +109,10 @@ github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec= github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs= github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= -github.com/cosi-project/runtime v0.6.4 h1:roifc5e+Q1+72EI36BYSRT9aXyskU+coiKHeoBBWkMg= -github.com/cosi-project/runtime v0.6.4/go.mod h1:EMLs8a55tJ6zA4UyDbRsTvXBd6UIlNwZfCVGvCyiXK8= -github.com/cosi-project/state-etcd v0.3.2 h1:8Lnj5dPIUzkv5DYFpKvkP+vX5O9M9sWthXQfoKJrF78= -github.com/cosi-project/state-etcd v0.3.2/go.mod h1:wHp8V3OvGRILYvbJEmhMt0AFuByaGNkxXLDc61/+yFM= +github.com/cosi-project/runtime v0.7.1 h1:cOF2/ljLa0NPQV6/S1RZHcSUXM0UyOlD5F3fwwYSQEg= +github.com/cosi-project/runtime v0.7.1/go.mod h1:EMLs8a55tJ6zA4UyDbRsTvXBd6UIlNwZfCVGvCyiXK8= +github.com/cosi-project/state-etcd v0.4.0 h1:/zf2mbqVHnp32wWDBaFGa5U1+ZwyenBzeZOgrxmNzhY= +github.com/cosi-project/state-etcd v0.4.0/go.mod h1:V3UiPxXs2Nl3kls8TSnk7ABKx68fCjNZDTu2Ux9CGK8= github.com/cpuguy83/go-md2man/v2 v2.0.4/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= github.com/cpuguy83/go-md2man/v2 v2.0.5 h1:ZtcqGrnekaHpVLArFSe4HK5DoKx1T0rq2DwVB0alcyc= github.com/cpuguy83/go-md2man/v2 v2.0.5/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=