** Description changed:

- curtin can run in python3 or python2.  its only python dependency is
- yaml.
+ === Begin SRU Template ===
+ [Impact] 
+ In its current state, maas is unable to install vivid/14.10 using curtin.
+ This is obviously quite serious as users using LTS server can then not
+ install the Ubuntu development release for testing.
+ 
+ The failure is fallout of there not being 'python2-yaml' in a maas ephemeral
+ image (which is used for curtin install environment).  The fix is that
+ curtin is now able to run with either python2 or python3 and finds the
+ appropriate/available python on the system.
+ 
+ [Test Case]
+ Generally, the test case flow is:
+  * Install MAAS
+  * import boot resources using the 'daily' stream.
+  * attempt to install a node with vivid
+  * see install fail, with message about unable to find 'curtin.commands.main'
+ 
+ I've documented and walked through installation of maas and use of
+ libvirt and qemu to test in
+  maas-1.7 
http://bazaar.launchpad.net/~smoser/maas/maas-pkg-test/view/head:/maas-trusty-1.7.txt
+  maas-1.5 
http://bazaar.launchpad.net/~smoser/maas/maas-pkg-test/view/head:/maas-trusty-1.5.txt
+ 
+ 
+ [Regression Potential] 
+ The potential failure path is in one of 2 paths:
+ a.) curtin being broken on python3
+ b.) curtin's launcher selecting the wrong python
+ 
+ Curtin basically has 3 dependencies:
+  python      (or python3)
+  python-yaml (or python3-yaml)
+  oauth or oauthlib
+ 
+ These are satisfied in the image by:
+   precise: python2 (which has no python3 executable)
+   trusty:  python2 (which has python3 executable but no python3-yaml)
+   vivid:   python3 (which has python2 executable but no python-yaml)
+ 
+ Oauthlib or oauth is satisfied by the same python (riding on dependencies of
+ cloud-init).  curtin does not currently check for that library, but
+ missing library does not cause failure, just failure to report status
+ back to maas.  That said, in all supported use cases it will be fine.
+ 
+ === End SRU Template ===
+ 
+ 
+ curtin can run in python3 or python2.  its only python dependency is yaml.
  
  maas-images of 12.04 do not have python3.
  maas-images of 15.04 do not have python-yaml (python2) future images might 
not have any python2.
  
  right now maas invokes curtin thorugh cloud-init user-data. curtin packs
  itself into a self extracting executable, is transferred via user-data
  and invoked inside the image.  Sending it through the user-data means
  that the maas server being updated is all that is necessary to deliver
  new curtin (rather than SRU to each release).
  
  Right now, in vivid that means that curtin tries to run with python2 and
  thus fails to import yaml.
  
  Basically curtin can't really depend on anything that isn't in ubuntu
  maas image (cloud-iamge derived).  And, it doesn't get installed via
  apt.
  
  A couple solutions here:
  a.) a mechanism in curtin to run with python3 or python2, and just go on as 
is.
      on new cloud-images curtin will get the python3-yaml (a dependency of 
cloud-init) and in older versions it would run with python2.  A '$python -m 
curtin.checkdeps' would be run as a way to determine which python to run,
  
  b.) get python-yaml into maas images and use python2.
  
  c.) allow curtin to 'apt-get install' its deps.
     note, this has the unfortunate dependency on doing that, and then having 
more io and network traffic and such during an install if the image doesn't 
contain python-yaml or other things.
  
  Note, though, that curtin (or maas) changes that are made in order to
  support use of vivid would then need to be SRU'd, where as changes to
  the vivid image itself would not.
  
- 
  Related bugs:
-  * Bug 1434679: maas 1.5 does not know about vivid
+  * Bug 1434679: maas 1.5 does not know about vivid

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1427950

Title:
  find or install suitable dependencies / maas + curtin with vivid image
  fails to import yaml

To manage notifications about this bug go to:
https://bugs.launchpad.net/curtin/+bug/1427950/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to