github.com/kotalco/kotal@v0.3.0/clients/chainlink/chainlink_client.go (about) 1 package chainlink 2 3 import ( 4 "fmt" 5 6 chainlinkv1alpha1 "github.com/kotalco/kotal/apis/chainlink/v1alpha1" 7 "github.com/kotalco/kotal/controllers/shared" 8 corev1 "k8s.io/api/core/v1" 9 ) 10 11 // ChainlinkClient is chainlink official client 12 // https://github.com/smartcontractkit/chainlink 13 type ChainlinkClient struct { 14 node *chainlinkv1alpha1.Node 15 } 16 17 // Images 18 const ( 19 // ChainlinkHomeDir is chainlink image home dir 20 // TODO: update the home directory 21 ChainlinkHomeDir = "/home/chainlink" 22 ) 23 24 // Command is chainlink entrypoint 25 func (c *ChainlinkClient) Command() []string { 26 return []string{"chainlink"} 27 } 28 29 // Args returns chainlink args 30 func (c *ChainlinkClient) Args() []string { 31 args := []string{ 32 "local", 33 "--config", 34 fmt.Sprintf("%s/config.toml", shared.PathConfig(c.HomeDir())), 35 "--secrets", 36 fmt.Sprintf("%s/secrets.toml", shared.PathConfig(c.HomeDir())), 37 "node", 38 } 39 40 args = append(args, ChainlinkAPI, fmt.Sprintf("%s/.api", shared.PathData(c.HomeDir()))) 41 42 return args 43 } 44 45 func (c *ChainlinkClient) Env() []corev1.EnvVar { 46 return nil 47 } 48 49 // HomeDir returns chainlink image home directory 50 func (c *ChainlinkClient) HomeDir() string { 51 return ChainlinkHomeDir 52 }