drone-yaml/yaml/registry.go

37 lines
915 B
Go

// Copyright (c) 2019, Drone IO Inc.
// Copyright (c) 2021, Robert Kaussow <mail@thegeeklab.de>
package yaml
import "errors"
type (
// Registry is a resource that provides encrypted
// registry credentials and pointers to external
// registry credentials (e.g. from vault).
Registry struct {
Version string `json:"version,omitempty"`
Kind string `json:"kind,omitempty"`
Type string `json:"type,omitempty"`
Data map[string]string `json:"data,omitempty"`
}
)
var ErrInvalidRegistry = errors.New("yaml: invalid registry resource")
// GetVersion returns the resource version.
func (r *Registry) GetVersion() string { return r.Version }
// GetKind returns the resource kind.
func (r *Registry) GetKind() string { return r.Kind }
// Validate returns an error if the registry is invalid.
func (r *Registry) Validate() error {
if len(r.Data) == 0 {
return ErrInvalidRegistry
}
return nil
}