github.com/smartcontractkit/chainlink-testing-framework/libs@v0.0.0-20240227141906-ec710b4eb1a3/k8s/config/overrides_test.go (about) 1 package config 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/require" 7 ) 8 9 type Props struct { 10 Name string `envconfig:"MY_NAME" yaml:"name"` 11 } 12 13 func TestOverrideCodeEnv(t *testing.T) { 14 t.Run("CL env and version", func(t *testing.T) { 15 defaultCodeProps := map[string]interface{}{ 16 "replicas": "1", 17 "env": map[string]interface{}{ 18 "database_url": "postgresql://postgres:node@0.0.0.0/chainlink?sslmode=disable", 19 }, 20 "chainlink": map[string]interface{}{ 21 "image": map[string]interface{}{ 22 "image": "public.ecr.aws/chainlink/chainlink", 23 "version": "1.4.1-root", 24 }, 25 "web_port": "6688", 26 "p2p_port": "6690", 27 "resources": map[string]interface{}{ 28 "requests": map[string]interface{}{ 29 "cpu": "350m", 30 "memory": "1024Mi", 31 }, 32 "limits": map[string]interface{}{ 33 "cpu": "350m", 34 "memory": "1024Mi", 35 }, 36 }, 37 }, 38 "db": map[string]interface{}{ 39 "stateful": false, 40 "capacity": "1Gi", 41 "resources": map[string]interface{}{ 42 "requests": map[string]interface{}{ 43 "cpu": "250m", 44 "memory": "256Mi", 45 }, 46 "limits": map[string]interface{}{ 47 "cpu": "250m", 48 "memory": "256Mi", 49 }, 50 }, 51 }, 52 } 53 t.Setenv(EnvVarCLImage, "abc") 54 t.Setenv(EnvVarCLTag, "def") 55 MustEnvOverrideVersion(&defaultCodeProps) 56 require.Equal(t, "abc", defaultCodeProps["chainlink"].(map[string]interface{})["image"].(map[string]interface{})["image"]) 57 require.Equal(t, "def", defaultCodeProps["chainlink"].(map[string]interface{})["image"].(map[string]interface{})["version"]) 58 }) 59 }