Code review comment for ~d0ugal/maas-images:release-notifications

Revision history for this message
Lee Trager (ltrager) wrote :

This looks better but it doesn't work with lp:maas-images due versions missing.

$ ./maas-images/bin/meph2-util merge release-notifications/ candidate/
Traceback (most recent call last):
  File "./maas-images/bin/meph2-util", line 25, in <module>
    call_entry_point("meph2.commands.meph2_util.main")
  File "./maas-images/bin/meph2-util", line 22, in call_entry_point
    sys.exit(getattr(sys.modules[istr], ent)())
  File "/home/lee/maas-images/meph2/commands/meph2_util.py", line 510, in main
    return args.action(args)
  File "/home/lee/maas-images/meph2/commands/meph2_util.py", line 254, in main_merge
    for (version, version_info) in product_info['versions'].items():
KeyError: 'versions'

The important part is making sure the stream works with MAAS unmodified, you can modify lp:maas-images. However it may be difficult to work around versions being missing due to our process.

1. A new product stream is created, it is merged into the candidate stream on images.maas.io. This happens once.
  $ meph2-util merge release-notifications/ candidate/
2. CPC has a job which generates new versions by running MAAS images
  $ meph2-import release-notifications.yaml release-notifications
3. CPC inserts new *versions* into the candidate stream. It does not change any metadata.
  $ meph2-util insert release-notifications/ candidate/
4. CPC has a job which will allow us to promote *versions* from candidate to stable
  $ meph2-util patch cpc-patch.yaml candidate stable

It may be easier to store the content in a separate file and use versions.

review: Needs Fixing

« Back to merge proposal