toaster: support custom Layer Index URL and fixture override
cover toaster: support custom Layer Index URL and fixture override
From: David Reyna <[email protected]>
These two simple changes help enable users and commercial partners to attach their custom layer index servers to Toaster, plus more control over the custom content for Toaster projects.
The following changes since commit 04dc76713b57f28457742dd863caa663591d4866:
devtool/copy_buildsystem: adds meta-skeleton layer in the eSDK installation. (2017-08-19 22:15:39 +0100)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib dreyna/submit/dreyna/toaster/custom_layer_index_11957
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=dreyna/submit/dreyna/toaster/custom_layer_index_11957
David Reyna (1):
toaster: support custom Layer Index URL and fixture override
lib/toaster/bldcontrol/management/commands/checksettings.py | 5 ++++- lib/toaster/orm/management/commands/lsupdates.py | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-)
Signature · 1 line
1.9.1
PATCH 1/1 toaster: support custom Layer Index URL and fixture override
From: David Reyna <[email protected]>
Toaster needs to allow the custom fixture file to specific an alternate Layer Index URL for users that host their own Layer Index Server via the 'CUSTOM_LAYERINDEX_SERVER' in 'custom.xml'.
Toaster also needs to allow the ability to completely override the default fixture files, otherwise that content can leak into the custom environment (by default the custom fixture is an overlay that cannot remove existing values from the default fixture) via the 'CUSTOM_XML_ONLY' value in 'setting.xml'.
[YOCTO #11938]
--- lib/toaster/bldcontrol/management/commands/checksettings.py | 5 ++++- lib/toaster/orm/management/commands/lsupdates.py | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-)
lib/toaster/bldcontrol/management/commands/checksettings.py +4 -1
@@ -75,7 +75,10 @@ class Command(BaseCommand): call_command("loaddata", "settings") template_conf = os.environ.get("TEMPLATECONF", "") - if "poky" in template_conf: + if ToasterSetting.objects.filter(name='CUSTOM_XML_ONLY').count() > 0: + # only use the custom settings + pass + elif "poky" in template_conf: print("Loading poky configuration") call_command("loaddata", "poky") else:
lib/toaster/orm/management/commands/lsupdates.py +5 -1
@@ -81,6 +81,8 @@ class Command(BaseCommand): os.system('setterm -cursor off') self.apiurl = DEFAULT_LAYERINDEX_SERVER + if ToasterSetting.objects.filter(name='CUSTOM_LAYERINDEX_SERVER').count() == 1: + self.apiurl = ToasterSetting.objects.get(name = 'CUSTOM_LAYERINDEX_SERVER').value assert self.apiurl is not None try:
@@ -92,7 +94,9 @@ class Command(BaseCommand): proxy_settings = os.environ.get("http_proxy", None) - def _get_json_response(apiurl=DEFAULT_LAYERINDEX_SERVER): + def _get_json_response(apiurl=None): + if None == apiurl: + apiurl=self.apiurl http_progress = Spinner() http_progress.start()
Signature · 1 line
1.9.1