diff --git a/cmd/run.go b/cmd/run.go index bd5650c3..d09a7df7 100644 --- a/cmd/run.go +++ b/cmd/run.go @@ -13,7 +13,7 @@ import ( "github.com/metal-toolbox/flasher/internal/store" "github.com/metal-toolbox/flasher/internal/worker" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" "github.com/pkg/errors" "github.com/sirupsen/logrus" "github.com/spf13/cobra" diff --git a/go.mod b/go.mod index 87233ba4..676e238b 100644 --- a/go.mod +++ b/go.mod @@ -1,26 +1,26 @@ module github.com/metal-toolbox/flasher -go 1.22.0 +go 1.22.7 toolchain go1.23.1 require ( github.com/banzaicloud/logrus-runtime-formatter v0.0.0-20190729070250-5ae5475bae5e - github.com/bmc-toolbox/bmclib/v2 v2.3.4 - github.com/bmc-toolbox/common v0.0.0-20241031162543-6b96e5981a0d github.com/bombsimon/logrusr/v2 v2.0.1 github.com/coreos/go-oidc/v3 v3.11.0 - github.com/emicklei/dot v1.6.2 + github.com/emicklei/dot v1.6.3 github.com/equinix-labs/otel-init-go v0.0.9 github.com/google/uuid v1.6.0 github.com/hashicorp/go-multierror v1.1.1 github.com/hashicorp/go-retryablehttp v0.7.7 github.com/jeremywohl/flatten v1.0.1 github.com/jpillora/backoff v1.0.0 - github.com/metal-toolbox/ctrl v0.3.0 - github.com/metal-toolbox/fleetdb v1.19.8 - github.com/metal-toolbox/ironlib v0.5.0 - github.com/metal-toolbox/rivets v1.3.10 + github.com/metal-toolbox/bmc-common v1.0.2 + github.com/metal-toolbox/bmclib v1.0.2 + github.com/metal-toolbox/ctrl v1.1.0 + github.com/metal-toolbox/fleetdb v1.20.0 + github.com/metal-toolbox/ironlib v1.0.0 + github.com/metal-toolbox/rivets/v2 v2.0.0 github.com/mitchellh/copystructure v1.2.0 github.com/mitchellh/mapstructure v1.5.0 github.com/pkg/errors v0.9.1 @@ -29,12 +29,12 @@ require ( github.com/spf13/cobra v1.8.1 github.com/spf13/viper v1.19.0 github.com/stretchr/testify v1.9.0 - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 - go.opentelemetry.io/otel v1.31.0 - go.opentelemetry.io/otel/trace v1.31.0 - golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c - golang.org/x/net v0.30.0 - golang.org/x/oauth2 v0.23.0 + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0 + go.opentelemetry.io/otel v1.32.0 + go.opentelemetry.io/otel/trace v1.32.0 + golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f + golang.org/x/net v0.31.0 + golang.org/x/oauth2 v0.24.0 ) require ( @@ -44,7 +44,7 @@ require ( github.com/VictorLowther/soap v0.0.0-20150314151524-8e36fca84b22 // indirect github.com/beevik/etree v1.4.1 // indirect github.com/beorn7/perks v1.0.1 // indirect - github.com/bytedance/sonic v1.12.3 // indirect + github.com/bytedance/sonic v1.12.4 // indirect github.com/bytedance/sonic/loader v0.2.1 // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect @@ -71,7 +71,7 @@ require ( github.com/goccy/go-json v0.10.3 // indirect github.com/gofrs/uuid v4.4.0+incompatible // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/googleapis/gax-go/v2 v2.13.0 // indirect + github.com/googleapis/gax-go/v2 v2.14.0 // indirect github.com/gorilla/websocket v1.5.3 // indirect github.com/gosimple/slug v1.14.0 // indirect github.com/gosimple/unidecode v1.0.1 // indirect @@ -94,13 +94,13 @@ require ( github.com/jmoiron/sqlx v1.4.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/klauspost/compress v1.17.11 // indirect - github.com/klauspost/cpuid/v2 v2.2.8 // indirect + github.com/klauspost/cpuid/v2 v2.2.9 // indirect github.com/leodido/go-urn v1.4.0 // indirect github.com/lib/pq v1.10.9 // indirect github.com/magiconair/properties v1.8.7 // indirect github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-sqlite3 v2.0.1+incompatible // indirect - github.com/metal-toolbox/conditionorc v1.11.2 // indirect + github.com/metal-toolbox/conditionorc v1.12.0 // indirect github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect @@ -138,27 +138,27 @@ require ( github.com/volatiletech/null/v8 v8.1.2 // indirect github.com/volatiletech/randomize v0.0.1 // indirect github.com/volatiletech/sqlboiler v3.7.1+incompatible // indirect - github.com/volatiletech/sqlboiler/v4 v4.16.2 // indirect + github.com/volatiletech/sqlboiler/v4 v4.17.1 // indirect github.com/volatiletech/strmangle v0.0.8 // indirect go.opencensus.io v0.24.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.31.0 // indirect - go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.31.0 // indirect - go.opentelemetry.io/otel/metric v1.31.0 // indirect - go.opentelemetry.io/otel/sdk v1.31.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 // indirect + go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 // indirect + go.opentelemetry.io/otel/metric v1.32.0 // indirect + go.opentelemetry.io/otel/sdk v1.32.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/zap v1.27.0 // indirect gocloud.dev v0.40.0 // indirect - golang.org/x/arch v0.11.0 // indirect - golang.org/x/crypto v0.28.0 // indirect - golang.org/x/sys v0.26.0 // indirect - golang.org/x/text v0.19.0 // indirect + golang.org/x/arch v0.12.0 // indirect + golang.org/x/crypto v0.29.0 // indirect + golang.org/x/sys v0.27.0 // indirect + golang.org/x/text v0.20.0 // indirect golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect - google.golang.org/api v0.204.0 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20241021214115-324edc3d5d38 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 // indirect - google.golang.org/grpc v1.67.1 // indirect - google.golang.org/protobuf v1.35.1 // indirect + google.golang.org/api v0.205.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20241113202542-65e8d215514f // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f // indirect + google.golang.org/grpc v1.68.0 // indirect + google.golang.org/protobuf v1.35.2 // indirect gopkg.in/go-jose/go-jose.v2 v2.6.3 // indirect gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/square/go-jose.v2 v2.6.0 // indirect diff --git a/go.sum b/go.sum index 0cd10664..8bbf0379 100644 --- a/go.sum +++ b/go.sum @@ -31,8 +31,8 @@ cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2Z cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w99A= cloud.google.com/go v0.116.0 h1:B3fRrSDkLRt5qSHWe40ERJvhvnQwdZiHu0bJOpldweE= cloud.google.com/go v0.116.0/go.mod h1:cEPSRWPzZEswwdr9BxE6ChEn01dWlTaF05LiC2Xs70U= -cloud.google.com/go/auth v0.10.0 h1:tWlkvFAh+wwTOzXIjrwM64karR1iTBZ/GRr0S/DULYo= -cloud.google.com/go/auth v0.10.0/go.mod h1:xxA5AqpDrvS+Gkmo9RqrGGRh6WSNKKOXhY3zNOr38tI= +cloud.google.com/go/auth v0.10.1 h1:TnK46qldSfHWt2a0b/hciaiVJsmDXWy9FqyUan0uYiI= +cloud.google.com/go/auth v0.10.1/go.mod h1:xxA5AqpDrvS+Gkmo9RqrGGRh6WSNKKOXhY3zNOr38tI= cloud.google.com/go/auth/oauth2adapt v0.2.5 h1:2p29+dePqsCHPP1bqDJcKj4qxRyYCcbzKpFyKGt3MTk= cloud.google.com/go/auth/oauth2adapt v0.2.5/go.mod h1:AlmsELtlEBnaNTL7jCj8VQFLy6mbZv0s4Q7NGBeQ5E8= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= @@ -113,14 +113,10 @@ github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+Ce github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= -github.com/bmc-toolbox/bmclib/v2 v2.3.4 h1:ihCC9jH8g5Racg4zy+lWpjt7vRt2aWzit3LEL1DiS7k= -github.com/bmc-toolbox/bmclib/v2 v2.3.4/go.mod h1:t8If/0fHQTRIK/yKDk2H3SgthDNNj+7z2aeftDFRFrU= -github.com/bmc-toolbox/common v0.0.0-20241031162543-6b96e5981a0d h1:dMmFDAAEpXizInaNwPSa5LM6tX/xDIPKjL6v9jYfMxo= -github.com/bmc-toolbox/common v0.0.0-20241031162543-6b96e5981a0d/go.mod h1:Cdnkm+edb6C0pVkyCrwh3JTXAe0iUF9diDG/DztPI9I= github.com/bombsimon/logrusr/v2 v2.0.1 h1:1VgxVNQMCvjirZIYaT9JYn6sAVGVEcNtRE0y4mvaOAM= github.com/bombsimon/logrusr/v2 v2.0.1/go.mod h1:ByVAX+vHdLGAfdroiMg6q0zgq2FODY2lc5YJvzmOJio= -github.com/bytedance/sonic v1.12.3 h1:W2MGa7RCU1QTeYRTPE3+88mVC0yXmsRQRChiyVocVjU= -github.com/bytedance/sonic v1.12.3/go.mod h1:B8Gt/XvtZ3Fqj+iSKMypzymZxw/FVwgIGKzMzT9r/rk= +github.com/bytedance/sonic v1.12.4 h1:9Csb3c9ZJhfUWeMtpCDCq6BUoH5ogfDFLUgQ/jG+R0k= +github.com/bytedance/sonic v1.12.4/go.mod h1:B8Gt/XvtZ3Fqj+iSKMypzymZxw/FVwgIGKzMzT9r/rk= github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= github.com/bytedance/sonic/loader v0.2.1 h1:1GgorWTqf12TA8mma4DDSbaQigE2wOgQo7iCjjJv3+E= github.com/bytedance/sonic/loader v0.2.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU= @@ -175,8 +171,8 @@ github.com/dnaeon/go-vcr v1.2.0/go.mod h1:R4UdLID7HZT3taECzJs4YgbbH6PIGXB6W/sc5O github.com/dselans/dmidecode v0.0.0-20180814053009-65c3f9d81910 h1:w9T/rS5VP0SPXqYr7BpUeqf6ukp/GEWm6nXhziWzBY4= github.com/dselans/dmidecode v0.0.0-20180814053009-65c3f9d81910/go.mod h1:yGxJ4za56u74+F00gmg9RJoyXLzvrOrIat4b/Dgw9Lo= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/emicklei/dot v1.6.2 h1:08GN+DD79cy/tzN6uLCT84+2Wk9u+wvqP+Hkx/dIR8A= -github.com/emicklei/dot v1.6.2/go.mod h1:DeV7GvQtIw4h2u73RKBkkFdvVAz0D9fzeJrgPW6gy/s= +github.com/emicklei/dot v1.6.3 h1:MW9eLeJWaN+QZVSPlrargGd/l92IA6d4fmo39/YD2cQ= +github.com/emicklei/dot v1.6.3/go.mod h1:DeV7GvQtIw4h2u73RKBkkFdvVAz0D9fzeJrgPW6gy/s= github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= @@ -362,8 +358,8 @@ github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0 github.com/googleapis/gax-go/v2 v2.2.0/go.mod h1:as02EH8zWkzwUoLbBaFeQ+arQaj/OthfcblKl4IGNaM= github.com/googleapis/gax-go/v2 v2.3.0/go.mod h1:b8LNqSzNabLiUpXKkY7HAR5jr6bIT99EXz9pXxye9YM= github.com/googleapis/gax-go/v2 v2.4.0/go.mod h1:XOTVJ59hdnfJLIP/dh8n5CGryZR2LxK9wbMD5+iXC6c= -github.com/googleapis/gax-go/v2 v2.13.0 h1:yitjD5f7jQHhyDsnhKEBU52NdvvdSeGzlAnDPT0hH1s= -github.com/googleapis/gax-go/v2 v2.13.0/go.mod h1:Z/fvTZXF8/uw7Xu5GuslPw+bplx6SS338j1Is2S+B7A= +github.com/googleapis/gax-go/v2 v2.14.0 h1:f+jMrjBPl+DL9nI4IQzLUxMq7XrAqFYB7hBPqMNIe8o= +github.com/googleapis/gax-go/v2 v2.14.0/go.mod h1:lhBCnjdLrWRaPvLWhmc8IS24m9mr07qSYnHncrgo+zk= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.5.3 h1:saDtZ6Pbx/0u+bgYQ3q96pZgCzfhKXGPqt7kZ72aNNg= @@ -498,15 +494,14 @@ github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1 github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= -github.com/kat-co/vala v0.0.0-20170210184112-42e1d8b61f12/go.mod h1:u9MdXq/QageOOSGp7qG4XAQsYUMP+V5zEel/Vrl6OOc= github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51/go.mod h1:CzGEWj7cYgsdH8dAjBGEr58BoE7ScuLd+fwFZ44+/x8= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= -github.com/klauspost/cpuid/v2 v2.2.8 h1:+StwCXwm9PdpiEkPyzBXIy+M9KUb4ODm0Zarf1kS5BM= -github.com/klauspost/cpuid/v2 v2.2.8/go.mod h1:Lcz8mBdAVJIBVzewtcLocK12l3Y+JytZYpaMropDUws= +github.com/klauspost/cpuid/v2 v2.2.9 h1:66ze0taIn2H33fBvCkXuv9BmCwDfafmiIVpKV9kKGuY= +github.com/klauspost/cpuid/v2 v2.2.9/go.mod h1:rqkxqrZ1EhYM9G+hXH7YdowN5R5RGN6NK4QwQ3WMXF8= github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= @@ -562,16 +557,20 @@ github.com/mattn/go-sqlite3 v1.14.22/go.mod h1:Uh1q+B4BYcTPb+yiD3kU8Ct7aC0hY9fxU github.com/mattn/go-sqlite3 v2.0.1+incompatible h1:xQ15muvnzGBHpIpdrNi1DA5x0+TcBZzsIDwmw9uTHzw= github.com/mattn/go-sqlite3 v2.0.1+incompatible/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= -github.com/metal-toolbox/conditionorc v1.11.2 h1:92KeJ2oALrpL3T/6GeqW1CiBTh7BsgJxtJETDLHCJOc= -github.com/metal-toolbox/conditionorc v1.11.2/go.mod h1:COiaJSl8GOoIfpaSscTfCzAKjp2VDjCUjm5iw9KEm/E= -github.com/metal-toolbox/ctrl v0.3.0 h1:h/d0LQN4o/4GO567Vx9i9q+VM+yT74ejjXm8DoeLvTY= -github.com/metal-toolbox/ctrl v0.3.0/go.mod h1:J0PoZJ5B231+f3Ys4C23w5A1NBISB4y6e+45UiS7fLY= -github.com/metal-toolbox/fleetdb v1.19.8 h1:zQzfgFWuc7lFqSJYvqbfVX4DShgFFFohWql80rFFYtI= -github.com/metal-toolbox/fleetdb v1.19.8/go.mod h1:IMbJwyC9DnznuPNjAaP54Y6uWuWu9cPXGH+yoe7jwGA= -github.com/metal-toolbox/ironlib v0.5.0 h1:UBUmQhMwTu3nb/T45n6O5EfcWKM5SuEhNCfyuIp7lU0= -github.com/metal-toolbox/ironlib v0.5.0/go.mod h1:WQZ8tZ8+bCts6mgBhN9M2r6Mer0aS8M0JNcaZm1dIS4= -github.com/metal-toolbox/rivets v1.3.10 h1:UgYQSx/QJF6Yuzf+YSRF/t9soL6QjMY8sLugf/aMmII= -github.com/metal-toolbox/rivets v1.3.10/go.mod h1:HkF9k8yw3MZqrIkxsi7w7EkTP3h2/t08WBpm+WK/Dsk= +github.com/metal-toolbox/bmc-common v1.0.2 h1:AbUhx4tJzz2dYxKaXu8ENSR8+bCupbqwLvYouzpEc5U= +github.com/metal-toolbox/bmc-common v1.0.2/go.mod h1:WxMpaNb7/yTSEW0fMDOWUrhs/CPAzuCSx0p3uv3vRVA= +github.com/metal-toolbox/bmclib v1.0.2 h1:kABL32Pe80tLOLnU5hc/OrjfpHx577B4IoRTJIteC6I= +github.com/metal-toolbox/bmclib v1.0.2/go.mod h1:VsmTMv9jfMM73Xs1bG5D2Ju/0RQ/3MTWd2XScDtKuR4= +github.com/metal-toolbox/conditionorc v1.12.0 h1:goFuCimYEXFoOo6Mbbsai4+STYDn7K/YswvLriYbnlo= +github.com/metal-toolbox/conditionorc v1.12.0/go.mod h1:5beI/zQYJIZbB77871Fef+jR1It2W4vDIZaIXb7uW/g= +github.com/metal-toolbox/ctrl v1.1.0 h1:q9pv9G2egtpU9qmOs5WfQ5ZWzOAMIQIsVQpRyVn1hD4= +github.com/metal-toolbox/ctrl v1.1.0/go.mod h1:CUGY/jPGUEO4rKwPfEbFHZ2oZ0Yy5jsytkUyrWfJGpU= +github.com/metal-toolbox/fleetdb v1.20.0 h1:ngfiWRZ61+rbYyA00/crzQTENIUbZxeo7au24P5KgKg= +github.com/metal-toolbox/fleetdb v1.20.0/go.mod h1:8yVOYkEbxNRAvHx02g7bP6oBDiWBvhQ9HY95zI9ZtTU= +github.com/metal-toolbox/ironlib v1.0.0 h1:KXTEcpOKw2KrDcf2OVGkCYZiDfP1+hKladmzhLWYFMQ= +github.com/metal-toolbox/ironlib v1.0.0/go.mod h1:4gNs+2vVr99BtshRKGG/RgFUG1qtPHmn9bVmZSRG6ak= +github.com/metal-toolbox/rivets/v2 v2.0.0 h1:whXM3WLGpz1veXboXE3U/ZwwqN1mNsZ0/ElVYLoXAro= +github.com/metal-toolbox/rivets/v2 v2.0.0/go.mod h1:MzV7K//lajUWvJ0KUoGi9ctpkJ16sQOBEC6apohJd58= github.com/microsoft/go-mssqldb v0.17.0/go.mod h1:OkoNGhGEs8EZqchVTtochlXruEhEOaO4S0d2sB5aeGQ= github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= github.com/miekg/dns v1.1.41/go.mod h1:p6aan82bvRIyn+zDIv9xYNUpwa73JcSh9BKwknJysuI= @@ -604,10 +603,10 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/nats-io/jwt/v2 v2.5.8 h1:uvdSzwWiEGWGXf+0Q+70qv6AQdvcvxrv9hPM0RiPamE= -github.com/nats-io/jwt/v2 v2.5.8/go.mod h1:ZdWS1nZa6WMZfFwwgpEaqBV8EPGVgOTDHN/wTbz0Y5A= -github.com/nats-io/nats-server/v2 v2.10.20 h1:CXDTYNHeBiAKBTAIP2gjpgbWap2GhATnTLgP8etyvEI= -github.com/nats-io/nats-server/v2 v2.10.20/go.mod h1:hgcPnoUtMfxz1qVOvLZGurVypQ+Cg6GXVXjG53iHk+M= +github.com/nats-io/jwt/v2 v2.7.2 h1:SCRjfDLJ2q8naXp8YlGJJS5/yj3wGSODFYVi4nnwVMw= +github.com/nats-io/jwt/v2 v2.7.2/go.mod h1:kB6QUmqHG6Wdrzj0KP2L+OX4xiTPBeV+NHVstFaATXU= +github.com/nats-io/nats-server/v2 v2.10.22 h1:Yt63BGu2c3DdMoBZNcR6pjGQwk/asrKU7VX846ibxDA= +github.com/nats-io/nats-server/v2 v2.10.22/go.mod h1:X/m1ye9NYansUXYFrbcDwUi/blHkrgHh2rgCJaakonk= github.com/nats-io/nats.go v1.37.0 h1:07rauXbVnnJvv1gfIyghFEo6lUcYRY0WXc3x7x0vUxE= github.com/nats-io/nats.go v1.37.0/go.mod h1:Ubdu4Nh9exXdSz0RVWRFBbRfrbSxOYd26oF0wkWclB8= github.com/nats-io/nkeys v0.4.7 h1:RwNJbbIdYCoClSDNY7QVKZlyb/wfT6ugvFCiKy6vDvI= @@ -686,8 +685,9 @@ github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdh github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= github.com/shopspring/decimal v1.2.0/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= -github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8= github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFRcu2hWCYk4o= +github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= +github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= @@ -769,10 +769,10 @@ github.com/volatiletech/randomize v0.0.1 h1:eE5yajattWqTB2/eN8df4dw+8jwAzBtbdo5s github.com/volatiletech/randomize v0.0.1/go.mod h1:GN3U0QYqfZ9FOJ67bzax1cqZ5q2xuj2mXrXBjWaRTlY= github.com/volatiletech/sqlboiler v3.7.1+incompatible h1:dm9/NjDskQVwAarmpeZ2UqLn1NKE8M3WHSHBS4jw2x8= github.com/volatiletech/sqlboiler v3.7.1+incompatible/go.mod h1:jLfDkkHWPbS2cWRLkyC20vQWaIQsASEY7gM7zSo11Yw= -github.com/volatiletech/sqlboiler/v4 v4.16.2 h1:PcV2bxjE+S+GwPKCyX7/AjlY3aiTKsOEjciLhpWQImc= -github.com/volatiletech/sqlboiler/v4 v4.16.2/go.mod h1:B14BPBGTrJ2X6l7lwnvV/iXgYR48+ozGSlzHI3frl6U= +github.com/volatiletech/sqlboiler/v4 v4.17.1 h1:3AggaTfY9SLBp7m3H0X2qMXN4OZzGGtCm20BfQ7O88g= +github.com/volatiletech/sqlboiler/v4 v4.17.1/go.mod h1:XgPlHwMabot/eOqvsRnzc4Bw84BJNzizr+ac+T9LTic= github.com/volatiletech/strmangle v0.0.1/go.mod h1:F6RA6IkB5vq0yTG4GQ0UsbbRcl3ni9P76i+JrTBKFFg= -github.com/volatiletech/strmangle v0.0.6/go.mod h1:ycDvbDkjDvhC0NUU8w3fWwl5JEMTV56vTKXzR3GeR+0= +github.com/volatiletech/strmangle v0.0.7-0.20240503230658-86517898275a/go.mod h1:ycDvbDkjDvhC0NUU8w3fWwl5JEMTV56vTKXzR3GeR+0= github.com/volatiletech/strmangle v0.0.8 h1:UZkTDFIjZcL1Lk4BXhGsxcyXxNcWuM5ZwdzZc0sJcWg= github.com/volatiletech/strmangle v0.0.8/go.mod h1:ycDvbDkjDvhC0NUU8w3fWwl5JEMTV56vTKXzR3GeR+0= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= @@ -786,8 +786,8 @@ go.etcd.io/etcd/api/v3 v3.5.4/go.mod h1:5GB2vv4A4AOn3yk7MftYGHkUfGtDHnEraIjym4dY go.etcd.io/etcd/client/pkg/v3 v3.5.4/go.mod h1:IJHfcCEKxYu1Os13ZdwCwIUTUVGYTSAM3YSwc9/Ac1g= go.etcd.io/etcd/client/v2 v2.305.4/go.mod h1:Ud+VUwIi9/uQHOMA+4ekToJ12lTxlv0zB/+DHwTGEbU= go.etcd.io/etcd/client/v3 v3.5.4/go.mod h1:ZaRkVgBZC+L+dLCjTcF1hRXpgZXQPOvnA/Ak/gq3kiY= -go.infratographer.com/x v0.5.3 h1:Ul50kwszNWPSf9Tds7RKmSQx+QHZbE8Jy9J38cEztP8= -go.infratographer.com/x v0.5.3/go.mod h1:IyZALpwaaviUIN8bGp9cU0hnn1mn0A/6zi70XES4+iE= +go.infratographer.com/x v0.5.4 h1:p+cedURK1YOr/OTdupcn4nxOdCEDgFRz2Y0stkQoVrY= +go.infratographer.com/x v0.5.4/go.mod h1:ZDZJwOptugYHpcOe/bKVesYigRbGsxkJI8xgvYMGLnQ= go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= @@ -797,24 +797,24 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= -go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.53.0 h1:ktt8061VV/UU5pdPF6AcEFyuPxMizf/vU6eD1l+13LI= -go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.53.0/go.mod h1:JSRiHPV7E3dbOAP0N6SRPg2nC/cugJnVXRqP018ejtY= +go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.57.0 h1:1wEousrQOXTAhk16quIMIo1gSaUp1J3PEVlsiEAtmeU= +go.opentelemetry.io/contrib/instrumentation/github.com/gin-gonic/gin/otelgin v0.57.0/go.mod h1:rUWyQu4HfRAG0jkr1TixDHP9IERQ/iEq/YwFoU73ddo= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0 h1:r6I7RJCN86bpD/FQwedZ0vSixDpwuWREjW9oRMsmqDc= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.54.0/go.mod h1:B9yO6b04uB80CzjedvewuqDhxJxi11s7/GtiGa8bAjI= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0 h1:UP6IpuHFkUgOQL9FFQFrZ+5LiwhhYRbi7VZSIx6Nj5s= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.56.0/go.mod h1:qxuZLtbq5QDtdeSHsS7bcf6EH6uO6jUAgk764zd3rhM= -go.opentelemetry.io/otel v1.31.0 h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY= -go.opentelemetry.io/otel v1.31.0/go.mod h1:O0C14Yl9FgkjqcCZAsE053C13OaddMYr/hz6clDkEJE= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.31.0 h1:K0XaT3DwHAcV4nKLzcQvwAgSyisUghWoY20I7huthMk= -go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.31.0/go.mod h1:B5Ki776z/MBnVha1Nzwp5arlzBbE3+1jk+pGmaP5HME= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.31.0 h1:FFeLy03iVTXP6ffeN2iXrxfGsZGCjVx0/4KlizjyBwU= -go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.31.0/go.mod h1:TMu73/k1CP8nBUpDLc71Wj/Kf7ZS9FK5b53VapRsP9o= -go.opentelemetry.io/otel/metric v1.31.0 h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE= -go.opentelemetry.io/otel/metric v1.31.0/go.mod h1:C3dEloVbLuYoX41KpmAhOqNriGbA+qqH6PQ5E5mUfnY= -go.opentelemetry.io/otel/sdk v1.31.0 h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk= -go.opentelemetry.io/otel/sdk v1.31.0/go.mod h1:TfRbMdhvxIIr/B2N2LQW2S5v9m3gOQ/08KsbbO5BPT0= -go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys= -go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0 h1:DheMAlT6POBP+gh8RUH19EOTnQIor5QE0uSRPtzCpSw= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.57.0/go.mod h1:wZcGmeVO9nzP67aYSLDqXNWK87EZWhi7JWj1v7ZXf94= +go.opentelemetry.io/otel v1.32.0 h1:WnBN+Xjcteh0zdk01SVqV55d/m62NJLJdIyb4y/WO5U= +go.opentelemetry.io/otel v1.32.0/go.mod h1:00DCVSB0RQcnzlwyTfqtxSm+DRr9hpYrHjNGiBHVQIg= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0 h1:IJFEoHiytixx8cMiVAO+GmHR6Frwu+u5Ur8njpFO6Ac= +go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.32.0/go.mod h1:3rHrKNtLIoS0oZwkY2vxi+oJcwFRWdtUyRII+so45p8= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0 h1:9kV11HXBHZAvuPUZxmMWrH8hZn/6UnHX4K0mu36vNsU= +go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.32.0/go.mod h1:JyA0FHXe22E1NeNiHmVp7kFHglnexDQ7uRWDiiJ1hKQ= +go.opentelemetry.io/otel/metric v1.32.0 h1:xV2umtmNcThh2/a/aCP+h64Xx5wsj8qqnkYZktzNa0M= +go.opentelemetry.io/otel/metric v1.32.0/go.mod h1:jH7CIbbK6SH2V2wE16W05BHCtIDzauciCRLoc/SyMv8= +go.opentelemetry.io/otel/sdk v1.32.0 h1:RNxepc9vK59A8XsgZQouW8ue8Gkb4jpWtJm9ge5lEG4= +go.opentelemetry.io/otel/sdk v1.32.0/go.mod h1:LqgegDBjKMmb2GC6/PrTnteJG39I8/vJCAP9LlJXEjU= +go.opentelemetry.io/otel/trace v1.32.0 h1:WIC9mYrXf8TmY/EXuULKc8hR17vE+Hjv2cssQDe03fM= +go.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L+V8e9a7YvhT8= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= @@ -840,8 +840,8 @@ go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= gocloud.dev v0.40.0 h1:f8LgP+4WDqOG/RXoUcyLpeIAGOcAbZrZbDQCUee10ng= gocloud.dev v0.40.0/go.mod h1:drz+VyYNBvrMTW0KZiBAYEdl8lbNZx+OQ7oQvdrFmSQ= -golang.org/x/arch v0.11.0 h1:KXV8WWKCXm6tRpLirl2szsO5j/oOODwZf4hATmGVNs4= -golang.org/x/arch v0.11.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= +golang.org/x/arch v0.12.0 h1:UsYJhbzPYGsT0HbEdmYcqtCv8UNGvnaL561NnIUvaKg= +golang.org/x/arch v0.12.0/go.mod h1:FEVrYAQjsQXMVJ1nsMoVVXPZg6p2JE2mx8psSWTDQys= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190411191339-88737f569e3a/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= @@ -863,8 +863,8 @@ golang.org/x/crypto v0.0.0-20220511200225-c6db032c6c88/go.mod h1:IxCIyHEi3zRg3s0 golang.org/x/crypto v0.0.0-20220826181053-bd7e27e6170d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= -golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw= -golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U= +golang.org/x/crypto v0.29.0 h1:L5SG1JTTXupVV3n6sUqMTeWbjAyfPwoda2DLX8J8FrQ= +golang.org/x/crypto v0.29.0/go.mod h1:+F4F4N5hv6v38hfeYwTdx20oUvLLc+QfrE9Ax9HtgRg= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -875,8 +875,8 @@ golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u0 golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= -golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c h1:7dEasQXItcW1xKJ2+gg5VOiBnqWrJc+rq0DPKyvvdbY= -golang.org/x/exp v0.0.0-20241009180824-f66d83c29e7c/go.mod h1:NQtJDoLvd6faHhE7m4T/1IY708gDefGGjR/iUW8yQQ8= +golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f h1:XdNn9LlyWAhLVp6P/i8QYBW+hlyhrhei9uErw2B5GJo= +golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f/go.mod h1:D5SMRVC3C2/4+F/DB1wZsLRnSNimn2Sp/NPsCrsv8ak= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -957,8 +957,8 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= -golang.org/x/net v0.30.0 h1:AcW1SDZMkb8IpzCdQUaIq2sP4sZ4zw+55h6ynffypl4= -golang.org/x/net v0.30.0/go.mod h1:2wGyMJ5iFasEhkwi13ChkO/t1ECNC4X4eBKkVFyYFlU= +golang.org/x/net v0.31.0 h1:68CPQngjLL0r2AlUKiSxtQFKvzRVbnzLwMUn5SzcLHo= +golang.org/x/net v0.31.0/go.mod h1:P4fl1q7dY2hnZFxEk4pPSkDHF+QqjitcnDjUQyMM+pM= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -979,8 +979,8 @@ golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.0.0-20220309155454-6242fa91716a/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc= -golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs= -golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= +golang.org/x/oauth2 v0.24.0 h1:KTBBxWqUa0ykRPLtV69rRto9TLXcqYkeswu48x/gvNE= +golang.org/x/oauth2 v0.24.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -995,8 +995,8 @@ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20220513210516-0976fa681c29/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= -golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.9.0 h1:fEo0HyrW1GIgZdpbhCRO0PkJajUS5H9IFUztCgEo2jQ= +golang.org/x/sync v0.9.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20180823144017-11551d06cbcc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1088,8 +1088,8 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo= -golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.27.0 h1:wBqf8DvsY9Y/2P8gAfPDEYNuS30J4lPHJxXSb/nJZ+s= +golang.org/x/sys v0.27.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= @@ -1108,13 +1108,13 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM= -golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= +golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug= +golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4= golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= -golang.org/x/time v0.7.0 h1:ntUhktv3OPE6TgYxXWv9vKvUSJyIFJlyohwbkEwPrKQ= -golang.org/x/time v0.7.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/time v0.8.0 h1:9i3RxcPv3PZnitoVGMPDKZSq1xW1gK1Xy3ArNOGZfEg= +golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= @@ -1228,8 +1228,8 @@ google.golang.org/api v0.74.0/go.mod h1:ZpfMZOVRMywNyvJFeqL9HRWBgAuRfSjJFpe9QtRR google.golang.org/api v0.75.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= google.golang.org/api v0.78.0/go.mod h1:1Sg78yoMLOhlQTeF+ARBoytAcH1NNyyl390YMy6rKmw= google.golang.org/api v0.81.0/go.mod h1:FA6Mb/bZxj706H2j+j2d6mHEEaHBmbbWnkfvmorOCko= -google.golang.org/api v0.204.0 h1:3PjmQQEDkR/ENVZZwIYB4W/KzYtN8OrqnNcHWpeR8E4= -google.golang.org/api v0.204.0/go.mod h1:69y8QSoKIbL9F94bWgWAq6wGqGwyjBgi2y8rAK8zLag= +google.golang.org/api v0.205.0 h1:LFaxkAIpDb/GsrWV20dMMo5MR0h8UARTbn24LmD+0Pg= +google.golang.org/api v0.205.0/go.mod h1:NrK1EMqO8Xk6l6QwRAmrXXg2v6dzukhlOyvkYtnvUuc= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= @@ -1317,10 +1317,10 @@ google.golang.org/genproto v0.0.0-20220505152158-f39f71e6c8f3/go.mod h1:RAyBrSAP google.golang.org/genproto v0.0.0-20220519153652-3a47de7e79bd/go.mod h1:RAyBrSAP7Fh3Nc84ghnVLDPuV51xc9agzmm4Ph6i0Q4= google.golang.org/genproto v0.0.0-20241021214115-324edc3d5d38 h1:Q3nlH8iSQSRUwOskjbcSMcF2jiYMNiQYZ0c2KEJLKKU= google.golang.org/genproto v0.0.0-20241021214115-324edc3d5d38/go.mod h1:xBI+tzfqGGN2JBeSebfKXFSdBpWVQ7sLW40PTupVRm4= -google.golang.org/genproto/googleapis/api v0.0.0-20241021214115-324edc3d5d38 h1:2oV8dfuIkM1Ti7DwXc0BJfnwr9csz4TDXI9EmiI+Rbw= -google.golang.org/genproto/googleapis/api v0.0.0-20241021214115-324edc3d5d38/go.mod h1:vuAjtvlwkDKF6L1GQ0SokiRLCGFfeBUXWr/aFFkHACc= -google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38 h1:zciRKQ4kBpFgpfC5QQCVtnnNAcLIqweL7plyZRQHVpI= -google.golang.org/genproto/googleapis/rpc v0.0.0-20241021214115-324edc3d5d38/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= +google.golang.org/genproto/googleapis/api v0.0.0-20241113202542-65e8d215514f h1:M65LEviCfuZTfrfzwwEoxVtgvfkFkBUbFnRbxCXuXhU= +google.golang.org/genproto/googleapis/api v0.0.0-20241113202542-65e8d215514f/go.mod h1:Yo94eF2nj7igQt+TiJ49KxjIH8ndLYPZMIRSiRcEbg0= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f h1:C1QccEa9kUwvMgEUORqQD9S17QesQijxjZ84sO82mfo= +google.golang.org/genproto/googleapis/rpc v0.0.0-20241113202542-65e8d215514f/go.mod h1:GX3210XPVPUjJbTUbvwI8f2IpZDMZuPJWDzDuebbviI= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -1351,8 +1351,8 @@ google.golang.org/grpc v1.44.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ5 google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= google.golang.org/grpc v1.46.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= google.golang.org/grpc v1.46.2/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= -google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E= -google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA= +google.golang.org/grpc v1.68.0 h1:aHQeeJbo8zAkAa3pRzrVjZlbz6uSfeOXlJNQM0RAbz0= +google.golang.org/grpc v1.68.0/go.mod h1:fmSPC5AsjSBCK54MyHRx48kpOti1/jRfOlwEWywNjWA= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= @@ -1368,8 +1368,8 @@ google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp0 google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= -google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= +google.golang.org/protobuf v1.35.2 h1:8Ar7bF+apOIoThw1EdZl0p1oWvMqTHmpA2fRTyZO8io= +google.golang.org/protobuf v1.35.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/internal/device/interface.go b/internal/device/interface.go index f54f308a..c1042c7c 100644 --- a/internal/device/interface.go +++ b/internal/device/interface.go @@ -4,9 +4,8 @@ import ( "context" "os" - "github.com/bmc-toolbox/common" - - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" + common "github.com/metal-toolbox/bmc-common" + bconsts "github.com/metal-toolbox/bmclib/constants" ironlibm "github.com/metal-toolbox/ironlib/model" ) diff --git a/internal/device/mock_inbandQueryor.go b/internal/device/mock_inbandQueryor.go index 002e9d9c..59113579 100644 --- a/internal/device/mock_inbandQueryor.go +++ b/internal/device/mock_inbandQueryor.go @@ -5,7 +5,7 @@ package device import ( context "context" - common "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" mock "github.com/stretchr/testify/mock" diff --git a/internal/device/mock_outofbandQueryor.go b/internal/device/mock_outofbandQueryor.go index 00c1f713..e52e9c53 100644 --- a/internal/device/mock_outofbandQueryor.go +++ b/internal/device/mock_outofbandQueryor.go @@ -3,8 +3,8 @@ package device import ( - constants "github.com/bmc-toolbox/bmclib/v2/constants" - common "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" + constants "github.com/metal-toolbox/bmclib/constants" context "context" diff --git a/internal/inband/actions.go b/internal/inband/actions.go index 19c26dad..ca3ad667 100644 --- a/internal/inband/actions.go +++ b/internal/inband/actions.go @@ -8,8 +8,8 @@ import ( "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/model" "github.com/metal-toolbox/flasher/internal/runner" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" "github.com/pkg/errors" "github.com/sirupsen/logrus" diff --git a/internal/inband/server.go b/internal/inband/server.go index cb696eb2..30f26f70 100644 --- a/internal/inband/server.go +++ b/internal/inband/server.go @@ -3,7 +3,7 @@ package inband import ( "context" - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/ironlib" iactions "github.com/metal-toolbox/ironlib/actions" diff --git a/internal/install/install.go b/internal/install/install.go index a4ddd319..bf64526d 100644 --- a/internal/install/install.go +++ b/internal/install/install.go @@ -13,8 +13,8 @@ import ( "github.com/pkg/errors" "github.com/sirupsen/logrus" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) type Installer struct { diff --git a/internal/install/task_handler.go b/internal/install/task_handler.go index a1023b57..a0b7eb2c 100644 --- a/internal/install/task_handler.go +++ b/internal/install/task_handler.go @@ -3,7 +3,7 @@ package install import ( "context" - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/model" "github.com/metal-toolbox/flasher/internal/outofband" @@ -11,8 +11,8 @@ import ( "github.com/pkg/errors" "github.com/sirupsen/logrus" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) var ( diff --git a/internal/metrics/metrics.go b/internal/metrics/metrics.go index 8432fc78..6ad2f1c7 100644 --- a/internal/metrics/metrics.go +++ b/internal/metrics/metrics.go @@ -11,7 +11,7 @@ import ( "go.opentelemetry.io/otel/attribute" "go.opentelemetry.io/otel/trace" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" ) const ( diff --git a/internal/model/action.go b/internal/model/action.go index 276f27a3..18f86905 100644 --- a/internal/model/action.go +++ b/internal/model/action.go @@ -4,8 +4,8 @@ import ( "fmt" "strconv" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) const ( diff --git a/internal/model/component.go b/internal/model/component.go index 418ca4b9..e7f535a4 100644 --- a/internal/model/component.go +++ b/internal/model/component.go @@ -5,10 +5,10 @@ import ( "strconv" "strings" - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" "github.com/pkg/errors" - rtypes "github.com/metal-toolbox/rivets/types" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) // These components are in most cases are present in a single package and from one vendor in a server, diff --git a/internal/model/firmware.go b/internal/model/firmware.go index 8ada99fe..2288398c 100644 --- a/internal/model/firmware.go +++ b/internal/model/firmware.go @@ -3,7 +3,7 @@ package model import ( "strings" - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" ) var ( diff --git a/internal/model/step.go b/internal/model/step.go index a91399c1..419e54b6 100644 --- a/internal/model/step.go +++ b/internal/model/step.go @@ -3,7 +3,7 @@ package model import ( "context" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" "github.com/pkg/errors" ) diff --git a/internal/model/task.go b/internal/model/task.go index b187f572..4e3a5181 100644 --- a/internal/model/task.go +++ b/internal/model/task.go @@ -8,8 +8,8 @@ import ( "github.com/mitchellh/copystructure" "github.com/pkg/errors" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) // InstallMethod is one of 'outofband' OR 'inband' diff --git a/internal/outofband/action_handlers.go b/internal/outofband/action_handlers.go index 9ee07e20..1af2ef38 100644 --- a/internal/outofband/action_handlers.go +++ b/internal/outofband/action_handlers.go @@ -8,8 +8,9 @@ import ( "strings" "time" - "github.com/bmc-toolbox/common" "github.com/hashicorp/go-multierror" + common "github.com/metal-toolbox/bmc-common" + bconsts "github.com/metal-toolbox/bmclib/constants" "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/download" "github.com/metal-toolbox/flasher/internal/metrics" @@ -19,8 +20,7 @@ import ( "github.com/sirupsen/logrus" "golang.org/x/exp/slices" - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" ) const ( diff --git a/internal/outofband/action_handlers_test.go b/internal/outofband/action_handlers_test.go index f6854dd8..f09fb820 100644 --- a/internal/outofband/action_handlers_test.go +++ b/internal/outofband/action_handlers_test.go @@ -5,13 +5,13 @@ import ( "os" "testing" - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" + bconsts "github.com/metal-toolbox/bmclib/constants" "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/model" "github.com/metal-toolbox/flasher/internal/runner" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" "github.com/pkg/errors" "github.com/sirupsen/logrus" "github.com/stretchr/testify/assert" diff --git a/internal/outofband/actions.go b/internal/outofband/actions.go index f00b6c33..f5c1332f 100644 --- a/internal/outofband/actions.go +++ b/internal/outofband/actions.go @@ -3,12 +3,11 @@ package outofband import ( "context" + bconsts "github.com/metal-toolbox/bmclib/constants" "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/model" "github.com/metal-toolbox/flasher/internal/runner" "github.com/pkg/errors" - - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" ) const ( diff --git a/internal/outofband/actions_test.go b/internal/outofband/actions_test.go index 039dc4cf..87f0caa8 100644 --- a/internal/outofband/actions_test.go +++ b/internal/outofband/actions_test.go @@ -4,12 +4,12 @@ import ( "context" "testing" - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" + bconsts "github.com/metal-toolbox/bmclib/constants" "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/model" "github.com/metal-toolbox/flasher/internal/runner" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" "github.com/sirupsen/logrus" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/mock" diff --git a/internal/outofband/bmc.go b/internal/outofband/bmc.go index 98e2e0b8..42adc2da 100644 --- a/internal/outofband/bmc.go +++ b/internal/outofband/bmc.go @@ -10,14 +10,13 @@ import ( "github.com/pkg/errors" - bmclib "github.com/bmc-toolbox/bmclib/v2" - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" - - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" + "github.com/metal-toolbox/bmclib" + bconsts "github.com/metal-toolbox/bmclib/constants" "github.com/metal-toolbox/flasher/internal/device" "github.com/sirupsen/logrus" - rtypes "github.com/metal-toolbox/rivets/types" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) var ( diff --git a/internal/outofband/bmc_helpers.go b/internal/outofband/bmc_helpers.go index cb780e03..6568ce67 100644 --- a/internal/outofband/bmc_helpers.go +++ b/internal/outofband/bmc_helpers.go @@ -12,20 +12,19 @@ import ( "strings" "time" - bmclib "github.com/bmc-toolbox/bmclib/v2" - "github.com/bmc-toolbox/bmclib/v2/constants" - bmcliberrs "github.com/bmc-toolbox/bmclib/v2/errors" - "github.com/bmc-toolbox/bmclib/v2/providers" logrusrv2 "github.com/bombsimon/logrusr/v2" "github.com/hashicorp/go-multierror" "github.com/jpillora/backoff" - rtypes "github.com/metal-toolbox/rivets/types" + "github.com/metal-toolbox/bmclib" + "github.com/metal-toolbox/bmclib/constants" + bmcliberrs "github.com/metal-toolbox/bmclib/errors" + "github.com/metal-toolbox/bmclib/providers" + rtypes "github.com/metal-toolbox/rivets/v2/types" "github.com/pkg/errors" + "github.com/sirupsen/logrus" "go.opentelemetry.io/otel" "golang.org/x/exp/slices" "golang.org/x/net/publicsuffix" - - "github.com/sirupsen/logrus" ) // NOTE: the constants.FirmwareInstallStep type will be moved to the FirmwareInstallProperties struct type which will make this easier diff --git a/internal/outofband/graph.go b/internal/outofband/graph.go index 373c6f7f..50c32164 100644 --- a/internal/outofband/graph.go +++ b/internal/outofband/graph.go @@ -10,9 +10,9 @@ import ( "github.com/sirupsen/logrus" "github.com/stretchr/testify/mock" - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + bconsts "github.com/metal-toolbox/bmclib/constants" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) func GraphSteps(ctx context.Context, g *dot.Graph) error { diff --git a/internal/runner/runner.go b/internal/runner/runner.go index 278de659..217ef12b 100644 --- a/internal/runner/runner.go +++ b/internal/runner/runner.go @@ -14,7 +14,7 @@ import ( "github.com/prometheus/client_golang/prometheus" "github.com/sirupsen/logrus" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" ) // A Runner instance runs a single task, to install firmware on one or more server components. diff --git a/internal/runner/runner_test.go b/internal/runner/runner_test.go index 357125c9..ff9de800 100644 --- a/internal/runner/runner_test.go +++ b/internal/runner/runner_test.go @@ -5,7 +5,7 @@ import ( "testing" "github.com/metal-toolbox/flasher/internal/model" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" "github.com/pkg/errors" "github.com/sirupsen/logrus" "github.com/stretchr/testify/assert" diff --git a/internal/store/fleetdb.go b/internal/store/fleetdb.go index 404d00bf..f35266ce 100644 --- a/internal/store/fleetdb.go +++ b/internal/store/fleetdb.go @@ -8,9 +8,8 @@ import ( "time" fleetdbapi "github.com/metal-toolbox/fleetdb/pkg/api/v1" - rctypes "github.com/metal-toolbox/rivets/condition" - rfleetdb "github.com/metal-toolbox/rivets/fleetdb" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" "go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp" "go.opentelemetry.io/otel" @@ -62,6 +61,8 @@ var ( ErrFirmwareSetLookup = errors.New("firmware set error") ) +var firmwareSetAttributeNS = "sh.hollow.firmware_set.labels" + type FleetDBAPI struct { config *app.FleetDBAPIOptions // componentSlugs map[string]string @@ -144,7 +145,7 @@ func newClientWithOAuth(ctx context.Context, cfg *app.FleetDBAPIOptions, logger ) } -func (s *FleetDBAPI) registerMetric(queryKind string) { +func registerMetric(queryKind string) { metrics.StoreQueryErrorCount.With( prometheus.Labels{ "storeKind": "serverservice", @@ -153,8 +154,8 @@ func (s *FleetDBAPI) registerMetric(queryKind string) { ).Inc() } -// AssetByID returns an Asset object with various attributes populated. -func (s *FleetDBAPI) AssetByID(ctx context.Context, id string) (*rtypes.Server, error) { +// AssetByID returns a rivets Server object. +func (f *FleetDBAPI) AssetByID(ctx context.Context, id string) (*rtypes.Server, error) { ctx, span := otel.Tracer(pkgName).Start(ctx, "FleetDBAPI.AssetByID") defer span.End() @@ -163,12 +164,15 @@ func (s *FleetDBAPI) AssetByID(ctx context.Context, id string) (*rtypes.Server, return nil, errors.Wrap(ErrDeviceID, err.Error()+id) } - asset := &rtypes.Server{ID: deviceUUID.String()} + asset, _, err := f.client.GetServerInventory(ctx, deviceUUID, false) // use out-of-band inventory + if err != nil { + return nil, fmt.Errorf("retrieving inventory from FleetDB: %w", err) + } // query credentials - credential, _, err := s.client.GetCredential(ctx, deviceUUID, fleetdbapi.ServerCredentialTypeBMC) + credential, _, err := f.client.GetCredential(ctx, deviceUUID, fleetdbapi.ServerCredentialTypeBMC) if err != nil { - s.registerMetric("GetCredential") + registerMetric("GetCredential") return nil, errors.Wrap(ErrServerserviceQuery, "GetCredential: "+err.Error()) } @@ -176,55 +180,17 @@ func (s *FleetDBAPI) AssetByID(ctx context.Context, id string) (*rtypes.Server, asset.BMCUser = credential.Username asset.BMCPassword = credential.Password - // query the server object - srv, _, err := s.client.Get(ctx, deviceUUID) - if err != nil { - s.registerMetric("GetServer") - - return nil, errors.Wrap(ErrServerserviceQuery, "GetServer: "+err.Error()) - } - - asset.Facility = srv.FacilityCode - - // set bmc address - bmcAddress, err := s.bmcAddressFromAttributes(srv.Attributes) - if err != nil { - return nil, err - } - - asset.BMCAddress = bmcAddress.String() - - // set asset vendor attributes - asset.Vendor, asset.Model, asset.Serial, err = s.vendorModelFromAttributes(srv.Attributes) - if err != nil { - s.logger.WithError(err).Warn(ErrVendorModelAttributes) - } - - // query asset component inventory -- the default on the server object do not - // include all required information - components, _, err := s.client.GetComponents(ctx, deviceUUID, nil) - if err != nil { - s.registerMetric("GetComponents") - - s.logger.WithError(err).Warn(errors.Wrap(ErrServerserviceQuery, "component information query failed")) - - return asset, nil - } - - // convert from fleetdb API components to Asset.Components - asset.Components = s.fromServerserviceComponents(components) - return asset, nil } // FirmwareSetByID returns a list of firmwares part of a firmware set identified by the given id. -func (s *FleetDBAPI) FirmwareSetByID(ctx context.Context, id uuid.UUID) ([]*rctypes.Firmware, error) { +func (f *FleetDBAPI) FirmwareSetByID(ctx context.Context, id uuid.UUID) ([]*rctypes.Firmware, error) { ctx, span := otel.Tracer(pkgName).Start(ctx, "FleetDBAPI.FirmwareSetByID") defer span.End() - firmwareset, _, err := s.client.GetServerComponentFirmwareSet(ctx, id) + firmwareset, _, err := f.client.GetServerComponentFirmwareSet(ctx, id) if err != nil { - s.registerMetric("GetFirmwareSet") + registerMetric("GetFirmwareSet") return nil, errors.Wrap(ErrServerserviceQuery, "GetFirmwareSet: "+err.Error()) } @@ -233,18 +199,18 @@ func (s *FleetDBAPI) FirmwareSetByID(ctx context.Context, id uuid.UUID) ([]*rcty } // FirmwareByDeviceVendorModel returns the firmware for the device vendor, model. -func (s *FleetDBAPI) FirmwareByDeviceVendorModel(ctx context.Context, deviceVendor, deviceModel string) ([]*rctypes.Firmware, error) { +func (f *FleetDBAPI) FirmwareByDeviceVendorModel(ctx context.Context, deviceVendor, deviceModel string) ([]*rctypes.Firmware, error) { // lookup flasher task attribute params := &fleetdbapi.ComponentFirmwareSetListParams{ AttributeListParams: []fleetdbapi.AttributeListParams{ { - Namespace: rfleetdb.FirmwareSetAttributeNS, + Namespace: firmwareSetAttributeNS, Keys: []string{"model"}, Operator: "eq", Value: deviceModel, }, { - Namespace: rfleetdb.FirmwareSetAttributeNS, + Namespace: firmwareSetAttributeNS, Keys: []string{"vendor"}, Operator: "eq", Value: deviceVendor, @@ -252,7 +218,7 @@ func (s *FleetDBAPI) FirmwareByDeviceVendorModel(ctx context.Context, deviceVend }, } - firmwaresets, _, err := s.client.ListServerComponentFirmwareSet(ctx, params) + firmwaresets, _, err := f.client.ListServerComponentFirmwareSet(ctx, params) if err != nil { return nil, errors.Wrap(ErrServerserviceQuery, err.Error()) } diff --git a/internal/store/fleetdb_attrs.go b/internal/store/fleetdb_attrs.go deleted file mode 100644 index 5985928c..00000000 --- a/internal/store/fleetdb_attrs.go +++ /dev/null @@ -1,99 +0,0 @@ -package store - -import ( - "encoding/json" - "net" - - fleetdbapi "github.com/metal-toolbox/fleetdb/pkg/api/v1" - rfleetdb "github.com/metal-toolbox/rivets/fleetdb" - - rtypes "github.com/metal-toolbox/rivets/types" - - "github.com/bmc-toolbox/common" - "github.com/pkg/errors" -) - -func findAttribute(ns string, attributes []fleetdbapi.Attributes) *fleetdbapi.Attributes { - for _, attribute := range attributes { - if attribute.Namespace == ns { - return &attribute - } - } - - return nil -} - -func (s *FleetDBAPI) bmcAddressFromAttributes(attributes []fleetdbapi.Attributes) (net.IP, error) { - ip := net.IP{} - - bmcAttribute := findAttribute(rfleetdb.ServerAttributeNSBmcAddress, attributes) - if bmcAttribute == nil { - return ip, errors.Wrap(ErrBMCAddress, "not found: "+rfleetdb.ServerAttributeNSBmcAddress) - } - - data := map[string]string{} - if err := json.Unmarshal(bmcAttribute.Data, &data); err != nil { - return ip, errors.Wrap(ErrBMCAddress, err.Error()) - } - - if data["address"] == "" { - return ip, errors.Wrap(ErrBMCAddress, "value undefined: "+rfleetdb.ServerAttributeNSBmcAddress) - } - - return net.ParseIP(data["address"]), nil -} -func (s *FleetDBAPI) vendorModelFromAttributes(attributes []fleetdbapi.Attributes) (deviceVendor, deviceModel, deviceSerial string, err error) { - vendorAttrs := map[string]string{} - - vendorAttribute := findAttribute(rfleetdb.ServerVendorAttributeNS, attributes) - if vendorAttribute == nil { - return deviceVendor, - deviceModel, - deviceSerial, - ErrVendorModelAttributes - } - - if err := json.Unmarshal(vendorAttribute.Data, &vendorAttrs); err != nil { - return deviceVendor, - deviceModel, - deviceSerial, - errors.Wrap(ErrVendorModelAttributes, "server vendor attribute: "+err.Error()) - } - - deviceVendor = common.FormatVendorName(vendorAttrs["vendor"]) - deviceModel = common.FormatProductName(vendorAttrs["model"]) - deviceSerial = vendorAttrs["serial"] - - if deviceVendor == "" { - return deviceVendor, - deviceModel, - deviceSerial, - errors.Wrap(ErrVendorModelAttributes, "device vendor unknown") - } - - if deviceModel == "" { - return deviceVendor, - deviceModel, - deviceSerial, - errors.Wrap(ErrVendorModelAttributes, "device model unknown") - } - - return -} - -func (s *FleetDBAPI) fromServerserviceComponents(scomponents fleetdbapi.ServerComponentSlice) []*rtypes.Component { - components := make([]*rtypes.Component, 0, len(scomponents)) - - // nolint:gocritic // rangeValCopy - this type is returned in the current form by fleetdb API. - for _, sc := range scomponents { - sc := sc - c, err := rfleetdb.RecordToComponent(&sc) - if err != nil { - s.logger.WithError(err).Warn("failed to convert component from fleetdb record: " + sc.Name) - } - - components = append(components, c) - } - - return components -} diff --git a/internal/store/interface.go b/internal/store/interface.go index def39a56..f3875804 100644 --- a/internal/store/interface.go +++ b/internal/store/interface.go @@ -4,8 +4,8 @@ import ( "context" "github.com/google/uuid" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + rtypes "github.com/metal-toolbox/rivets/v2/types" ) type Repository interface { diff --git a/internal/worker/inband.go b/internal/worker/inband.go index 1abb8209..0eebfd77 100644 --- a/internal/worker/inband.go +++ b/internal/worker/inband.go @@ -8,7 +8,7 @@ import ( "github.com/metal-toolbox/flasher/internal/runner" "github.com/metal-toolbox/flasher/internal/store" "github.com/metal-toolbox/flasher/internal/version" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" "github.com/pkg/errors" "github.com/sirupsen/logrus" "go.opentelemetry.io/otel" diff --git a/internal/worker/outofband.go b/internal/worker/outofband.go index 1852c43b..bb9fc822 100644 --- a/internal/worker/outofband.go +++ b/internal/worker/outofband.go @@ -13,7 +13,7 @@ import ( "go.opentelemetry.io/otel" "github.com/metal-toolbox/ctrl" - rctypes "github.com/metal-toolbox/rivets/condition" + rctypes "github.com/metal-toolbox/rivets/v2/condition" ) const ( diff --git a/internal/worker/task_handler.go b/internal/worker/task_handler.go index 58874b8e..b3c58eb8 100644 --- a/internal/worker/task_handler.go +++ b/internal/worker/task_handler.go @@ -6,17 +6,17 @@ import ( "sort" "strings" - "github.com/bmc-toolbox/common" + common "github.com/metal-toolbox/bmc-common" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + "github.com/pkg/errors" + "github.com/sirupsen/logrus" + "github.com/metal-toolbox/flasher/internal/device" "github.com/metal-toolbox/flasher/internal/inband" "github.com/metal-toolbox/flasher/internal/model" "github.com/metal-toolbox/flasher/internal/outofband" "github.com/metal-toolbox/flasher/internal/runner" "github.com/metal-toolbox/flasher/internal/store" - "github.com/pkg/errors" - "github.com/sirupsen/logrus" - - rctypes "github.com/metal-toolbox/rivets/condition" ) var ( diff --git a/internal/worker/task_handler_test.go b/internal/worker/task_handler_test.go index eaf697e3..34305247 100644 --- a/internal/worker/task_handler_test.go +++ b/internal/worker/task_handler_test.go @@ -5,21 +5,21 @@ import ( "testing" "github.com/google/uuid" + common "github.com/metal-toolbox/bmc-common" + bconsts "github.com/metal-toolbox/bmclib/constants" "github.com/metal-toolbox/ctrl" - "github.com/metal-toolbox/flasher/internal/device" - "github.com/metal-toolbox/flasher/internal/model" - "github.com/metal-toolbox/flasher/internal/runner" - "github.com/metal-toolbox/rivets/events/registry" + ironlibm "github.com/metal-toolbox/ironlib/model" + rctypes "github.com/metal-toolbox/rivets/v2/condition" + "github.com/metal-toolbox/rivets/v2/events/registry" + rtypes "github.com/metal-toolbox/rivets/v2/types" "github.com/sirupsen/logrus" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" - bconsts "github.com/bmc-toolbox/bmclib/v2/constants" - "github.com/bmc-toolbox/common" - ironlibm "github.com/metal-toolbox/ironlib/model" - rctypes "github.com/metal-toolbox/rivets/condition" - rtypes "github.com/metal-toolbox/rivets/types" + "github.com/metal-toolbox/flasher/internal/device" + "github.com/metal-toolbox/flasher/internal/model" + "github.com/metal-toolbox/flasher/internal/runner" ) func TestSortFirmwareByInstallOrder(t *testing.T) {