update dasel provider
All checks were successful
Go Action / goaction (pull_request) Successful in 38s

This commit is contained in:
2025-12-27 16:30:24 +03:00
parent b6aa83b53e
commit 7ca860c127
3 changed files with 19 additions and 37 deletions

View File

@@ -1,28 +1,13 @@
package hcl
import (
"fmt"
"github.com/tomwright/dasel/v3/parsing"
"github.com/tomwright/dasel/v3/parsing/hcl"
"gitoa.ru/go-4devs/config"
"gitoa.ru/go-4devs/config/provider/dasel"
)
const Name = "dasel:hcl"
//nolint:wrapcheck
func New(data []byte) (dasel.Provider, error) {
readOption := parsing.DefaultReaderOptions()
reader, err := hcl.HCL.NewReader(readOption)
if err != nil {
return dasel.Provider{}, fmt.Errorf("%w:%w", config.ErrInitFactory, err)
}
val, verr := reader.Read(data)
if verr != nil {
return dasel.Provider{}, fmt.Errorf("%w:%w", config.ErrInitFactory, verr)
}
return dasel.New(val, dasel.WithName(Name)), nil
return dasel.New(data, hcl.HCL, dasel.WithName(Name))
}

View File

@@ -1,28 +1,13 @@
package json //nolint:revive
import (
"fmt"
"github.com/tomwright/dasel/v3/parsing"
"github.com/tomwright/dasel/v3/parsing/json"
"gitoa.ru/go-4devs/config"
"gitoa.ru/go-4devs/config/provider/dasel"
)
const Name = "dasel:json"
//nolint:wrapcheck
func New(data []byte) (dasel.Provider, error) {
readOption := parsing.DefaultReaderOptions()
reader, err := json.JSON.NewReader(readOption)
if err != nil {
return dasel.Provider{}, fmt.Errorf("%w:%w", config.ErrInitFactory, err)
}
val, verr := reader.Read(data)
if verr != nil {
return dasel.Provider{}, fmt.Errorf("%w:%w", config.ErrInitFactory, verr)
}
return dasel.New(val, dasel.WithName(Name)), nil
return dasel.New(data, json.JSON, dasel.WithName(Name))
}

View File

@@ -8,11 +8,12 @@ import (
dasel "github.com/tomwright/dasel/v3"
"github.com/tomwright/dasel/v3/model"
"github.com/tomwright/dasel/v3/parsing"
"gitoa.ru/go-4devs/config"
"gitoa.ru/go-4devs/config/value"
)
var _ config.Provider = New(nil)
var _ config.Provider = Provider{} //nolint:exhaustruct
const Name = "dasel"
@@ -24,7 +25,17 @@ func WithName(in string) Option {
}
}
func New(data *model.Value, opts ...Option) Provider {
func New(in []byte, format parsing.Format, opts ...Option) (Provider, error) {
reader, err := format.NewReader(parsing.DefaultReaderOptions())
if err != nil {
return Provider{}, fmt.Errorf("%w:%w", config.ErrInitFactory, err)
}
data, verr := reader.Read(in)
if verr != nil {
return Provider{}, fmt.Errorf("%w:%w", config.ErrInitFactory, verr)
}
prov := Provider{
data: data,
key: func(path ...string) string {
@@ -32,11 +43,12 @@ func New(data *model.Value, opts ...Option) Provider {
},
name: Name,
}
for _, opt := range opts {
opt(&prov)
}
return prov
return prov, nil
}
type Provider struct {