Skip to content

Commit 6a42932

Browse files
committed
fix: regression in config decoding
Signed-off-by: Piaras Hoban <[email protected]>
1 parent 7a0ef6d commit 6a42932

File tree

5 files changed

+12
-12
lines changed

5 files changed

+12
-12
lines changed

examples/config-events.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"distSpecVersion": "1.1.0",
2+
"distSpecVersion": "1.1.1",
33
"storage": {
44
"rootDirectory": "/tmp/zot"
55
},

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ require (
2020
github.com/bmatcuk/doublestar/v4 v4.8.1
2121
github.com/briandowns/spinner v1.23.2
2222
github.com/chartmuseum/auth v0.5.0
23+
github.com/cloudevents/sdk-go/protocol/nats/v2 v2.15.2
2324
github.com/cloudevents/sdk-go/v2 v2.15.2
2425
github.com/containers/common v0.62.3
2526
github.com/containers/image/v5 v5.34.3
26-
github.com/cloudevents/sdk-go/protocol/nats/v2 v2.15.2
2727
github.com/dchest/siphash v1.2.3
2828
github.com/didip/tollbooth/v7 v7.0.2
2929
github.com/distribution/distribution/v3 v3.0.0-rc.4

go.sum

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -976,8 +976,6 @@ github.com/cloudevents/sdk-go/protocol/nats/v2 v2.15.2 h1:grQPId+rXCeR5RcmK5uBli
976976
github.com/cloudevents/sdk-go/protocol/nats/v2 v2.15.2/go.mod h1:KQA5rf2uSgtCnXsAFyFXtwiDboL/pB6gsg4VTErhfLA=
977977
github.com/cloudevents/sdk-go/v2 v2.15.2 h1:54+I5xQEnI73RBhWHxbI1XJcqOFOVJN85vb41+8mHUc=
978978
github.com/cloudevents/sdk-go/v2 v2.15.2/go.mod h1:lL7kSWAE/V8VI4Wh0jbL2v/jvqsm6tjmaQBSvxcv4uE=
979-
github.com/cloudflare/circl v1.5.0 h1:hxIWksrX6XN5a1L2TI/h53AGPhNHoUBo+TD1ms9+pys=
980-
github.com/cloudflare/circl v1.5.0/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs=
981979
github.com/cloudflare/circl v1.6.0 h1:cr5JKic4HI+LkINy2lg3W2jF8sHCVTBncJr5gIIq7qk=
982980
github.com/cloudflare/circl v1.6.0/go.mod h1:uddAzsPgqdMAYatqJ0lsjX1oECcQLIlRpzZh3pJrofs=
983981
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
@@ -1029,10 +1027,8 @@ github.com/containerd/ttrpc v1.2.7 h1:qIrroQvuOL9HQ1X6KHe2ohc7p+HP/0VE6XPU7elJRq
10291027
github.com/containerd/ttrpc v1.2.7/go.mod h1:YCXHsb32f+Sq5/72xHubdiJRQY9inL4a4ZQrAbN1q9o=
10301028
github.com/containerd/typeurl/v2 v2.2.3 h1:yNA/94zxWdvYACdYO8zofhrTVuQY73fFU1y++dYSw40=
10311029
github.com/containerd/typeurl/v2 v2.2.3/go.mod h1:95ljDnPfD3bAbDJRugOiShd/DlAAsxGtUBhJxIn7SCk=
1032-
github.com/containers/common v0.62.1/go.mod h1:n9cEboBmY3AnTk1alkq4t7sLM4plwkDCiaWbsf67YxE=
10331030
github.com/containers/common v0.62.3 h1:aOGryqXfW6aKBbHbqOveH7zB+ihavUN03X/2pUSvWFI=
10341031
github.com/containers/common v0.62.3/go.mod h1:3R8kDox2prC9uj/a2hmXj/YjZz5sBEUNrcDiw51S0Lo=
1035-
github.com/containers/image/v5 v5.34.2/go.mod h1:MG++slvQSZVq5ejAcLdu4APGsKGMb0YHHnAo7X28fdE=
10361032
github.com/containers/image/v5 v5.34.3 h1:/cMgfyA4Y7ILH7nzWP/kqpkE5Df35Ek4bp5ZPvJOVmI=
10371033
github.com/containers/image/v5 v5.34.3/go.mod h1:MG++slvQSZVq5ejAcLdu4APGsKGMb0YHHnAo7X28fdE=
10381034
github.com/containers/libtrust v0.0.0-20230121012942-c1716e8a8d01 h1:Qzk5C6cYglewc+UyGf6lc8Mj2UaPTHy/iF2De0/77CA=
@@ -1592,7 +1588,6 @@ github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+o
15921588
github.com/klauspost/asmfmt v1.3.2/go.mod h1:AG8TuvYojzulgDAMCnYn50l/5QV3Bs/tp6j0HLHbNSE=
15931589
github.com/klauspost/compress v1.15.9/go.mod h1:PhcZ0MbTNciWF3rruxRgKxI5NkcHHrHUDtV4Yw2GlzU=
15941590
github.com/klauspost/compress v1.15.11/go.mod h1:QPwzmACJjUTFsnSHH934V6woptycfrDDJnH7hvFVbGM=
1595-
github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0=
15961591
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
15971592
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
15981593
github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
@@ -2627,7 +2622,6 @@ golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxb
26272622
golang.org/x/time v0.0.0-20220922220347-f3bd1da661af/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
26282623
golang.org/x/time v0.1.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
26292624
golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
2630-
golang.org/x/time v0.10.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
26312625
golang.org/x/time v0.11.0 h1:/bpjEDfN9tkoN/ryeYHnv5hcMlc8ncjMcM4XBk5NWV0=
26322626
golang.org/x/time v0.11.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
26332627
golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
@@ -2985,7 +2979,6 @@ google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw
29852979
google.golang.org/protobuf v1.29.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
29862980
google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
29872981
google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos=
2988-
google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
29892982
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
29902983
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
29912984
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=

pkg/cli/server/root.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@ import (
2020
"github.com/rs/zerolog/log"
2121
"github.com/spf13/cobra"
2222
"github.com/spf13/viper"
23+
eventsconf "zotregistry.dev/zot/pkg/extensions/config/events"
2324

2425
zerr "zotregistry.dev/zot/errors"
2526
"zotregistry.dev/zot/pkg/api"
2627
"zotregistry.dev/zot/pkg/api/config"
2728
"zotregistry.dev/zot/pkg/api/constants"
2829
"zotregistry.dev/zot/pkg/common"
2930
extconf "zotregistry.dev/zot/pkg/extensions/config"
30-
eventsconf "zotregistry.dev/zot/pkg/extensions/config/events"
3131
"zotregistry.dev/zot/pkg/extensions/monitoring"
3232
zlog "zotregistry.dev/zot/pkg/log"
3333
storageConstants "zotregistry.dev/zot/pkg/storage/constants"
@@ -824,7 +824,12 @@ func LoadConfiguration(config *config.Config, configPath string) error {
824824

825825
decoderOpts := []viper.DecoderConfigOption{
826826
metadataConfig(metaData),
827-
viper.DecodeHook(eventsconf.SinkConfigDecoderHook()),
827+
viper.DecodeHook(
828+
mapstructure.ComposeDecodeHookFunc(
829+
mapstructure.StringToTimeDurationHookFunc(),
830+
eventsconf.SinkConfigDecoderHook(),
831+
),
832+
),
828833
}
829834

830835
if err := viperInstance.UnmarshalExact(&config, decoderOpts...); err != nil {

pkg/extensions/config/events/decoder.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,12 @@ import (
1212
func SinkConfigDecoderHook() mapstructure.DecodeHookFunc {
1313
return func(f reflect.Type, t reflect.Type, data interface{}) (interface{}, error) {
1414
// Only apply this hook when converting to SinkConfig
15+
if t.Name() != "SinkConfig" {
16+
return data, nil
17+
}
1518
if t != reflect.TypeOf((*SinkConfig)(nil)).Elem() {
1619
return data, nil
1720
}
18-
1921
dataMap, ok := data.(map[string]interface{})
2022
if !ok {
2123
return data, nil

0 commit comments

Comments
 (0)