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.
This looks better but it doesn't work with lp:maas-images due versions missing.
$ ./maas- images/ bin/meph2- util merge release- notifications/ candidate/ images/ bin/meph2- util", line 25, in <module> entry_point( "meph2. commands. meph2_util. main") images/ bin/meph2- util", line 22, in call_entry_point exit(getattr( sys.modules[ istr], ent)()) lee/maas- images/ meph2/commands/ meph2_util. py", line 510, in main lee/maas- images/ meph2/commands/ meph2_util. py", line 254, in main_merge info['versions' ].items( ):
Traceback (most recent call last):
File "./maas-
call_
File "./maas-
sys.
File "/home/
return args.action(args)
File "/home/
for (version, version_info) in product_
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. notifications/ candidate/ notifications. yaml release- notifications notifications/ candidate/
$ meph2-util merge release-
2. CPC has a job which generates new versions by running MAAS images
$ meph2-import release-
3. CPC inserts new *versions* into the candidate stream. It does not change any metadata.
$ meph2-util insert release-
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.