[Toaster] The Toaster process overview - 10 steps to enlightenment

Reyna, David david.reyna at windriver.com
Thu Jan 16 23:23:01 PST 2014


Hi all,

I have summarized the process steps for working with Yocto Toaster, gathered from my notes and our email threads. I am doing this to capture the information for our common understanding, plus use it in the near term to help set up my test team. I hope that you all find this summary useful and correct, and that perhaps it can be captured to a Wiki page.

I have two questions to call out for comment:

  (a) Alex had mentioned that he wanted a "[YOCTO #0000]" line in our commit records, though we have not done that as of yet. Is this still the plan? I have included in my step #7 below my guess as to how Alex would like it applied.

  (b) I have myself executed all of the steps but #10, which we briefly discussed in Wednesday meeting. Do I have the right content?

Thanks,
David

========================

[[ Set up the local repository ]]


(1) Select a Yocto-1.5 compatible host, and install Django-1.5. The "pip" application is recommended to manage the install process.

   https://www.djangoproject.com/download/

  $ sudo apt-get install pip
  $ sudo pip uninstall django
  $ sudo pip install django==1.5


(2) Setup a local repository for the development branch

  $ cd <installdir>
  $ git clone git://git.yoctoproject.org/poky
  $ cd poky
  $ git remote add contrib http://git.yoctoproject.org/git/poky-contrib
  $ git fetch contrib
  $ git checkout contrib/toaster/master -b toaster-master

# Also, setup up your branch for pushes to Yocto poky-contrib

  $ git remote set-url contrib git at git.yoctoproject.org:poky-contrib


[[ Set up the project and Toaster interface ]]


(3) Create a project, with toaster database capture enabled 

  $ cd <installdir>
  $ source poky/oe-init-build-env
  $ source toaster start
  $ bitbake core-image-minimal

# NOTE: the Toaster MUST be started before the project's build, else
# no data will be captured. You can recover a working (if sparse)
# database if you do this to execute a quick re-build.

  $ source toaster start
  $ bitbake -c cleansstate base-files
  $ bitbake core-image-minimal


(4) Run the toaster interface 

  $ xdg-open http://localhost:8000/

# NOTE: You can alternatively open your browser manually to: 

  http://localhost:8000/ 


[[ Edit and submit content for review ]]


(5) Create a local branch 

# NOTE: the branch name is generally of the form "<username>/<a_name_for_the_branch>",
# for example "dreyna/recipe-detail-view". You can choose any user name and send it
# to Michael Halstead <mhalstead at linuxfoundation.org> together with your SSL public key
# to enable your pushes to "poky-contrib".

Example:
  $ BRANCH_NAME="dreyna/recipe-detail-view"
  $ git checkout -b $BRANCH_NAME


(6) Edit and test your content.

# NOTE: All rendered pages should be validated for HTML format compliance. 
# Here are some suggested HTML validators:
  * Firebug (https://getfirebug.com/)
  * HtmlValidator (http://users.skynet.be/mgueury/mozilla/)


(7) Set up your commit(s). The same push can have several partitioned commits.

  $ cd <installdir>/poky
  $ git add bitbake/lib/toaster/...
  $ git commit

# NOTE: The format of the commit should be as the following:

vvvvvvvvvvvvvvvvvvvvvvvvv
<short one line summary>

[YOCTO #0000]          # OPTIONAL LINE: replace with the real bugzilla issue number

<long(er) description, can be multi-line, should break at around 60 chars>

Signed-off-by: First Last <name at company.com>
^^^^^^^^^^^^^^^^^^^^^^^^^


(8) Push your branch for review

  $ git push contrib $BRANCH_NAME

See it on the web using the branch name, for example:

  http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/?h=dreyna%2Frecipe-detail-view


(9) Send an email to "toaster at yoctoproject.org" with the following content.

  (a) A brief description of the review request together with the branch name
  
  (b) Any technical details to call out to reviewers
  
  (c) Any limitations, assumptions, dependencies, and/or differed work

  (d) A test plan that demonstrates how the feature was tested
      with sufficient detail for general testers and 
      documentation writers.


[[ Rebase your repository from master ]]


(10) To update your repository to the latest content, rebase it (as
opposed to attempted a merge).

  $ cd <installdir>/poky
  $ git fetch
  $ git rebase [-i] poky-contrib

========================



More information about the toaster mailing list