[Toaster] [PATCH 00/15] Build cancellation
Brian Avery
avery.brian at gmail.com
Sun Mar 20 10:12:22 PDT 2016
a couple of other thoughts after looking at it a little more today:
1) pid of bitbake started in proj builds dir for cleanup? do we want
to save these?
bitbake.lock with lsof might mean we don't need these. however, having
them might negate the lsof requirement...)
2)should poky oe-init be a #!/bin/bash if dash fails?
3) toasterui event loop should probably check for liveness of server
connection…. or do we get an error on waitEvent if the server has
died (segv’d, kill -9 by user, etc)?
4) add tests for start, cancel builds... this needs to be a bugzilla
entry so we have some tests for it. We don't need to do a build,just
make sure we can start/cancel them.
- we may want to add a success.bbclass inteo meta-oe-selftest like
the error.bbclass i added awhile ago. the error class doesn’t build
anything so it’s very fast...
-b
an intel employee
On Sat, Mar 19, 2016 at 4:13 PM, Brian Avery <avery.brian at gmail.com> wrote:
> Hi,
>
> I finally had a chance to try out the
> 'poky-contrib/ed/toaster/project-build-dir-7880-cancel-dldir_sstatedir'
> branch and I had comments:
>
> 1) use project name for build dirs? This would make it clearer which
> build dir has which projects in it.
>
>
> 2) we cannot assume I am building in ~/poky/build. There are env
> variables to let us find where poky is $OEROOT for instance. My bin/sh
> is bash but I still got the following when building from
> $HOME/cow/test/ when poky was in $HOME/src/poky :
>
> : less toaster_ui.log
>
> bash: ../bitbake/bin/bitbake: No such file or directory
>
> 3) if a build fails (as above) and then I cancel it, my state stays in
> Cancelling the build ...
>
>
> 4) when I cancel a build it says “Failed” it should probably say
> “Canceled” and still be red.
>
>
> 5) If I change one of my base project settings (like my download
> folder) the next (and following) projects should probably use my last
> setting as the default rather than the hardcoded default.
>
> For instance I change my downloads from /home/…/downloads to
> /home/…./DL in cowMaster, when I make cowJethro, the default DL_DIR
> should be /home/…./DL
>
>
>
>
> The following were done based on Jethro:
>
> 6) built rpi-hwup-image - then made custom image based on it. CI
> interface says: “Toaster has no package information for rpime. To
> generate package information, build rpime”
>
>
> 7) same true for customizing off off core-image-minimal. for both 6/7
> machine = raspberrypi2.
>
>
> 8) trying to download the recipe file gives me the yellow error screen
> [Errno 2] No such file or directory:
> u'/recipes-core/images/rpi-hwup-image.bb'
>
>
> 9) if I switch back to qemux86 as the machine, build
> core-image-minimal, and then customize it I also get the Toaster has
> no package information for cimx86me. To generate package information,
> build cimx86me
>
> so it is not just due to it being a rpi image. this also gives [Errno
> 2] No such file or directory:
> u'meta/recipes-core/images/core-image-minimal.bb'
>
> if it try to download it.
>
>
> 10) after building the cimx86me, I can now download the recipe but I
> still do not see any packages.
>
>
> 11) I’m not personally fond of having the sstate and dl_dir being set
> on the project creation page. they are available in the bitbake var
> page for each project which is nice. This is more a Belén thing. just
> putting my opinion down.
>
>
> 12) if I cancel a command line build from the command line (as the
> little question mark suggests) the cancellation is not reflected in
> the UI. Mine got stuck at 46% when I cancelled my dropbear cli build.
>
>
> ——
>
>
> So as far as upstreaming, I think we need to have the following 2
> things fixed first:
>
> 1) being able to run/build from an arbitrary dir and not assuming we
> are in the poky tree. (should be ez)
>
> 2) fixing the custom image stuff. Since the CI is the main selling
> point of the 2.1 release we need to make sure we don’t break it.
> (hopefully not too hard?)
>
>
> Other issues can be made as bugs on top of the upstream, i think.
>
>
> Hope this helps,
> Brian
> an Intel employee
>
> On Thu, Mar 17, 2016 at 8:41 AM, Ed Bartosh <ed.bartosh at linux.intel.com> wrote:
>> This is build cancelation functionality implemented by Sujith and Michael
>> and modified by me to work on top of 'per project build directory' patchset.
>>
>> NOTE: This patchset depends on 'per project build directory' patchset' v5:
>> https://lists.yoctoproject.org/pipermail/toaster/2016-March/004170.html
>>
>> The following changes since commit e4ba8a50641b6a2ad8ccda5fc62c61fdf7cef733:
>>
>> toasterui: shutdown on BuildCompleted event (2016-03-17 17:31:00 +0200)
>>
>> are available in the git repository at:
>>
>> git://git.yoctoproject.org/poky-contrib ed/toaster/project-build-dir-7880-cancel
>> http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ed/toaster/project-build-dir-7880-cancel
>>
>> Ed Bartosh (2):
>> toaster: fix conflicting migrations
>> toaster: use empty token
>>
>> Michael Wood (9):
>> toaster: Move xhr calls for starting and stopping builds
>> toaster: xhr Update the implementation of the build cancellation
>> request
>> toaster: libtoaster Update implementation of startABuild and
>> cancelABuild
>> toaster: bldcontrol models Add a cancelling state the BuildRequest
>> buildinfohelper: Add handler for cancelling a build
>> toaster: mrb_section template Add build cancel button
>> toaster: models Exclude the CANCELLED builds from get_number_of_builds
>> toaster: runbuilds Make runbuilds aware of the build CANCELLED state
>> toaster: runbuilds Clean up runbuilds
>>
>> Sujith H (4):
>> toaster: bldcontrol Add forceShutDown function to BitbakeController
>> toaster: update BuildEnvironmentController and BitbakeController
>> toaster: models Add cancelled state to build outcome
>> toaster: tables BuildsTable exclude cancelled builds
>>
>> bitbake/lib/bb/ui/buildinfohelper.py | 19 ++-
>> bitbake/lib/toaster/bldcontrol/bbcontroller.py | 29 +---
>> .../toaster/bldcontrol/localhostbecontroller.py | 4 +-
>> .../bldcontrol/management/commands/runbuilds.py | 107 ++++++++++-----
>> .../migrations/0002_add_cancelling_state.py | 19 +++
>> .../toaster/bldcontrol/migrations/0003_merge.py | 15 +++
>> bitbake/lib/toaster/bldcontrol/models.py | 27 +++-
>> .../orm/migrations/0006_add_cancelled_state.py | 19 +++
>> bitbake/lib/toaster/orm/migrations/0007_merge.py | 15 +++
>> bitbake/lib/toaster/orm/models.py | 12 +-
>> bitbake/lib/toaster/toastergui/api.py | 110 +++++++++++++++
>> .../toaster/toastergui/static/js/customrecipe.js | 4 +-
>> .../lib/toaster/toastergui/static/js/layerBtn.js | 3 +-
>> .../lib/toaster/toastergui/static/js/libtoaster.js | 41 +++---
>> .../lib/toaster/toastergui/static/js/mrbsection.js | 95 +++++++++++++
>> .../toaster/toastergui/static/js/projectpage.js | 4 +-
>> .../toaster/toastergui/static/js/projecttopbar.js | 6 +-
>> .../toaster/toastergui/static/js/recipedetails.js | 4 +-
>> bitbake/lib/toaster/toastergui/tables.py | 48 +------
>> bitbake/lib/toaster/toastergui/templates/base.html | 1 +
>> .../toaster/toastergui/templates/mrb_section.html | 148 ++++++++-------------
>> bitbake/lib/toaster/toastergui/urls.py | 5 +
>> 22 files changed, 507 insertions(+), 228 deletions(-)
>> create mode 100644 bitbake/lib/toaster/bldcontrol/migrations/0002_add_cancelling_state.py
>> create mode 100644 bitbake/lib/toaster/bldcontrol/migrations/0003_merge.py
>> create mode 100644 bitbake/lib/toaster/orm/migrations/0006_add_cancelled_state.py
>> create mode 100644 bitbake/lib/toaster/orm/migrations/0007_merge.py
>> create mode 100644 bitbake/lib/toaster/toastergui/api.py
>> create mode 100644 bitbake/lib/toaster/toastergui/static/js/mrbsection.js
>>
>> --
>> Regards,
>> Ed
>> --
>> _______________________________________________
>> toaster mailing list
>> toaster at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/toaster
More information about the toaster
mailing list