From c8a77789bff91f96d86eade27d5e0f90da118cc4 Mon Sep 17 00:00:00 2001 From: Martin <maarand@teklia.com> Date: Thu, 12 Nov 2020 11:45:51 +0100 Subject: [PATCH] allow git requirements to be used --- worker-{{cookiecutter.slug}}/setup.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/worker-{{cookiecutter.slug}}/setup.py b/worker-{{cookiecutter.slug}}/setup.py index ee956590..3f9cc17f 100755 --- a/worker-{{cookiecutter.slug}}/setup.py +++ b/worker-{{cookiecutter.slug}}/setup.py @@ -9,10 +9,25 @@ MODULE = "worker_{{cookiecutter.slug}}" COMMAND = "worker-{{cookiecutter.slug}}" +def parse_requirements_line(line): + """Special case for git requirements""" + if line.startswith("git+http"): + assert "@" in line, "Branch should be specified with suffix (ex: @master)" + assert ( + "#egg=" in line + ), "Package name should be specified with suffix (ex: #egg=kraken)" + package_name = line.split("#egg=")[-1] + return f"{package_name} @ {line}" + else: + return line + + def parse_requirements(): path = Path(__file__).parent.resolve() / "requirements.txt" assert path.exists(), f"Missing requirements: {path}" - return list(map(str.strip, path.read_text().splitlines())) + return list( + map(parse_requirements_line, map(str.strip, path.read_text().splitlines())) + ) setup( -- GitLab