fix(pxc): raise haproxy conn limit (#732)
diff --git a/roles/defaults/helpers.go b/roles/defaults/helpers.go
new file mode 100644
index 0000000..a7bd833
--- /dev/null
+++ b/roles/defaults/helpers.go
@@ -0,0 +1,28 @@
+package defaults
+
+import (
+ "regexp"
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+ "github.com/stretchr/testify/require"
+)
+
+var (
+ r *regexp.Regexp
+)
+
+func init() {
+ r, _ = regexp.Compile(`{{ atmosphere_images\['(?P<ImageName>\w+)'] \| vexxhost.kubernetes.docker_image\('ref'\) }}`)
+}
+
+func AssertAtmosphereImage(t *testing.T, expected string, value string) {
+ matches := r.FindStringSubmatch(value)
+ require.Len(t, matches, 2)
+ imageName := matches[1]
+
+ image, err := GetImageByKey(imageName)
+ require.NoError(t, err)
+
+ assert.Equal(t, expected, image)
+}
diff --git a/roles/defaults/vars.go b/roles/defaults/vars.go
new file mode 100644
index 0000000..07b3dc0
--- /dev/null
+++ b/roles/defaults/vars.go
@@ -0,0 +1,27 @@
+package defaults
+
+import (
+ "bytes"
+ _ "embed"
+
+ "github.com/goccy/go-yaml"
+)
+
+var (
+ //go:embed vars/main.yml
+ vars_file []byte
+)
+
+func GetImageByKey(key string) (string, error) {
+ path, err := yaml.PathString("$._atmosphere_images." + key)
+ if err != nil {
+ return "", err
+ }
+
+ var image string
+ if err := path.Read(bytes.NewReader(vars_file), &image); err != nil {
+ return "", err
+ }
+
+ return image, nil
+}