--- a/src/pyams_utils/site.py Thu Mar 08 09:13:06 2018 +0100
+++ b/src/pyams_utils/site.py Sat Mar 10 01:58:45 2018 +0100
@@ -131,11 +131,14 @@
generations = annotations.get(SITE_GENERATIONS_KEY)
if generations is None:
generations = annotations[SITE_GENERATIONS_KEY] = PersistentDict()
- for name, utility in get_utilities_for(ISiteGenerations):
+ for name, utility in sorted(get_utilities_for(ISiteGenerations),
+ key=lambda x: x[1].order):
if not name:
name = '.'.join((utility.__module__, utility.__class__.__name__))
current = generations.get(name)
- if (not current) or (current < utility.generation):
+ if not current:
+ print("Upgrading {0} to generation {1}...".format(name, utility.generation))
+ elif current < utility.generation:
print("Upgrading {0} from generation {1} to {2}...".format(name, current, utility.generation))
utility.evolve(application, current)
generations[name] = utility.generation