func ReadConfig(filePath string) (*Config, error) {
	config := &Config{}
	if _, err := toml.DecodeFile(filePath, config); err != nil {
		return nil, fmt.Errorf(
			"failed to decode file [%s]: [%v]",
			filePath,
			err,
		)
	}
	password := os.Getenv(PasswordEnvVariable)
	config.Ethereum.Account.KeyFilePassword = password
	return config, nil
}
ReadConfig reads in the configuration file in .toml format. Chain key file
password is expected to be provided as environment variable.
package config
import (
	"fmt"
	"os"
	"github.com/BurntSushi/toml"
	"github.com/keep-network/keep-common/pkg/chain/ethereum"
	"github.com/keep-network/tbtc/relay/pkg/btc"
)
const PasswordEnvVariable = "OPERATOR_KEY_FILE_PASSWORD"
type Config struct {
	Ethereum ethereum.Config
	Bitcoin  btc.Config
	Metrics  Metrics
}
type Metrics struct {
	Port             int
	ChainMetricsTick int
	NodeMetricsTick  int
}