diff --git a/config/lib/ci_yaml/ci_yaml.star b/config/lib/ci_yaml/ci_yaml.star
index 477e632..9cd4d75 100644
--- a/config/lib/ci_yaml/ci_yaml.star
+++ b/config/lib/ci_yaml/ci_yaml.star
@@ -159,7 +159,7 @@
             platform_properties[platform][k] = _parse_attribute(k, v)
     return platform_properties
 
-def _parse_attribute(key, value):
+def _parse_attribute(key, value, preserve_strings = False):
     """Helper function to parse non string type properties."""
     json_list = ["android_sdk_license", "android_sdk_preview_license"]
     if value == "true":
@@ -171,7 +171,7 @@
         return value.replace("\\n", "\n")
     elif value.startswith("[") or value.startswith("{"):
         return json.decode(value)
-    elif value.isdigit():
+    elif value.isdigit() and not preserve_strings:
         return int(value)
     else:
         return value
@@ -188,7 +188,7 @@
 
     # Update with target specific dimensions
     for k, v in dict(target.dimensions).items():
-        dimensions[k] = _parse_attribute(k, v)
+        dimensions[k] = _parse_attribute(k, v, True)
     return dimensions
 
 def _properties(ci_yaml, target, default_properties = {}, repo = None, branch = None):
