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

     1  package dummy
     2  
     3  import (
     4  	"encoding/json"
     5  
     6  	"code.cloudfoundry.org/lager"
     7  
     8  	"github.com/pf-qiu/concourse/v6/atc/creds"
     9  )
    10  
    11  type Manager struct {
    12  	Vars []VarFlag `long:"var" description:"A YAML value to expose via credential management. Can be prefixed with a team and/or pipeline to limit scope." value-name:"[TEAM/[PIPELINE/]]VAR=VALUE"`
    13  }
    14  
    15  func (manager *Manager) Init(log lager.Logger) error {
    16  	return nil
    17  }
    18  
    19  func (manager *Manager) MarshalJSON() ([]byte, error) {
    20  	health, err := manager.Health()
    21  	if err != nil {
    22  		return nil, err
    23  	}
    24  
    25  	return json.Marshal(&map[string]interface{}{
    26  		"health": health,
    27  	})
    28  }
    29  
    30  func (manager Manager) IsConfigured() bool {
    31  	return len(manager.Vars) > 0
    32  }
    33  
    34  func (manager Manager) Validate() error {
    35  	return nil
    36  }
    37  
    38  func (manager Manager) Health() (*creds.HealthResponse, error) {
    39  	return &creds.HealthResponse{
    40  		Method: "noop",
    41  	}, nil
    42  }
    43  
    44  func (manager Manager) Close(logger lager.Logger) {
    45  
    46  }
    47  
    48  func (manager Manager) NewSecretsFactory(logger lager.Logger) (creds.SecretsFactory, error) {
    49  	return NewSecretsFactory(manager.Vars), nil
    50  }