Help us shape the future of Go! Take the 2026 Go Developer Survey

specs

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2022 License: MPL-2.0 Imports: 8 Imported by: 21

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SpecUnmarshalYamlStrict added in v0.0.4

func SpecUnmarshalYamlStrict(b []byte, spec *Spec) error

func UnmarshalJSONStrict added in v0.5.0

func UnmarshalJSONStrict(b []byte, out interface{}) error

func ValidateSpec

func ValidateSpec(schema string, spec interface{}) (*gojsonschema.Result, error)

Types

type Destination added in v0.0.4

type Destination struct {
	Name      string      `json:"name,omitempty"`
	Version   string      `json:"version,omitempty"`
	Path      string      `json:"path,omitempty"`
	Registry  Registry    `json:"registry,omitempty"`
	WriteMode WriteMode   `json:"write_mode,omitempty"`
	Spec      interface{} `json:"spec,omitempty"`
}

func (*Destination) SetDefaults added in v0.0.4

func (d *Destination) SetDefaults()

func (*Destination) UnmarshalSpec added in v0.0.4

func (d *Destination) UnmarshalSpec(out interface{}) error

type Kind added in v0.0.4

type Kind int
const (
	KindSource Kind = iota
	KindDestination
)

func KindFromString added in v0.0.4

func KindFromString(s string) (Kind, error)

func (Kind) MarshalJSON added in v0.0.4

func (k Kind) MarshalJSON() ([]byte, error)

func (Kind) String added in v0.0.4

func (k Kind) String() string

func (*Kind) UnmarshalJSON added in v0.0.4

func (k *Kind) UnmarshalJSON(data []byte) (err error)

type Registry added in v0.0.4

type Registry int
const (
	RegistryGithub Registry = iota
	RegistryLocal
	RegistryGrpc
)

func RegistryFromString added in v0.0.4

func RegistryFromString(s string) (Registry, error)

func (Registry) MarshalJSON added in v0.0.4

func (r Registry) MarshalJSON() ([]byte, error)

func (Registry) String added in v0.0.4

func (r Registry) String() string

func (*Registry) UnmarshalJSON added in v0.0.4

func (r *Registry) UnmarshalJSON(data []byte) (err error)

type Source added in v0.0.4

type Source struct {
	Name    string `json:"name,omitempty"`
	Version string `json:"version,omitempty"`
	// Path is the path in the registry
	Path string `json:"path,omitempty"`
	// Registry can be github,local,grpc. Might support things like https in the future.
	Registry      Registry    `json:"registry,omitempty"`
	MaxGoRoutines uint64      `json:"max_goroutines,omitempty"`
	Tables        []string    `json:"tables,omitempty"`
	SkipTables    []string    `json:"skip_tables,omitempty"`
	Destinations  []string    `json:"destinations,omitempty"`
	Spec          interface{} `json:"spec,omitempty"`
}

Source is the shared configuration for all source plugins

func (*Source) SetDefaults added in v0.0.4

func (s *Source) SetDefaults()

func (*Source) UnmarshalSpec added in v0.0.4

func (s *Source) UnmarshalSpec(out interface{}) error

func (*Source) Validate added in v0.0.4

func (*Source) Validate() (*gojsonschema.Result, error)

type Spec

type Spec struct {
	Kind Kind        `json:"kind"`
	Spec interface{} `json:"spec"`
}

func (*Spec) UnmarshalJSON added in v0.0.4

func (s *Spec) UnmarshalJSON(data []byte) error

type SpecReader

type SpecReader struct {
	// contains filtered or unexported fields
}

func NewSpecReader

func NewSpecReader(directory string) (*SpecReader, error)

func (*SpecReader) GetDestinationByName added in v0.2.3

func (s *SpecReader) GetDestinationByName(name string) *Destination

func (*SpecReader) GetSourceByName

func (s *SpecReader) GetSourceByName(name string) *Source

func (*SpecReader) GetSources added in v0.0.4

func (s *SpecReader) GetSources() []Source

type WriteMode added in v0.0.4

type WriteMode int
const (
	WriteModeAppend WriteMode = iota
	WriteModeOverwrite
)

func WriteModeFromString added in v0.0.4

func WriteModeFromString(s string) (WriteMode, error)

func (WriteMode) MarshalJSON added in v0.0.4

func (m WriteMode) MarshalJSON() ([]byte, error)

func (WriteMode) String added in v0.0.4

func (m WriteMode) String() string

func (*WriteMode) UnmarshalJSON added in v0.0.4

func (m *WriteMode) UnmarshalJSON(data []byte) (err error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL