Skip to content

Commit dd9ea2f

Browse files
committed
chore(upload): use symlink regex
1 parent 237a65d commit dd9ea2f

1 file changed

Lines changed: 15 additions & 20 deletions

File tree

scripts/storage.py

Lines changed: 15 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@
1414
)
1515

1616
symlink_table = {
17-
"go": ["1.16", "1.17", "1.18", "1.19", "1.20", "1.21", "1.22", "1.23", "1.24"],
18-
"java": ["8", "11", "17", "18", "19", "20", "21", "22", "23", "24"],
19-
"node": ["12", "14", "16", "17", "18", "19", "20", "21", "22", "23"],
20-
"php": ["7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4"],
21-
"python": ["2.7", "3.7", "3.8", "3.9", "3.10", "3.11", "3.12", "3.13"],
22-
"ruby": ["2.6", "3.7", "3.0", "3.1", "3.2", "3.3", "3.4"],
23-
"rust": ["1"],
17+
"go": "[0-9]{1,}.[0-9]{1,}",
18+
"java": "[0-9]{1,}",
19+
"node": "[0-9]{1,}",
20+
"php": "[0-9]{1,}.[0-9]{1,}",
21+
"python": "[0-9]{1,}.[0-9]{1,}",
22+
"ruby": "[0-9]{1,}.[0-9]{1,}",
23+
"rust": "[0-9]{1,}",
2424
}
2525

2626

@@ -32,22 +32,19 @@ def upload(filename, filepath):
3232

3333
def upload_list(stack_name, dist_dir):
3434
for root, _, files in os.walk(os.path.join(dist_dir, stack_name)):
35-
for _filename in files:
35+
for _filename in files:
3636
if _filename.startswith(stack_name) and _filename.endswith(".tar.gz"):
3737
filename = os.path.join("stacks", stack_name, _filename)
3838
filepath = os.path.join(root, _filename)
3939
upload(filename, filepath)
4040
if stack_name in symlink_table:
41-
for symlink_version in symlink_table[stack_name]:
42-
prefix = f"stacks/{stack_name}/{stack_name}-{symlink_version}"
43-
if filename.startswith(prefix):
44-
symlink(stack_name, symlink_version)
45-
46-
47-
def repair_symlink():
48-
for stack_name, versions in symlink_table.items():
49-
for version in versions:
50-
symlink(stack_name, version)
41+
version_regex = symlink_table[stack_name]
42+
prefix = f"stacks/{stack_name}/{stack_name}-"
43+
version = filename.replace(prefix, "").split("-")[0]
44+
symlink_version = re.search(version_regex, version).group()
45+
prefix += symlink_version
46+
if filename.startswith(prefix):
47+
symlink(stack_name, symlink_version)
5148

5249

5350
def symlink(stack_name, version):
@@ -69,8 +66,6 @@ def symlink(stack_name, version):
6966
action = sys.argv[1]
7067
if action == "upload":
7168
upload_list(sys.argv[2], sys.argv[3])
72-
elif action == "repair":
73-
repair_symlink()
7469
elif action == "symlink":
7570
symlink(sys.argv[2], sys.argv[3])
7671
else:

0 commit comments

Comments
 (0)