Skip to content
Snippets Groups Projects
Commit 168d7921 authored by Nico's avatar Nico
Browse files

fix symlinks in zip archives not being extracted correctly

parent ee937b7a
No related branches found
No related tags found
No related merge requests found
......@@ -10,6 +10,7 @@ import os.path
import re
import tempfile
import sys
import subprocess
GITLAB_API_BASE = "https://gitlab.freifunk-stuttgart.de/api/v4"
PROJECT_ID = 1
......@@ -34,7 +35,9 @@ def extract_zip(artifact_zipfile):
with zipfile.ZipFile(artifact_zipfile) as artifact_zip:
version = find_version_from_archive(artifact_zip.infolist())
with tempfile.TemporaryDirectory(dir=os.getcwd()) as tempdir:
artifact_zip.extractall(tempdir)
# Python ZipFile doesn't support symlinks
# https://bugs.python.org/issue27318
subprocess.check_call(['unzip', artifact_zipfile.name, '-d{}'.format(tempdir)], stdin=artifact_zipfile)
outputdir = os.path.join(tempdir, "gluon", "output")
os.rename(outputdir, version)
return version
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment