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  }