Просмотр исходного кода

Skip invalid git tags in versions.py

Signed-off-by: Daniel Nephin <[email protected]>
Daniel Nephin 9 лет назад
Родитель
Сommit
4bf5271ae2
1 измененных файлов с 10 добавлено и 1 удалено
  1. 10 1
      script/test/versions.py

+ 10 - 1
script/test/versions.py

@@ -28,6 +28,7 @@ from __future__ import unicode_literals
 import argparse
 import itertools
 import operator
+import sys
 from collections import namedtuple
 
 import requests
@@ -103,6 +104,14 @@ def get_default(versions):
             return version
 
 
+def get_versions(tags):
+    for tag in tags:
+        try:
+            yield Version.parse(tag['name'])
+        except ValueError:
+            print("Skipping invalid tag: {name}".format(**tag), file=sys.stderr)
+
+
 def get_github_releases(project):
     """Query the Github API for a list of version tags and return them in
     sorted order.
@@ -112,7 +121,7 @@ def get_github_releases(project):
     url = '{}/{}/tags'.format(GITHUB_API, project)
     response = requests.get(url)
     response.raise_for_status()
-    versions = [Version.parse(tag['name']) for tag in response.json()]
+    versions = get_versions(response.json())
     return sorted(versions, reverse=True, key=operator.attrgetter('order'))