Files
chart/library/ix-dev/community/tdarr/upgrade_strategy
Ryan S 9bfb735a1f tdarr: fix versions containing 5 (#2757)
Not knowing python I left in the `.strip(STRIP_TEXT)` thinking it operated like replace while in fact it's more like a regex removal.  Tdarr has not used the _ffmpeg5 suffix in about a year so just removing it from the upgrade_strategy to fix.
2024-08-27 13:43:15 +03:00

38 lines
882 B
Python
Executable File

#!/usr/bin/python3
import json
import re
import sys
from catalog_update.upgrade_strategy import semantic_versioning
# Drop _ffmpeg5 after Cobia is released for a while
RE_STABLE_VERSION = re.compile(r'[0-9]+\.[0-9]+\.[0-9]+(\.[0-9]+)?')
RE_CLEAN_VERSION = re.compile(r'0+([1-9])')
def newer_mapping(image_tags):
key = list(image_tags.keys())[0]
tags = {
RE_CLEAN_VERSION.sub('\\1', t): t
for t in image_tags[key]
if RE_STABLE_VERSION.fullmatch(t)
}
version = semantic_versioning(list(tags))
if not version:
return {}
return {
'tags': {key: tags[version]},
'app_version': version,
}
if __name__ == '__main__':
try:
versions_json = json.loads(sys.stdin.read())
except ValueError:
raise ValueError('Invalid json specified')
print(json.dumps(newer_mapping(versions_json)))