upgrade_strategy 676 B

123456789101112131415161718192021222324252627
  1. #!/usr/bin/python3
  2. import json
  3. import sys
  4. from catalog_update.upgrade_strategy import semantic_versioning
  5. def newer_mapping(image_tags):
  6. key = list(image_tags.keys())[0]
  7. # 21.1 is greater then 21.1.0 so we reverse sort bfeore doing semantic versioning
  8. version = semantic_versioning(sorted(image_tags[key], reverse=True))
  9. if not version:
  10. return {}
  11. return {
  12. 'tags': {key: version},
  13. 'app_version': version,
  14. }
  15. if __name__ == '__main__':
  16. try:
  17. versions_json = json.loads(sys.stdin.read())
  18. except ValueError:
  19. raise ValueError('Invalid json specified')
  20. print(json.dumps(newer_mapping(versions_json)))