Skip to contentSkip to conversation

command: Add getSetVariable command

PATCH New Richard Purdie 1 participant 1 message Oct 11, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 command: Add getSetVariable command

There are some use cases where we want to read a variable but also set the variable to the value read, effectively locking in any expansion of it. This adds such a command.

---
 bitbake/lib/bb/command.py | 10 ++++++++++
 1 file changed, 10 insertions(+)
bitbake/lib/bb/command.py +10 -0
index 31aa071..7c980a2 100644
@@ -190,6 +190,16 @@ class CommandsSync:
         value = str(params[1])
         command.cooker.data.setVar(varname, value)
 
+    def getSetVariable(self, command, params):
+        """
+        Read the value of a variable from data and set it into the datastore
+        which effectively expands and locks the value.
+        """
+        varname = params[0]
+        result = self.getVariable(command, params)
+        command.cooker.data.setVar(varname, result)
+        return result
+
     def setConfig(self, command, params):
         """
         Set the value of variable in configuration