From 2fab6d75f514f5396116699eb0c2d810e2a298a0 Mon Sep 17 00:00:00 2001
From: Magnus Walbeck <magnus.walbeck@walbeck.it>
Date: Thu, 1 Jul 2021 12:54:21 +0200
Subject: [PATCH] Handle version numbers with suffix and no hyphen. Add support
 for ENV using the recommended syntax with =

---
 .gitignore                        | 2 ++
 determine_docker_tags/__init__.py | 9 ++++++++-
 pyproject.toml                    | 2 +-
 3 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/.gitignore b/.gitignore
index 2a42a83..e8145eb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,5 @@ __pycache__
 .pytest_cache
 .coverage
 dist
+Dockerfile.test
+.tags
diff --git a/determine_docker_tags/__init__.py b/determine_docker_tags/__init__.py
index 16e55ed..6ecbd0e 100644
--- a/determine_docker_tags/__init__.py
+++ b/determine_docker_tags/__init__.py
@@ -79,13 +79,20 @@ def main():
 
         with open(dockerfile_path) as dockerfile:
             for line in dockerfile:
-                if re.search(rf"ENV {app_name}_VERSION .*", line):
+                if re.search(rf"ENV {app_name}_VERSION=.*", line):
+                    version_string = line[line.find("=", 4) + 1 :].strip()
+                    break
+                elif re.search(rf"ENV {app_name}_VERSION .*", line):
                     version_string = line[line.find(" ", 4) + 1 :].strip()
                     break
 
         if version_string[0] == "v":
             version_string = version_string[1:]
 
+        if "-" not in version_string and re.search(r"\d*\.\d*\.\d*\w*", version_string):
+            split_version_string = re.split(r"(\d*\.\d*\.\d*)(\w*.*)", version_string)
+            version_string = split_version_string[1] + "-" + split_version_string[2]
+
         tags = determine_tags(version_string, app_env, include_major, include_suffix)
 
     elif version_type == "docker_from":
diff --git a/pyproject.toml b/pyproject.toml
index 7101a3c..2f1b6ea 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
 [tool.poetry]
 name = "determine-docker-tags"
-version = "0.1.6"
+version = "0.1.7"
 description = "A small program to determine docker image tags"
 authors = ["Magnus Walbeck <magnus.walbeck@walbeck.it>"]
 readme = "README.md"