[OE-core] [PATCH 1/1] Image Creator: Make bitbake servertype configurable

Joshua Lock josh at linux.intel.com
Wed Apr 27 18:20:30 UTC 2011


On Wed, 2011-04-27 at 15:53 +0800, Liping Ke wrote:
> From: Liping Ke <liping.ke at intel.com>
> 
> add -t options for configuring bitbake server (xmlrpc, none)
> 
> Signed-off-by: Liping Ke <liping.ke at intel.com>
> ---
>  bitbake/bin/bitbake |   18 +++++++++++++-----
>  1 files changed, 13 insertions(+), 5 deletions(-)
> 
> diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake
> index 6d05289..9e8d9a1 100755
> --- a/bitbake/bin/bitbake
> +++ b/bitbake/bin/bitbake
> @@ -39,8 +39,6 @@ import bb.msg
>  from bb import cooker
>  from bb import ui
>  from bb import server
> -from bb.server import none
> -#from bb.server import xmlrpc
>  
>  __version__ = "1.11.0"
>  logger = logging.getLogger("BitBake")
> @@ -71,7 +69,7 @@ def get_ui(config):
>          return getattr(module, interface).main
>      except AttributeError:
>          sys.exit("FATAL: Invalid user interface '%s' specified.\n"
> -                 "Valid interfaces: depexp, goggle, ncurses, knotty [default]." % interface)
> +                 "Valid interfaces: depexp, goggle, ncurses, hob, knotty [default]." % interface)
>  
> 
>  # Display bitbake/OE warnings via the BitBake.Warnings logger, ignoring others"""
> @@ -161,6 +159,9 @@ Default BBFILES are the .bb files in the current directory.""")
>      parser.add_option("-u", "--ui", help = "userinterface to use",
>                 action = "store", dest = "ui")
>  
> +    parser.add_option("-t", "--servertype", help = "choose which server to user, none or xmlrpc",
> +               action = "store", dest = "servertype")
> +
>      parser.add_option("", "--revisions-changed", help = "Set the exit code depending on whether upstream floating revisions have changed or not",
>                 action = "store_true", dest = "revisions_changed", default = False)
>  
> @@ -175,8 +176,15 @@ Default BBFILES are the .bb files in the current directory.""")
>      loghandler = event.LogHandler()
>      logger.addHandler(loghandler)
>  
> -    #server = bb.server.xmlrpc
> -    server = bb.server.none
> +    # Server type could be xmlrpc or none currently, if nothing is specified,
> +    # default server would be none
> +    if configuration.servertype:
> +        server_type = configuration.servertype
> +    else:
> +        server_type = 'none'
> +
> +    module = __import__("bb.server", fromlist = [server_type])
> +    server = getattr(module, server_type)

What if the module import fails? You'll note that the similar code to
allow selection of the UI with a switch is wrapped in a try/except.
Can we do the same here?

Thanks,
Joshua
-- 
Joshua Lock
        Yocto Build System Monkey
        Intel Open Source Technology Centre





More information about the Openembedded-core mailing list