func NewFromConfig()

in spinnaker/spinnaker.go [105:135]


func NewFromConfig(cfg *config.Monkey) (Spinnaker, error) {
	spinnakerEndpoint := cfg.SpinnakerEndpoint()
	certPath := cfg.SpinnakerCertificate()
	encryptedPassword := cfg.SpinnakerEncryptedPassword()
	user := cfg.SpinnakerUser()
	x509Cert := cfg.SpinnakerX509Cert()
	x509Key := cfg.SpinnakerX509Key()

	if spinnakerEndpoint == "" {
		return Spinnaker{}, errors.New("FATAL: no spinnaker endpoint specified in config")
	}

	var password string
	var err error
	var decryptor chaosmonkey.Decryptor

	if encryptedPassword != "" {
		decryptor, err = deps.GetDecryptor(cfg)
		if err != nil {
			return Spinnaker{}, err
		}

		password, err = decryptor.Decrypt(encryptedPassword)
		if err != nil {
			return Spinnaker{}, err
		}
	}

	return New(spinnakerEndpoint, certPath, password, x509Cert, x509Key, user)

}