github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/atc/creds/dummy/flags.go (about)

     1  package dummy
     2  
     3  import (
     4  	"fmt"
     5  	"strings"
     6  
     7  	yaml "sigs.k8s.io/yaml"
     8  )
     9  
    10  type VarFlag struct {
    11  	Name  string
    12  	Value interface{}
    13  }
    14  
    15  func (pair *VarFlag) UnmarshalFlag(value string) error {
    16  	vs := strings.SplitN(value, "=", 2)
    17  	if len(vs) != 2 {
    18  		return fmt.Errorf("invalid input pair '%s' (must be name=value)", value)
    19  	}
    20  
    21  	pair.Name = vs[0]
    22  
    23  	err := yaml.Unmarshal([]byte(vs[1]), &pair.Value)
    24  	if err != nil {
    25  		return err
    26  	}
    27  
    28  	return nil
    29  }