Bug 11660

Summary: build fail on change to command.py' updateConfig()
Product: [Build System, Metadata & Runtime] Toaster Reporter: David Reyna <david.reyna>
Component: toasterAssignee: David Reyna <david.reyna>
Status: RESOLVED NOTABUG QA Contact: Libertad <libertad.gonzalez.de.la.cruz>
Severity: normal    
Priority: Medium+ CC: jessica.zhang, stanciux.mihail
Version: 2.3   
Target Milestone: 2.4 M2   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description David Reyna 2017-06-14 02:23:16 UTC
@@ -310,7 +261,8 @@
     def updateConfig(self, command, params):
         options = params[0]
         environment = params[1]
-        command.cooker.updateConfigOpts(options, environment)
+        cmdline = params[2]
+        command.cooker.updateConfigOpts(options, environment, cmdline)
     updateConfig.needconfig = False
Comment 1 David Reyna 2017-06-14 02:30:05 UTC
The builds against master are failing because of a recent API change in the function 'updateConfig' in the bitbake script "command.py"
Comment 2 David Reyna 2017-06-15 05:12:07 UTC
It turns out that the problem was that the version of 'cookerdata.py' in the local installation got out of sync (API change) with the latest version of 'cookerdata.py' that got pulled down by Toaster into "_toaster_clones". When the event handling got routed it jumped between the versions.

This is a known vulnerability when working with projects that derive from Master. We can consider version checks in the future to warn the Toaster manager of such changes. 


06:01:10 O: Traceback (most recent call last):
06:01:10 O:   File "/home/usersetup/poky/bitbake/bin/bitbake", line 48, in <module>
06:01:10 O:     cookerdata.CookerConfiguration()))
06:01:10 O:   File "/home/usersetup/poky/bitbake/lib/bb/main.py", line 452, in bitbake_main
06:01:10 O:     configParams)
06:01:10 O:   File "/home/usersetup/poky/bitbake/lib/bb/ui/toasterui.py", line 176, in main
06:01:10 O:     params.updateToServer(server, os.environ.copy())
06:01:10 O:   File "/home/usersetup/poky/bitbake/lib/bb/cookerdata.py", line 84, in updateToServer
06:01:10 O:     raise Exception("Unable to update the server configuration with local parameters: %s" % error)
06:01:10 O: Exception: Unable to update the server configuration with local parameters: Traceback (most recent call last):
06:01:10 O:   File "/workdir/_toaster_clones/_git___git.yoctoproject.org_poky_master/bitbake/lib/bb/command.py", line 81, in runCommand
06:01:10 O:     result = command_method(self, commandline)
06:01:10 O:   File "/workdir/_toaster_clones/_git___git.yoctoproject.org_poky_master/bitbake/lib/bb/command.py", line 264, in updateConfig
06:01:10 O:     cmdline = params[2]
06:01:10 O: IndexError: list index out of range