[Toaster] [review-request][PATCH] toaster: Fix import of custom layers from toasterjson.conf

sujith h sujith.h at gmail.com
Thu Sep 10 08:22:23 PDT 2015


Hi Brian,

I am testing on your poky-contrib branch ( i.e,
bavery/submit/sujith/20150827_custom_layer_import) with core-image-sato and
qtbase added in IMAGE_INSTALL_append.The build is still in progress some
39% task completed. So I would be able to deliver the configuration for the
same build tomorrow only :( Sorry for the inconvenience.

Thanks,
Sujith H

On Wed, Sep 9, 2015 at 9:16 PM, sujith h <sujith.h at gmail.com> wrote:

> Hi Brian,
>
> I am attaching the tar file which contains the conf folder from the build
> directory and the toasterconf.json file just outside poky folder.
>
> Thanks,
> Sujith H
>
> On Wed, Sep 2, 2015 at 2:26 PM, sujith h <sujith.h at gmail.com> wrote:
>
>> Hi Brian,
>>
>> Was there an instance of bitbake running in your build folder before you
>> triggered the build from toaster?
>>
>> Thanks,
>> Sujith H
>>
>> On Wed, Sep 2, 2015 at 2:12 PM, sujith h <sujith.h at gmail.com> wrote:
>>
>>>
>>>
>>> On Tue, Sep 1, 2015 at 10:39 PM, Brian Avery <avery.brian at gmail.com>
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> I'm on the correct patch afaik.  I put the toasterconf.json into the
>>>> directory above poky and loaded it with:
>>>> poky/bitbake/lib/toaster/manage.py loadconf
>>>> /home/bavery/src/intel/myBugs2/sujith/toasterconf.json
>>>>
>>>
>>> This is not my latest patch which I worked on :) It was with subject:
>>> [PATCH] toaster: Import external layers outside poky from
>>> toasterconf.json
>>>
>>>
>>>> I also used option 0 so that toaster did not attempt to load the
>>>> layers from openembedded.
>>>>
>>>> My branch for this test is:
>>>>
>>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/?h=bavery%2Fsubmit%2Fsujith%2F20150827_custom_layer_import
>>>>
>>>> I ran a build of core-image-sato with qtbase and iw set in
>>>> IMAGE_INSTALL_append for the project.
>>>>
>>>> The results:
>>>> The good-
>>>> I got a core-image-sato as well as the qt5 and iw packages; so the
>>>> build worked.
>>>>
>>>> The not so good -
>>>> 1) My build progress bar did not update.
>>>> 2) my recipe list after the build looks like:
>>>>
>>>> https://www.dropbox.com/s/qs7hulsbmcgg4ik/Screenshot%202015-09-01%2010.02.29.png?dl=0
>>>> 3) in the build directory I set when starting up toaster (where the
>>>> tmp/deploy ends up among other things) the toaster_ui.log file was
>>>> filled with errors (it ended up being 17G by the end of the build).
>>>> I'm attaching the first 120 lines of it so you can see what it looked
>>>> like.
>>>>
>>>> I would like to share my poky and cloned_layers directory and the ui
>>> log file attached:
>>>
>>> ------------
>>> sujith at kdekidd0:~/MEL/test_poky$ pwd
>>> /home/sujith/MEL/test_poky
>>> sujith at kdekidd0:~/MEL/test_poky$ ls -lt
>>> total 16488
>>> -rw-r--r--  1 sujith sujith 16855040 Sep  2 13:46 toaster.sqlite
>>> drwxrwxr-x  3 sujith sujith     4096 Sep  2 13:45 toaster_build_artifacts
>>> drwxr-xr-x  8 sujith sujith     4096 Sep  2 13:43 build
>>> drwxrwxr-x 11 sujith sujith     4096 Sep  2 10:01 poky
>>> -rw-rw-r--  1 sujith sujith     4632 Aug 28 12:21 toasterconf.json
>>> drwxrwxr-x  6 sujith sujith     4096 Aug 28 11:53 venv
>>> sujith at kdekidd0:~/MEL/test_poky$ ls ../cloned_layers/ -l
>>> total 8
>>> drwxrwxr-x 19 sujith sujith 4096 Aug 28 11:51 meta-oe
>>> drwxrwxr-x  8 sujith sujith 4096 Aug 28 12:10 meta-qt5
>>> sujith at kdekidd0:~/MEL/test_poky$
>>> ------------
>>>
>>> Now the step done to load configuration:
>>>
>>> ------------
>>> sujith at kdekidd0:~/MEL/test_poky$ source venv/bin/activate
>>> (venv)sujith at kdekidd0:~/MEL/test_poky$ ./poky/bitbake/bin/toaster
>>> Syncing...
>>> Creating tables ...
>>> Creating table auth_permission
>>> Creating table auth_group_permissions
>>> Creating table auth_group
>>> Creating table auth_user_groups
>>> Creating table auth_user_user_permissions
>>> Creating table auth_user
>>> Creating table django_content_type
>>> Creating table django_session
>>> Creating table django_admin_log
>>> Creating table south_migrationhistory
>>>
>>> You just installed Django's auth system, which means you don't have any
>>> superusers defined.
>>> Would you like to create one now? (yes/no): yes
>>> Username (leave blank to use 'sujith'):
>>> Email address:
>>> Password:
>>> Password (again):
>>> Superuser created successfully.
>>> Installing custom SQL ...
>>> Installing indexes ...
>>> Installed 0 object(s) from 0 fixture(s)
>>>
>>> Synced:
>>>  > django.contrib.auth
>>>  > django.contrib.contenttypes
>>>  > django.contrib.messages
>>>  > django.contrib.sessions
>>>  > django.contrib.admin
>>>  > django.contrib.staticfiles
>>>  > django.contrib.humanize
>>>  > south
>>>
>>> Not synced (use migrations):
>>>  - bldcontrol
>>>  - orm
>>> (use ./manage.py migrate to migrate these)
>>> Running migrations for orm:
>>>  - Migrating forwards to 0024_auto__add_field_recipe_is_image.
>>>  > orm:0001_initial
>>>  > orm:0002_auto__add_field_build_timespent
>>>  > orm:0003_timespent
>>>  - Migration 'orm:0003_timespent' is marked for no-dry-run.
>>>  > orm:0004_auto__add_field_package_installed_name
>>>  >
>>> orm:0005_auto__add_target_image_file__add_target_file__add_field_variablehistor
>>>  >
>>> orm:0006_auto__add_field_target_image_size__add_field_target_license_manifest_p
>>>  > orm:0007_auto__add_helptext
>>>  >
>>> orm:0008_auto__chg_field_variablehistory_operation__chg_field_recipe_descriptio
>>>  >
>>> orm:0009_auto__add_projectvariable__add_projectlayer__add_projecttarget__add_pr
>>>  >
>>> orm:0010_auto__add_field_project_branch__add_field_project_short_description__a
>>>  > orm:0011_auto__add_field_projectlayer_dirpath
>>>  >
>>> orm:0012_auto__add_field_projectlayer_optional__add_field_projecttarget_task
>>>  >
>>> orm:0013_auto__add_release__add_layerversiondependency__add_unique_layerversion
>>>  >
>>> orm:0014_auto__chg_field_package_summary__chg_field_layer_summary__chg_field_re
>>>  >
>>> orm:0015_auto__add_field_layer_vcs_web_url__add_field_layer_vcs_web_tree_base_u
>>>  >
>>> orm:0016_auto__add_field_release_helptext__chg_field_release_branch__add_index_
>>>  >
>>> orm:0017_auto__del_toastersettingdefaultlayer__add_releaselayersourcepriority__
>>>  > orm:0018_auto__add_field_layer_version_project
>>>  > orm:0019_auto__add_buildartifact
>>>  >
>>> orm:0020_auto__add_field_layer_version_local_path__add_field_recipe_pathflags__
>>>  >
>>> orm:0021_auto__chg_field_build_project__chg_field_project_bitbake_version__chg_
>>>  >
>>> orm:0022_auto__add_field_target_task__add_field_layer_version_local_path__del_f
>>>  >
>>> orm:0023_auto__del_field_build_warnings_no__del_field_build_errors_no__del_fiel
>>>  > orm:0024_auto__add_field_recipe_is_image
>>>  - Loading initial data for orm.
>>> Installed 0 object(s) from 0 fixture(s)
>>> Running migrations for bldcontrol:
>>>  - Migrating forwards to 0008_brarchive.
>>>  > bldcontrol:0001_initial
>>>  >
>>> bldcontrol:0002_auto__add_field_buildenvironment_sourcedir__add_field_buildenvironment
>>>  > bldcontrol:0003_auto__add_field_brlayer_dirpath
>>>  > bldcontrol:0004_loadinitialdata
>>>  - Migration 'bldcontrol:0004_loadinitialdata' is marked for no-dry-run.
>>>  > bldcontrol:0005_auto__add_brerror
>>>  > bldcontrol:0006_auto__add_brbitbake
>>>  >
>>> bldcontrol:0007_auto__add_field_buildrequest_environment__chg_field_buildrequest_build
>>>  > bldcontrol:0008_brarchive
>>>  - Migration 'bldcontrol:0008_brarchive' is marked for no-dry-run.
>>>  - Loading initial data for bldcontrol.
>>> Installed 0 object(s) from 0 fixture(s)
>>> Toaster needs to know in which directory it can download build log files
>>> and other artifacts.
>>>  Toaster suggests "/home/sujith/MEL/test_poky/toaster_build_artifacts/".
>>>  Press Enter to select
>>> "/home/sujith/MEL/test_poky/toaster_build_artifacts/" or type the full path
>>> to a different directory:
>>> Verifying the Build Environment. If the local Build Environment is not
>>> properly configured, you will be asked to configure it.
>>>
>>>  -- Validation: The checkout directory must be set.
>>> Toaster needs to know in which directory it should check out the layers
>>> that will be needed for your builds.
>>>  Toaster suggests "/home/sujith". If you select this directory, a layer
>>> like "meta-intel" will end up in "/home/sujith/meta-intel".
>>>  Press Enter to select "/home/sujith" or type the full path to a
>>> different directory (must be a parent of current checkout directory):
>>> Verifying the Build Environment. If the local Build Environment is not
>>> properly configured, you will be asked to configure it.
>>>
>>>  -- Validation: The build directory must be set.
>>> Toaster needs to know where is your build directory.
>>>  The build directory is where all the artifacts created by your builds
>>> will be stored. Type the full path to the directory (for example: "
>>> /home/sujith/build")/home/sujith/MEL/test_poky/build
>>> Build configuration saved
>>> Verifying the Build Environment. If the local Build Environment is not
>>> properly configured, you will be asked to configure it.
>>>
>>> Toaster can use a SINGLE predefined configuration file to set up default
>>> project settings and layer information sources.
>>>
>>>  Toaster will list now the configuration files that it found. Select the
>>> number to use the desired configuration file.
>>>   [1] -
>>> /home/sujith/MEL/toaster_work/poky/meta-yocto/conf/toasterconf.json
>>>   [2] - /home/sujith/MEL/cedar/poky/meta-yocto/conf/toasterconf.json
>>>   [3] -
>>> /home/sujith/MEL/toaster_MEL_final/poky/meta-yocto/conf/toasterconf.json
>>>   [4] - /home/sujith/MEL/test_poky/poky/meta-yocto/conf/toasterconf.json
>>>   [5] -
>>> /home/sujith/MEL/upstream_poky_work/poky-contrib/meta-yocto/conf/toasterconf.json
>>>   [6] - /home/sujith/gitroot/poky/meta-yocto/conf/toasterconf.json
>>>
>>>   [0] - Exit without importing any file
>>>
>>>  Enter your option: 0
>>> Starting webserver...
>>> Webserver address:  http://0.0.0.0:8000/
>>> Starting browser...
>>> Toaster is now running. You can stop it with Ctrl-C
>>> ^Z
>>> [1]+  Stopped                 ./poky/bitbake/bin/toaster
>>> (venv)sujith at kdekidd0:~/MEL/test_poky$
>>> ./poky/bitbake/lib/toaster/manage.py loadconf toasterconf.json
>>> (venv)sujith at kdekidd0:~/MEL/test_poky$ fg
>>> ./poky/bitbake/bin/toaster
>>> 2015-09-02 10:11:54,415 DEBUG localhostbecontroller, our git repos are
>>> {(u'', u'HEAD'): [('bitbake', u'bitbake')],
>>>  (u'git://git.yoctoproject.org/poky', u'HEAD'): [(u'openembedded-core',
>>>                                                   u'meta'),
>>>                                                  (u'meta-yocto',
>>>                                                   u'meta-yocto'),
>>>                                                  (u'meta-yocto-bsp',
>>>                                                   u'meta-yocto-bsp')],
>>>  (u'git://github.com/meta-qt5/meta-qt5.git', u'HEAD'): [(u'meta-qt5',
>>>                                                          u'meta-qt5')],
>>>  (u'git://github.com/openembedded/meta-oe.git', u'HEAD'):
>>> [(u'meta-python',
>>>
>>> u'meta-python'),
>>>
>>> (u'meta-multimedia',
>>>
>>> u'meta-multimedia'),
>>>
>>> (u'meta-filesystems',
>>>
>>> u'meta-filesystems'),
>>>
>>> (u'meta-networking',
>>>
>>> u'meta-networking'),
>>>                                                            (u'meta-oe',
>>>                                                             u'meta-oe')]}
>>> 2015-09-02 10:11:54,416 DEBUG lbc_shellcmmd: (/home/sujith/Documents)
>>> git remote -v
>>> 2015-09-02 10:11:54,419 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,419 DEBUG lbc_shellcmmd: (/home/sujith/.thumbnails)
>>> git remote -v
>>> 2015-09-02 10:11:54,422 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,422 DEBUG lbc_shellcmmd: (/home/sujith/.emacs.d) git
>>> remote -v
>>> 2015-09-02 10:11:54,425 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,425 DEBUG lbc_shellcmmd: (/home/sujith/Templates)
>>> git remote -v
>>> 2015-09-02 10:11:54,429 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,429 DEBUG lbc_shellcmmd: (/home/sujith/.pylint.d)
>>> git remote -v
>>> 2015-09-02 10:11:54,432 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,432 DEBUG lbc_shellcmmd: (/home/sujith/.cscache) git
>>> remote -v
>>> 2015-09-02 10:11:54,439 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,439 DEBUG lbc_shellcmmd: (/home/sujith/.config) git
>>> remote -v
>>> 2015-09-02 10:11:54,443 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,443 DEBUG lbc_shellcmmd: (/home/sujith/bin) git
>>> remote -v
>>> 2015-09-02 10:11:54,448 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,448 DEBUG lbc_shellcmmd: (/home/sujith/MEL) git
>>> remote -v
>>> 2015-09-02 10:11:54,452 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,452 DEBUG lbc_shellcmmd: (/home/sujith/Pictures) git
>>> remote -v
>>> 2015-09-02 10:11:54,455 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,455 DEBUG lbc_shellcmmd: (/home/sujith/.pip) git
>>> remote -v
>>> 2015-09-02 10:11:54,459 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,459 DEBUG lbc_shellcmmd: (/home/sujith/Music) git
>>> remote -v
>>> 2015-09-02 10:11:54,463 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,463 DEBUG lbc_shellcmmd: (/home/sujith/debian) git
>>> remote -v
>>> 2015-09-02 10:11:54,466 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,466 DEBUG lbc_shellcmmd: (/home/sujith/.distlib) git
>>> remote -v
>>> 2015-09-02 10:11:54,470 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,470 DEBUG lbc_shellcmmd: (/home/sujith/.mozilla) git
>>> remote -v
>>> 2015-09-02 10:11:54,473 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,474 DEBUG lbc_shellcmmd: (/home/sujith/Django_study)
>>> git remote -v
>>> 2015-09-02 10:11:54,478 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,478 DEBUG lbc_shellcmmd: (/home/sujith/.java) git
>>> remote -v
>>> 2015-09-02 10:11:54,481 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,482 DEBUG lbc_shellcmmd:
>>> (/home/sujith/patches_to_push) git remote -v
>>> 2015-09-02 10:11:54,485 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,485 DEBUG lbc_shellcmmd: (/home/sujith/.ssh) git
>>> remote -v
>>> 2015-09-02 10:11:54,488 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,488 DEBUG lbc_shellcmmd: (/home/sujith/Downloads)
>>> git remote -v
>>> 2015-09-02 10:11:54,492 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,492 DEBUG lbc_shellcmmd: (/home/sujith/.pki) git
>>> remote -v
>>> 2015-09-02 10:11:54,495 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,496 DEBUG lbc_shellcmmd: (/home/sujith/Public) git
>>> remote -v
>>> 2015-09-02 10:11:54,499 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,499 DEBUG lbc_shellcmmd: (/home/sujith/.repoconfig)
>>> git remote -v
>>> 2015-09-02 10:11:54,502 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,502 DEBUG lbc_shellcmmd: (/home/sujith/.pc) git
>>> remote -v
>>> 2015-09-02 10:11:54,505 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,505 DEBUG lbc_shellcmmd: (/home/sujith/wsgiref) git
>>> remote -v
>>> 2015-09-02 10:11:54,510 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,510 DEBUG lbc_shellcmmd: (/home/sujith/.mentor) git
>>> remote -v
>>> 2015-09-02 10:11:54,513 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,515 DEBUG lbc_shellcmmd:
>>> (/home/sujith/MENTOR_TOOLCHAIN) git remote -v
>>> 2015-09-02 10:11:54,517 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,518 DEBUG lbc_shellcmmd: (/home/sujith/Desktop) git
>>> remote -v
>>> 2015-09-02 10:11:54,521 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,521 DEBUG lbc_shellcmmd: (/home/sujith/.local) git
>>> remote -v
>>> 2015-09-02 10:11:54,525 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,525 DEBUG lbc_shellcmmd: (/home/sujith/.dbus) git
>>> remote -v
>>> 2015-09-02 10:11:54,529 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,529 DEBUG lbc_shellcmmd: (/home/sujith/workspace)
>>> git remote -v
>>> 2015-09-02 10:11:54,532 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,533 DEBUG lbc_shellcmmd:
>>> (/home/sujith/.gstreamer-0.10) git remote -v
>>> 2015-09-02 10:11:54,536 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,536 DEBUG lbc_shellcmmd: (/home/sujith/.gnome) git
>>> remote -v
>>> 2015-09-02 10:11:54,540 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,540 DEBUG lbc_shellcmmd: (/home/sujith/.cache) git
>>> remote -v
>>> 2015-09-02 10:11:54,544 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,544 DEBUG lbc_shellcmmd:
>>> (/home/sujith/codebench-linux-install-2014.11-96-arm) git remote -v
>>> 2015-09-02 10:11:54,547 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,547 DEBUG lbc_shellcmmd: (/home/sujith/Videos) git
>>> remote -v
>>> 2015-09-02 10:11:54,550 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,550 DEBUG lbc_shellcmmd: (/home/sujith/.gconf) git
>>> remote -v
>>> 2015-09-02 10:11:54,554 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,555 DEBUG lbc_shellcmmd: (/home/sujith/.subversion)
>>> git remote -v
>>> 2015-09-02 10:11:54,558 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,558 DEBUG lbc_shellcmmd: (/home/sujith/.thunderbird)
>>> git remote -v
>>> 2015-09-02 10:11:54,561 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,561 DEBUG lbc_shellcmmd: (/home/sujith/gitroot) git
>>> remote -v
>>> 2015-09-02 10:11:54,564 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,564 DEBUG lbc_shellcmmd: (/home/sujith/.oe) git
>>> remote -v
>>> 2015-09-02 10:11:54,568 WARNING localhostbecontroller: shellcmd error
>>> command: git remote -v
>>> fatal: Not a git repository (or any of the parent directories): .git
>>>
>>> 2015-09-02 10:11:54,570 DEBUG localhostbecontroller: current layer list
>>> [u'/home/sujith/MEL/test_poky/poky/meta',
>>>  u'/home/sujith/MEL/test_poky/poky/meta-yocto',
>>>  u'/home/sujith/MEL/test_poky/poky/meta-yocto-bsp',
>>>  u'/home/sujith/MEL/cloned_layers/meta-oe/meta-python',
>>>  u'/home/sujith/MEL/cloned_layers/meta-oe/meta-multimedia',
>>>  u'/home/sujith/MEL/cloned_layers/meta-oe/meta-filesystems',
>>>  u'/home/sujith/MEL/cloned_layers/meta-oe/meta-networking',
>>>  u'/home/sujith/MEL/cloned_layers/meta-oe/meta-oe',
>>>  u'/home/sujith/MEL/cloned_layers/meta-qt5']
>>> 2015-09-02 10:11:54,571 DEBUG lbc_shellcmmd: (/home/sujith) bash -c
>>> "source /home/sujith/MEL/test_poky/poky/oe-init-build-env
>>> /home/sujith/MEL/test_poky/build"
>>> 2015-09-02 10:11:54,684 DEBUG localhostbecontroller: shellcmd success
>>> 2015-09-02 10:11:54,691 DEBUG localhostbecontroller: running the
>>> listener at /home/sujith/MEL/test_poky/poky/bitbake/bin/bitbake
>>> 2015-09-02 10:11:54,691 DEBUG localhostbecontroller: starting builder
>>> bash -c "source /home/sujith/MEL/test_poky/poky/oe-init-build-env
>>> /home/sujith/MEL/test_poky/build 2>&1 >toaster_server.log && bitbake --read
>>> /home/sujith/MEL/test_poky/build/conf/toaster-pre.conf --postread
>>> /home/sujith/MEL/test_poky/build/conf/toaster.conf --server-only -t xmlrpc
>>> -B 0.0.0.0:0 2>&1 >>toaster_server.log "
>>>
>>> 2015-09-02 10:11:54,691 DEBUG lbc_shellcmmd: (/home/sujith) bash -c
>>> "source /home/sujith/MEL/test_poky/poky/oe-init-build-env
>>> /home/sujith/MEL/test_poky/build 2>&1 >toaster_server.log && bitbake --read
>>> /home/sujith/MEL/test_poky/build/conf/toaster-pre.conf --postread
>>> /home/sujith/MEL/test_poky/build/conf/toaster.conf --server-only -t xmlrpc
>>> -B 0.0.0.0:0 2>&1 >>toaster_server.log "
>>> 2015-09-02 10:11:56,198 DEBUG localhostbecontroller: shellcmd success
>>> 2015-09-02 10:11:56,199 DEBUG localhostbecontroller: Found bitbake
>>> server port 33000
>>>
>>> 2015-09-02 10:11:56,200 DEBUG localhostbecontroller: Waiting bitbake
>>> server to start
>>> 2015-09-02 10:11:56,701 DEBUG localhostbecontroller: Waiting bitbake
>>> server to start
>>> 2015-09-02 10:11:57,202 DEBUG localhostbecontroller: Waiting bitbake
>>> server to start
>>> 2015-09-02 10:11:57,704 DEBUG localhostbecontroller: Waiting bitbake
>>> server to start
>>> 2015-09-02 10:11:58,205 DEBUG localhostbecontroller: Started bitbake
>>> server
>>> 2015-09-02 10:11:58,236 DEBUG localhostbecontroller: Build launched,
>>> exiting. Follow build logs at
>>> /home/sujith/MEL/test_poky/build/toaster_ui.log
>>> ------------
>>>
>>> The path to tmp/deploy/image and the content inside the directory:
>>>
>>> ------------
>>> sujith at kdekidd0:~/MEL/test_poky/build$ ls tmp/deploy/images/qemux86/ -lt
>>> total 1244112
>>> lrwxrwxrwx 1 sujith sujith        53 Sep  2 13:43
>>> core-image-sato-qemux86.tar.bz2 ->
>>> core-image-sato-qemux86-20150902044346.rootfs.tar.bz2
>>> lrwxrwxrwx 1 sujith sujith        50 Sep  2 13:43
>>> core-image-sato-qemux86.ext3 ->
>>> core-image-sato-qemux86-20150902044346.rootfs.ext3
>>> lrwxrwxrwx 1 sujith sujith        50 Sep  2 13:43
>>> core-image-sato-qemux86.ext4 ->
>>> core-image-sato-qemux86-20150902044346.rootfs.ext4
>>> lrwxrwxrwx 1 sujith sujith        54 Sep  2 13:43
>>> core-image-sato-qemux86.manifest ->
>>> core-image-sato-qemux86-20150902044346.rootfs.manifest
>>> lrwxrwxrwx 1 sujith sujith        51 Sep  2 13:43
>>> core-image-sato-qemux86.jffs2 ->
>>> core-image-sato-qemux86-20150902044346.rootfs.jffs2
>>> -rw-r--r-- 1 sujith sujith 196083712 Sep  2 13:43
>>> core-image-sato-qemux86-20150902044346.rootfs.jffs2
>>> -rw-r--r-- 1 sujith sujith 535930880 Sep  2 13:42
>>> core-image-sato-qemux86-20150902044346.rootfs.ext4
>>> -rw-r--r-- 1 sujith sujith 535930880 Sep  2 13:42
>>> core-image-sato-qemux86-20150902044346.rootfs.ext3
>>> -rw-r--r-- 1 sujith sujith 154285168 Sep  2 13:42
>>> core-image-sato-qemux86-20150902044346.rootfs.tar.bz2
>>> -rw-r--r-- 1 sujith sujith     21112 Sep  2 13:41
>>> core-image-sato-qemux86-20150902044346.rootfs.manifest
>>> -rw-r--r-- 2 sujith sujith       294 Sep  2 13:40
>>> README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt
>>> lrwxrwxrwx 1 sujith sujith        71 Sep  2 12:53 bzImage ->
>>> bzImage--4.1.6+git0+429f9e2ff0_59b8c4f5e8-r0-qemux86-20150902044346.bin
>>> lrwxrwxrwx 1 sujith sujith        71 Sep  2 12:53 bzImage-qemux86.bin ->
>>> bzImage--4.1.6+git0+429f9e2ff0_59b8c4f5e8-r0-qemux86-20150902044346.bin
>>> lrwxrwxrwx 1 sujith sujith        71 Sep  2 12:53 modules-qemux86.tgz ->
>>> modules--4.1.6+git0+429f9e2ff0_59b8c4f5e8-r0-qemux86-20150902044346.tgz
>>> -rw-rw-r-- 2 sujith sujith  83308568 Sep  2 12:53
>>> modules--4.1.6+git0+429f9e2ff0_59b8c4f5e8-r0-qemux86-20150902044346.tgz
>>> -rw-r--r-- 2 sujith sujith   6957488 Sep  2 12:53
>>> bzImage--4.1.6+git0+429f9e2ff0_59b8c4f5e8-r0-qemux86-20150902044346.bin
>>> sujith at kdekidd0:~/MEL/test_poky/build$
>>> ------------
>>>
>>> The screenshot of image built successfully:
>>> http://i.imgur.com/V3qtXFh.png
>>>
>>>> ---
>>>> So, you may want to look at/try my poky-contrib branch and look
>>>> closely at my toasterconf.json file to see if you can tell why you do
>>>> not see these issues.
>>>>
>>>
>>>  The toaster-pre.conf of mine looks as:
>>> sujith at kdekidd0:~/MEL/test_poky/build/conf$ cat toaster-pre.conf
>>> IMAGE_INSTALL_append=" qtbase iw"
>>> PACKAGE_CLASSES="package_ipk"
>>> MACHINE="qemux86"
>>> SDKMACHINE="x86_64"
>>> DISTRO="poky"
>>> IMAGE_FSTYPES="ext3 jffs2 tar.bz2"
>>> TOASTER_BRBE="1:1"
>>> sujith at kdekidd0:~/MEL/test_poky/build/conf$
>>>
>>> Somehow I am not able to figure out what is going on wrong at your end :(
>>>
>>>>
>>>> -brian
>>>>
>>>> On Sun, Aug 30, 2015 at 11:47 PM, sujith h <sujith.h at gmail.com> wrote:
>>>> > Hi Brian,
>>>> >
>>>> > On Sat, Aug 29, 2015 at 1:13 AM, Brian Avery <avery.brian at gmail.com>
>>>> wrote:
>>>> >>
>>>> >> Hi Sujith,
>>>> >>
>>>> >> The new toasterconf does make it easier to test, thanks!  I've
>>>> >> attached mine so you can see what I did in case that caused any of
>>>> the
>>>> >> issues below.
>>>> >> I changed:
>>>> >> 1) directory paths
>>>> >> 2) you had             "branches": ["mel", "yocto", "HEAD"], which i
>>>> >> changed to             "branches": ["HEAD", "master", "fido",
>>>> >> "dizzy"],
>>>> >>
>>>> >>
>>>> >>
>>>> >> So here is my directory layout
>>>> >>
>>>> >> /big/src/intel/myBugs2
>>>> >>   cloned_layers/
>>>> >>     meta-oe/
>>>> >>     meta-qt5/
>>>> >>   sujith/
>>>> >>     poky
>>>> >
>>>> >
>>>> > Here is my directory layout:
>>>> > /home/sujith/MEL/test_poky
>>>> >       poky
>>>> > /home/sujith/MEL/cloned_layers
>>>> >       meta-oe
>>>> >       meta-qt5
>>>> >
>>>> >>
>>>> >>
>>>> >> I put the attached toasterconf.json into the sujith/meta-yocto/conf/
>>>> >> directory (overwriting the default one) and toaster found it on
>>>> >> startup.
>>>> >
>>>> >
>>>> > I have added my configuration into:
>>>> > /home/sujith/MEL/test_poky/toasterconf.json
>>>> >
>>>> > I never tried over writing toasterconf.json file in  meta-yocto/conf
>>>> >
>>>> > I use option [0] while running poky/bitbake/bin/toaster i.e, exit
>>>> without
>>>> > importing any layers. Then I manually try to import it using command:
>>>> > poky/bitbake/lib/toaster/manage.py loadconf toasterconf.json
>>>> >
>>>> >> Question:
>>>> >> Where are you putting your toasterconf.json file? I haven't gone
>>>> >> through the search logic yet but toaster seemed to have trouble
>>>> >> finding it in other directories.
>>>> >>
>>>> >> My directory settings for starting toaster are:
>>>> >> build log -> /home/bavery/toaster_build_artifacts
>>>> >> layer checkout -> /big/src/intel/myBugs2/sujith/
>>>> >> build -> /home/bavery/toaster_build_artifacts
>>>> >>
>>>> >>
>>>> >> I found the following issues:
>>>> >> 1)On startup toaster complained about not being able to load from
>>>> >> openembedded.layers.org and once toaster was up, there were no
>>>> layers
>>>> >> available except the local ones.
>>>> >>
>>>> >> (
>>>> https://www.dropbox.com/s/jdkayha71l8i9fe/Screenshot%202015-08-28%2012.29.06.png?dl=0
>>>> )
>>>> >> 2) I started a build of core-image-sato with MAGE_INSTALL_append =
>>>> >> "qt5 iws"
>>>> >> (
>>>> https://www.dropbox.com/s/m3l6uyxq6ptr5vv/Screenshot%202015-08-28%2012.32.16.png?dl=0
>>>> )
>>>> >> and the build no longer shows progress on the progress bar.  top
>>>> >> running shows that I am well into the build but that is not reflected
>>>> >> in the UI
>>>> >> (
>>>> https://www.dropbox.com/s/x3cl2whp2twt8xm/Screenshot%202015-08-28%2012.32.44.png?dl=0
>>>> )
>>>> >> 3) the toaster_ui.log in the build directory is huge and is filled
>>>> >> with things like :Cannot determine the vcs_reference for layer
>>>> version
>>>> >> {'build_id': 1, '_layer_cache': <Layer: __FIXME__unidentified_layer /
>>>> >> None >, 'layer_id': 204, '_state':
>>>> <django.db.models.base.ModelSt...."
>>>> >>
>>>> >>
>>>> >>
>>>> >> Do you see any of these?
>>>> >
>>>> >
>>>> > Since I haven't tried overwriting toasters default configuration
>>>> file, I
>>>> > couldn't hit with any of these errors. Would you mind to try with my
>>>> way, if
>>>> > you don't mind?
>>>> > Let me know if you face any issue with the procedure I followed.
>>>> >
>>>> >
>>>> > Thanks,
>>>> > Sujith H
>>>> >>
>>>> >>
>>>> >> -b
>>>> >>
>>>> >> On Fri, Aug 28, 2015 at 12:06 AM, sujith h <sujith.h at gmail.com>
>>>> wrote:
>>>> >> >
>>>> >> >
>>>> >> > On Thu, Aug 27, 2015 at 9:56 PM, sujith h <sujith.h at gmail.com>
>>>> wrote:
>>>> >> >>
>>>> >> >>
>>>> >> >>
>>>> >> >> On Thu, Aug 27, 2015 at 9:36 PM, Brian Avery <
>>>> avery.brian at gmail.com>
>>>> >> >> wrote:
>>>> >> >>>
>>>> >> >>> Hi Sujith,
>>>> >> >>>
>>>> >> >>> I'd like to test this out.  Is it possible to get a config file
>>>> that
>>>> >> >>> exercises the new features?
>>>> >> >>
>>>> >> >>
>>>> >> >> I have attached the toaster configuration file which I used for
>>>> >> >> testing.
>>>> >> >> What you can also do is remove meta-mentor,meta-sourcery and
>>>> meta-mx6q
>>>> >> >> layers from the
>>>> >> >> configuration file. And try with the layers we have. That might
>>>> help
>>>> >> >> you
>>>> >> >> in testing. Also you
>>>> >> >> may have to remove some additional settings I have used in the
>>>> >> >> configuration, like Distro as "mel",
>>>> >> >> toolchain path etc
>>>> >> >>
>>>> >> >> Or the simplest testing would be by adding poky and meta-oe
>>>> layer. Then
>>>> >> >> try to build
>>>> >> >> some recipe from meta-oe. That would be the simplest test.
>>>> >> >>
>>>> >> >> Let me know if you need more information or face any issues. I
>>>> would
>>>> >> >> help
>>>> >> >> you with that.
>>>> >> >
>>>> >> >
>>>> >> > Hi Brian,
>>>> >> >
>>>> >> > I have attached a new configuration file which I am testing right
>>>> away.
>>>> >> > The
>>>> >> > build is in progress.
>>>> >> > In the IMAGE_INSTALL_append ( from UI ), I have added qtbase and iw
>>>> >> > packages. The 2 repos I have
>>>> >> > cloned is:
>>>> >> > git clone git://github.com/meta-qt5/meta-qt5.git
>>>> >> > and
>>>> >> > git clone git://github.com/openembedded/meta-oe.git
>>>> >> >
>>>> >> > Accordingly adjust your paths mentioned in the configuration file.
>>>> >> >
>>>> >> > I hope this configuration file should help you proceed with your
>>>> test.
>>>> >> > Let
>>>> >> > me know if you face any issues.
>>>> >> >
>>>> >> > Thanks,
>>>> >> > Sujith H
>>>> >> >>
>>>> >> >>
>>>> >> >> Thanks,
>>>> >> >> Sujith H
>>>> >> >>>
>>>> >> >>>
>>>> >> >>> -b
>>>> >> >>>
>>>> >> >>>
>>>> >> >>> On Mon, Aug 24, 2015 at 7:16 PM, sujith h <sujith.h at gmail.com>
>>>> wrote:
>>>> >> >>> > On 24 Aug 2015 6:49 pm, "sujith h" <sujith.h at gmail.com> wrote:
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >> On Fri, Aug 21, 2015 at 8:07 PM, Damian, Alexandru
>>>> >> >>> >> <alexandru.damian at intel.com> wrote:
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>> On Fri, Aug 21, 2015 at 1:52 PM, sujith h <
>>>> sujith.h at gmail.com>
>>>> >> >>> >>> wrote:
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>> On Fri, Aug 21, 2015 at 4:45 PM, Damian, Alexandru
>>>> >> >>> >>>> <alexandru.damian at intel.com> wrote:
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> Hi,
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I think we need a better patch description. If I understand
>>>> >> >>> >>>>> correctly,
>>>> >> >>> >>>>> the issue you were facing is:
>>>> >> >>> >>>>> - even if we have layers at HEAD that are not under the
>>>> poky/
>>>> >> >>> >>>>> tree,
>>>> >> >>> >>>>> the
>>>> >> >>> >>>>> code would always return the
>>>> >> >>> >>>>> checkout path in the poky/ tree; I recognize that this is a
>>>> >> >>> >>>>> valid
>>>> >> >>> >>>>> issue.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I feel that this issue can be handled a bit differently if
>>>> we
>>>> >> >>> >>>>> frame
>>>> >> >>> >>>>> it
>>>> >> >>> >>>>> as such:
>>>> >> >>> >>>>> - if we have a HEAD branch specified for a layer, we need
>>>> to
>>>> >> >>> >>>>> find
>>>> >> >>> >>>>> out
>>>> >> >>> >>>>> the current checkout directory for that layer, since no
>>>> checkout
>>>> >> >>> >>>>> would be
>>>> >> >>> >>>>> performed.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> As such, when we import a toasterconf.json file (they only
>>>> way
>>>> >> >>> >>>>> to
>>>> >> >>> >>>>> get
>>>> >> >>> >>>>> HEAD branches for a layer) we need to store the actual
>>>> layer
>>>> >> >>> >>>>> checkout path
>>>> >> >>> >>>>> in the database (in the localpath, perhaps?), and reuse
>>>> that
>>>> >> >>> >>>>> value,
>>>> >> >>> >>>>> instead
>>>> >> >>> >>>>> of employing special logic to search for it. What I mean,
>>>> the
>>>> >> >>> >>>>> core
>>>> >> >>> >>>>> of the
>>>> >> >>> >>>>> problem is solved by replacing the whole gitrepos checkout
>>>> logic
>>>> >> >>> >>>>> with a
>>>> >> >>> >>>>> database value for all "HEAD" layers, and eliminate the
>>>> magic in
>>>> >> >>> >>>>> getGitCloneDirectory().
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I have a couple more comments on the patch below.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> Cheers,
>>>> >> >>> >>>>> Alex
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> On Fri, Aug 21, 2015 at 9:41 AM, Sujith H <
>>>> sujith.h at gmail.com>
>>>> >> >>> >>>>> wrote:
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> This patch fixes import of custom layers from
>>>> toasterjson.conf
>>>> >> >>> >>>>>> file. For example it was verified using layers like
>>>> >> >>> >>>>>> meta-mentor,
>>>> >> >>> >>>>>> meta-fsl-arm, meta-sourcery etc.
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> Signed-off-by: Sujith Haridasan <
>>>> Sujith_Haridasan at mentor.com>
>>>> >> >>> >>>>>> ---
>>>> >> >>> >>>>>>  .../toaster/bldcontrol/localhostbecontroller.py    | 49
>>>> >> >>> >>>>>> ++++++++++++++++++++--
>>>> >> >>> >>>>>>  .../bldcontrol/management/commands/loadconf.py     | 12
>>>> ++++--
>>>> >> >>> >>>>>>  2 files changed, 54 insertions(+), 7 deletions(-)
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> diff --git
>>>> >> >>> >>>>>> a/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
>>>> >> >>> >>>>>> b/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
>>>> >> >>> >>>>>> index 231a7d3..c43f33f 100644
>>>> >> >>> >>>>>> ---
>>>> a/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
>>>> >> >>> >>>>>> +++
>>>> b/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py
>>>> >> >>> >>>>>> @@ -178,7 +178,7 @@ class
>>>> >> >>> >>>>>> LocalhostBEController(BuildEnvironmentController):
>>>> >> >>> >>>>>>          self.be.save()
>>>> >> >>> >>>>>>          logger.debug("localhostbecontroller: Stopped
>>>> bitbake
>>>> >> >>> >>>>>> server")
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> -    def getGitCloneDirectory(self, url, branch):
>>>> >> >>> >>>>>> +    def
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> getGitCloneDirectory(self, url, branch,
>>>> cached_layers=None):
>>>> >> >>> >>>>>>          """ Utility that returns the last component of a
>>>> git
>>>> >> >>> >>>>>> path
>>>> >> >>> >>>>>> as
>>>> >> >>> >>>>>> directory
>>>> >> >>> >>>>>>          """
>>>> >> >>> >>>>>>          import re
>>>> >> >>> >>>>>> @@ -191,6 +191,17 @@ class
>>>> >> >>> >>>>>> LocalhostBEController(BuildEnvironmentController):
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>          # word of attention; this is a localhost-specific
>>>> >> >>> >>>>>> issue;
>>>> >> >>> >>>>>> only
>>>> >> >>> >>>>>> on the localhost we expect to have "HEAD" releases
>>>> >> >>> >>>>>>          # which _ALWAYS_ means the current poky checkout
>>>> >> >>> >>>>>> +        if cached_layers:
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> Using cached_layers here works only by coincidence - if the
>>>> >> >>> >>>>> desired
>>>> >> >>> >>>>> layer is not manually checked out under be.sourcedir, it
>>>> will
>>>> >> >>> >>>>> not
>>>> >> >>> >>>>> be found
>>>> >> >>> >>>>> by cached_layers code, and will not appear here.
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>> Ah, so would it be good to read from the database? Because
>>>> I was
>>>> >> >>> >>>> giving
>>>> >> >>> >>>> full path of layers in the toasterconf.json file. I assume
>>>> that
>>>> >> >>> >>>> layer
>>>> >> >>> >>>> information from the toasterconf.json file would be updated
>>>> in
>>>> >> >>> >>>> the
>>>> >> >>> >>>> database?
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>> Would be inserted into the database as the file is read.
>>>> >> >>> >>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I think a completely new piece of code is needed, which
>>>> will
>>>> >> >>> >>>>> track
>>>> >> >>> >>>>> where any layer that has a HEAD branch is actually checked
>>>> out.
>>>> >> >>> >>>>> This path
>>>> >> >>> >>>>> would be discovered and stored by importing a
>>>> toasterconf.json
>>>> >> >>> >>>>> file
>>>> >> >>> >>>>> (the
>>>> >> >>> >>>>> only place that can generate a HEAD branch), and verified
>>>> to
>>>> >> >>> >>>>> actually exist
>>>> >> >>> >>>>> at build time in this function, getGitCloneDirectory().
>>>> This
>>>> >> >>> >>>>> patch
>>>> >> >>> >>>>> touches
>>>> >> >>> >>>>> loadconf, but I think we might be able to get a better
>>>> handling
>>>> >> >>> >>>>> of
>>>> >> >>> >>>>> that.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>> +            if not url.endswith('.git'):
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I am not sure why the actual GIT url format is relevant for
>>>> >> >>> >>>>> "HEAD"
>>>> >> >>> >>>>> branches; we don't need to figure out where the layer
>>>> would get
>>>> >> >>> >>>>> checked out,
>>>> >> >>> >>>>> but where it actually exists.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>> +               from os.path import dirname
>>>> >> >>> >>>>>> +               extractDir = dirname(url)
>>>> >> >>> >>>>>> +               for key, val in cached_layers.iteritems():
>>>> >> >>> >>>>>> +                   if val == extractDir:
>>>> >> >>> >>>>>> +                     local_checkout_path = key
>>>> >> >>> >>>>>> +               return cached_layers[local_checkout_path]
>>>> >> >>> >>>>>> +            else:
>>>> >> >>> >>>>>> +               local_checkout_path = cached_layers[url]
>>>> >> >>> >>>>>> +               return local_checkout_path
>>>> >> >>> >>>>>>          from os.path import dirname as DN
>>>> >> >>> >>>>>>          local_checkout_path =
>>>> >> >>> >>>>>> DN(DN(DN(DN(DN(os.path.abspath(__file__))))))
>>>> >> >>> >>>>>>          #logger.debug("localhostbecontroller: using HEAD
>>>> >> >>> >>>>>> checkout
>>>> >> >>> >>>>>> in
>>>> >> >>> >>>>>> %s" % local_checkout_path)
>>>> >> >>> >>>>>> @@ -245,7 +256,14 @@ class
>>>> >> >>> >>>>>> LocalhostBEController(BuildEnvironmentController):
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>          # 3. checkout the repositories
>>>> >> >>> >>>>>>          for giturl, commit in gitrepos.keys():
>>>> >> >>> >>>>>> -            localdirname =
>>>> os.path.join(self.be.sourcedir,
>>>> >> >>> >>>>>> self.getGitCloneDirectory(giturl, commit))
>>>> >> >>> >>>>>> +            if not giturl.endswith('.git'):
>>>> >> >>> >>>>>> +               for key, val in cached_layers.iteritems():
>>>> >> >>> >>>>>> +                   if os.path.dirname(giturl) == val:
>>>> >> >>> >>>>>> +                      tmpKey = key
>>>> >> >>> >>>>>> +                      tmpVal = gitrepos[(giturl, commit)]
>>>> >> >>> >>>>>> +                      gitrepos[(tmpKey, commit)] +=
>>>> tmpVal
>>>> >> >>> >>>>>> +                      giturl = tmpKey
>>>> >> >>> >>>>>> +            localdirname =
>>>> os.path.join(self.be.sourcedir,
>>>> >> >>> >>>>>> self.getGitCloneDirectory(giturl, commit, cached_layers))
>>>> >> >>> >>>>>>              logger.debug("localhostbecontroller: giturl
>>>> %s:%s
>>>> >> >>> >>>>>> checking out in current directory %s" % (giturl, commit,
>>>> >> >>> >>>>>> localdirname))
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>              # make sure our directory is a git repository
>>>> >> >>> >>>>>> @@ -280,13 +298,36 @@ class
>>>> >> >>> >>>>>> LocalhostBEController(BuildEnvironmentController):
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>              # verify our repositories
>>>> >> >>> >>>>>>              for name, dirpath in gitrepos[(giturl,
>>>> commit)]:
>>>> >> >>> >>>>>> -                localdirpath = os.path.join(localdirname,
>>>> >> >>> >>>>>> dirpath)
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I am not sure what this change tries to do; dirpath is
>>>> actually
>>>> >> >>> >>>>> a
>>>> >> >>> >>>>> path
>>>> >> >>> >>>>> in the git repo where the layer lives; it is not immediate
>>>> that
>>>> >> >>> >>>>> the
>>>> >> >>> >>>>> all the
>>>> >> >>> >>>>> layers live in the top directory of a git repo. This change
>>>> >> >>> >>>>> invalidates the
>>>> >> >>> >>>>> check below, where we verify that the layer path actually
>>>> exists
>>>> >> >>> >>>>> after
>>>> >> >>> >>>>> checkout.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> +                localdirpath = localdirname
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>                  logger.debug("localhostbecontroller:
>>>> >> >>> >>>>>> localdirpath
>>>> >> >>> >>>>>> expected '%s'" % localdirpath)
>>>> >> >>> >>>>>>                  if not os.path.exists(localdirpath):
>>>> >> >>> >>>>>>                      raise BuildSetupException("Cannot
>>>> find
>>>> >> >>> >>>>>> layer
>>>> >> >>> >>>>>> git
>>>> >> >>> >>>>>> path '%s' in checked out repository '%s:%s'. Aborting." %
>>>> >> >>> >>>>>> (localdirpath,
>>>> >> >>> >>>>>> giturl, commit))
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> +                layerlisturl, layerlistdir = "", ""
>>>> >> >>> >>>>>> +                layerlisturl = [localurl for localurl,
>>>> >> >>> >>>>>> localpath
>>>> >> >>> >>>>>> in
>>>> >> >>> >>>>>> cached_layers.iteritems() if localpath == localdirpath]
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I suspect this logic will go away if we're not going to use
>>>> >> >>> >>>>> cached_layers to discover the local checkout directories
>>>> for
>>>> >> >>> >>>>> HEAD
>>>> >> >>> >>>>> urls.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> +                if len(layerlisturl) != 0:
>>>> >> >>> >>>>>> +                   layerlisturl = layerlisturl[0]
>>>> >> >>> >>>>>> +                if len(layerlisturl) == 0:
>>>> >> >>> >>>>>> +                   if
>>>> >> >>> >>>>>> os.path.basename(localdirpath).startswith("_"):
>>>> >> >>> >>>>>> +                      layerlisturl = localdirpath
>>>> >> >>> >>>>>>                  if name != "bitbake":
>>>> >> >>> >>>>>> -
>>>> layerlist.append(localdirpath.rstrip("/"))
>>>> >> >>> >>>>>> +                    for gitlocal, localpath in
>>>> >> >>> >>>>>> gitrepos.iteritems():
>>>> >> >>> >>>>>> +                        if layerlisturl in gitlocal:
>>>> >> >>> >>>>>> +                            if len(localpath) > 2:
>>>> >> >>> >>>>>> +                                for paths in localpath:
>>>> >> >>> >>>>>> +                                    if "bitbake" not in
>>>> >> >>> >>>>>> paths[1]:
>>>> >> >>> >>>>>> +                                        layerlistdir =
>>>> >> >>> >>>>>> localdirpath
>>>> >> >>> >>>>>> +"/" + str(paths[1])
>>>> >> >>> >>>>>> +                                    if layerlistdir not
>>>> in
>>>> >> >>> >>>>>> layerlist:
>>>> >> >>> >>>>>> +
>>>> >> >>> >>>>>> layerlist.append(layerlistdir.rstrip("/"))
>>>> >> >>> >>>>>> +                            else:
>>>> >> >>> >>>>>> +
>>>> >> >>> >>>>>> layerlist.append(localdirpath.rstrip("/"))
>>>> >> >>> >>>>>> +                            break
>>>> >> >>> >>>>>> +                    if len(layerlist) == 0:
>>>> >> >>> >>>>>> +                       for gitlocal, localpath in
>>>> >> >>> >>>>>> gitrepos.iteritems():
>>>> >> >>> >>>>>> +                           for paths in localpath:
>>>> >> >>> >>>>>> +                              if "bitbake" not in  paths:
>>>> >> >>> >>>>>> +
>>>> >> >>> >>>>>> layerlist.append(layerlisturl +
>>>> >> >>> >>>>>> "/"
>>>> >> >>> >>>>>> + str(paths[1]))
>>>> >> >>> >>>>>> +
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>          logger.debug("localhostbecontroller: current
>>>> layer
>>>> >> >>> >>>>>> list
>>>> >> >>> >>>>>> %s "
>>>> >> >>> >>>>>> % pformat(layerlist))
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> diff --git a/
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>
>>>> bitbake/lib/toaster/bldcontrol/management/commands/loadconf.py
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>
>>>> b/bitbake/lib/toaster/bldcontrol/management/commands/loadconf.py
>>>> >> >>> >>>>>> index 5022b59..a22f744 100644
>>>> >> >>> >>>>>> ---
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>
>>>> a/bitbake/lib/toaster/bldcontrol/management/commands/loadconf.py
>>>> >> >>> >>>>>> +++
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>
>>>> b/bitbake/lib/toaster/bldcontrol/management/commands/loadconf.py
>>>> >> >>> >>>>>> @@ -45,12 +45,14 @@ class Command(BaseCommand):
>>>> >> >>> >>>>>>          for i in ['bitbake', 'releases',
>>>> 'defaultrelease',
>>>> >> >>> >>>>>> 'config',
>>>> >> >>> >>>>>> 'layersources']:
>>>> >> >>> >>>>>>              assert i in data
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> -        def _read_git_url_from_local_repository(address):
>>>> >> >>> >>>>>> +        def _read_git_url_from_local_repository(address,
>>>> path
>>>> >> >>> >>>>>> =
>>>> >> >>> >>>>>> None):
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> If you want to pass in the path, please move the whole
>>>> function
>>>> >> >>> >>>>> outside
>>>> >> >>> >>>>> _import_layer_config, as it's no longer a closure.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>              url = None
>>>> >> >>> >>>>>> +            if not path:
>>>> >> >>> >>>>>> +                path = os.path.dirname(filepath)
>>>> >> >>> >>>>>>              # we detect the remote name at runtime
>>>> >> >>> >>>>>>              import subprocess
>>>> >> >>> >>>>>>              (remote, remote_name) = address.split(":", 1)
>>>> >> >>> >>>>>> -            cmd = subprocess.Popen("git remote -v",
>>>> >> >>> >>>>>> shell=True,
>>>> >> >>> >>>>>> cwd =
>>>> >> >>> >>>>>> os.path.dirname(filepath), stdout=subprocess.PIPE, stderr
>>>> =
>>>> >> >>> >>>>>> subprocess.PIPE)
>>>> >> >>> >>>>>> +            cmd = subprocess.Popen("git remote -v",
>>>> >> >>> >>>>>> shell=True,
>>>> >> >>> >>>>>> cwd =
>>>> >> >>> >>>>>> path, stdout=subprocess.PIPE, stderr = subprocess.PIPE)
>>>> >> >>> >>>>>>              (out,err) = cmd.communicate()
>>>> >> >>> >>>>>>              if cmd.returncode != 0:
>>>> >> >>> >>>>>>                  logging.warning("Error while importing
>>>> layer
>>>> >> >>> >>>>>> vcs_url:
>>>> >> >>> >>>>>> git error: %s" % err)
>>>> >> >>> >>>>>> @@ -121,7 +123,11 @@ class Command(BaseCommand):
>>>> >> >>> >>>>>>                          logger.error("Local layer path
>>>> %s must
>>>> >> >>> >>>>>> exists. Are you trying to import a layer that does not
>>>> exist ?
>>>> >> >>> >>>>>> Check your
>>>> >> >>> >>>>>> local toasterconf.json" % lo.local_path)
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>                      if
>>>> >> >>> >>>>>> layerinfo['vcs_url'].startswith("remote:"):
>>>> >> >>> >>>>>> -                        lo.vcs_url =
>>>> >> >>> >>>>>> _read_git_url_from_local_repository(layerinfo['vcs_url'])
>>>> >> >>> >>>>>> +                        if layerinfo['local_path'] not in
>>>> >> >>> >>>>>> ["meta",
>>>> >> >>> >>>>>> "meta-yocto", "meta-yocto-bsp"]:
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> Please don't use hardcoded layer names anywhere in the
>>>> code.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> We do not want special handling for some layers, all
>>>> layers need
>>>> >> >>> >>>>> to
>>>> >> >>> >>>>> be
>>>> >> >>> >>>>> treated in the same, uniform, way.
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>> +                            repo_path =
>>>> >> >>> >>>>>> layerinfo['local_path']
>>>> >> >>> >>>>>> +                        else:
>>>> >> >>> >>>>>> +                            repo_path = None
>>>> >> >>> >>>>>> +                        lo.vcs_url =
>>>> >> >>> >>>>>> _read_git_url_from_local_repository(layerinfo['vcs_url'],
>>>> >> >>> >>>>>> repo_path)
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> I think this code needs
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>                          if lo.vcs_url is None:
>>>> >> >>> >>>>>>                              logger.error("The toaster
>>>> config
>>>> >> >>> >>>>>> file
>>>> >> >>> >>>>>> references the local git repo, but Toaster cannot detect
>>>> >> >>> >>>>>> it.\nYour
>>>> >> >>> >>>>>> local
>>>> >> >>> >>>>>> configuration for layer %s is invalid. Make sure that the
>>>> >> >>> >>>>>> toasterconf.json
>>>> >> >>> >>>>>> file is correct." % layerinfo['name'])
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>> A bit more explanation would help me move further to
>>>> improvise
>>>> >> >>> >>>> the
>>>> >> >>> >>>> patch. If you don't mind please? So if I understand
>>>> correctly a
>>>> >> >>> >>>> separate
>>>> >> >>> >>>> function should be there to handle HEAD branches provided by
>>>> >> >>> >>>> toasterconf.json file, right?
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>> Yep, exactly my point.
>>>> >> >>> >>>
>>>> >> >>> >>> When inserting the Layer_Version objects for the "HEAD"
>>>> branch,
>>>> >> >>> >>> the
>>>> >> >>> >>> Layer_Version.local_path should
>>>> >> >>> >>>
>>>> >> >>> >>> be set to the layer path.
>>>> >> >>> >>>
>>>> >> >>> >>> When checking out the layers in localhost bbcontroller, the
>>>> >> >>> >>> checkout
>>>> >> >>> >>> should be skipped at all times for "HEAD" branches; instead,
>>>> the
>>>> >> >>> >>> value in
>>>> >> >>> >>> Layer_Version.local_path should be used.
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >> Is there a way to access local_path of toasterconf.json file
>>>> from
>>>> >> >>> >> localhostbecontroller.py file?
>>>> >> >>> >
>>>> >> >>> > I got the solution. I have modified local_path from "/" to the
>>>> value
>>>> >> >>> > in
>>>> >> >>> > the
>>>> >> >>> > configuration file in the database.
>>>> >> >>> >
>>>> >> >>> >
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> --
>>>> >> >>> >>>>>> 1.9.1
>>>> >> >>> >>>>>>
>>>> >> >>> >>>>>> --
>>>> >> >>> >>>>>> _______________________________________________
>>>> >> >>> >>>>>> toaster mailing list
>>>> >> >>> >>>>>> toaster at yoctoproject.org
>>>> >> >>> >>>>>> https://lists.yoctoproject.org/listinfo/toaster
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>>
>>>> >> >>> >>>>> --
>>>> >> >>> >>>>> Alex Damian
>>>> >> >>> >>>>> Yocto Project
>>>> >> >>> >>>>> SSG / OTC
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>>
>>>> >> >>> >>>> --
>>>> >> >>> >>>> സുജിത് ഹരിദാസന്
>>>> >> >>> >>>> Bangalore
>>>> >> >>> >>>> <Project>Contributor to KDE project
>>>> >> >>> >>>> http://fci.wikia.com/wiki/Anti-DRM-Campaign
>>>> >> >>> >>>> <Blog> http://sujithh.info
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>>
>>>> >> >>> >>> --
>>>> >> >>> >>> Alex Damian
>>>> >> >>> >>> Yocto Project
>>>> >> >>> >>> SSG / OTC
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >>
>>>> >> >>> >> --
>>>> >> >>> >> സുജിത് ഹരിദാസന്
>>>> >> >>> >> Bangalore
>>>> >> >>> >> <Project>Contributor to KDE project
>>>> >> >>> >> http://fci.wikia.com/wiki/Anti-DRM-Campaign
>>>> >> >>> >> <Blog> http://sujithh.info
>>>> >> >>> >
>>>> >> >>> >
>>>> >> >>> > --
>>>> >> >>> > _______________________________________________
>>>> >> >>> > toaster mailing list
>>>> >> >>> > toaster at yoctoproject.org
>>>> >> >>> > https://lists.yoctoproject.org/listinfo/toaster
>>>> >> >>> >
>>>> >> >>
>>>> >> >>
>>>> >> >>
>>>> >> >>
>>>> >> >> --
>>>> >> >> സുജിത് ഹരിദാസന്
>>>> >> >> Bangalore
>>>> >> >> <Project>Contributor to KDE project
>>>> >> >> http://fci.wikia.com/wiki/Anti-DRM-Campaign
>>>> >> >> <Blog> http://sujithh.info
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >> > --
>>>> >> > സുജിത് ഹരിദാസന്
>>>> >> > Bangalore
>>>> >> > <Project>Contributor to KDE project
>>>> >> > http://fci.wikia.com/wiki/Anti-DRM-Campaign
>>>> >> > <Blog> http://sujithh.info
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > സുജിത് ഹരിദാസന്
>>>> > Bangalore
>>>> > <Project>Contributor to KDE project
>>>> > http://fci.wikia.com/wiki/Anti-DRM-Campaign
>>>> > <Blog> http://sujithh.info
>>>>
>>>
>>>
>>>
>>> --
>>> സുജിത് ഹരിദാസന്
>>> Bangalore
>>> <Project>Contributor to KDE project
>>> http://fci.wikia.com/wiki/Anti-DRM-Campaign
>>> <Blog> http://sujithh.info
>>>
>>
>>
>>
>> --
>> സുജിത് ഹരിദാസന്
>> Bangalore
>> <Project>Contributor to KDE project
>> http://fci.wikia.com/wiki/Anti-DRM-Campaign
>> <Blog> http://sujithh.info
>>
>
>
>
> --
> സുജിത് ഹരിദാസന്
> Bangalore
> <Project>Contributor to KDE project
> http://fci.wikia.com/wiki/Anti-DRM-Campaign
> <Blog> http://sujithh.info
>



-- 
സുജിത് ഹരിദാസന്
Bangalore
<Project>Contributor to KDE project
http://fci.wikia.com/wiki/Anti-DRM-Campaign
<Blog> http://sujithh.info
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/toaster/attachments/20150910/5a20ac58/attachment-0001.html>


More information about the toaster mailing list