Bug 6437 - Document how to set up the Yocto Project for production work
Summary: Document how to set up the Yocto Project for production work
Status: RESOLVED DUPLICATE of bug 14482
Alias: None
Product: General Docs
Classification: Documentation
Component: docs-general (show other bugs)
Version: 1.7
Hardware: x86 Multiple
: Medium+ enhancement
Target Milestone: Future
Assignee: Michael Opdenacker
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2014-06-12 13:14 UTC by Belen Barros Pena
Modified: 2021-07-15 09:39 UTC (History)
16 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Yes (doc changes required)


Attachments
feeplane mindmap 2021-04-27 (117.47 KB, application/octet-stream)
2021-04-27 08:43 UTC, Robert Berger
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Belen Barros Pena 2014-06-12 13:14:05 UTC
As part of development workflow improvements. 

Source material available in this thread:

https://lists.yoctoproject.org/pipermail/yocto/2014-June/020121.html
Comment 1 Scott Rifenbark 2014-06-13 05:55:16 UTC
Hi, 

I checked out the thread and there are many suggestions that range from validation in general of what the original poster wanted to do up to well-documented methods that provide a pretty holistic solution.  

What I am wondering is for our YP doc section that would cover this what are the solutions and suggestions that we would want to recommend?  Can someone suggest the best solution or combination of things that we would want to highlight in this section?  There might even be other items that are not mentioned in the thread.

Thanks,
Scott
Comment 2 Stephen K Jolley 2014-06-30 19:47:16 UTC
Assigned to person who should supply info.
Comment 3 Belen Barros Pena 2014-07-01 09:46:37 UTC
(In reply to comment #2)
> Assigned to person who should supply info.

Heh, assigned to the wrong person, then :) I'm afraid I know nothing about this stuff. Paul Eggleton is probably the person who will end up working with Scott on this.
Comment 4 Scott Rifenbark 2014-07-01 10:33:00 UTC
I set it to Paul.
Comment 5 Paul Eggleton 2014-08-07 15:05:34 UTC
So, I'm marking this as ACCEPTED rather than NEEDINFO since it is now assigned to me rather than Scott.
Comment 6 Henry Bruce 2016-04-25 18:33:30 UTC
I have flagged similar problem where quick start documentation refers to branches with release names which will change on you. It seems that branch names are used to test poky, meta-intel (and other layers?) combinations. We need a tag(?) applied to a set of layers that are known to inter-operate at release. This seems like a release engineer task that is documented by a technical writer. Or am I missing the point?
Comment 7 Henry Bruce 2017-06-28 20:37:51 UTC
Will create a tips and tricks article to address this.
Last comment is not relevant to this bug is now addressed in bug 11731
Comment 8 Henry Bruce 2017-08-01 23:01:02 UTC
No requests for this so moving to backlog.
As we don't have a real backlog, setting to generic "2.4" milestone so it can be triaged appropriately.
Comment 9 Henry Bruce 2017-08-01 23:22:47 UTC
Setting to NEEDINFO to trigger review.
Comment 10 Stephen K Jolley 2017-08-04 15:30:15 UTC
Set to Undecided priority to trigger a re-triage.
Comment 11 Scott Rifenbark 2017-08-09 22:03:30 UTC
Adding Kristi to the CC list so she gets information on this bug directly.

Scott
Comment 12 Scott Rifenbark 2017-12-22 20:47:56 UTC
What is going on with this bug?  Are we addressing it in a tips and tricks wiki area?  If so, this bug would not affect the YP docs.  If not, knows this stuff?  Joshua?

Thanks, 
Scott
Comment 13 Joshua Lock 2018-01-02 14:32:02 UTC
Hi Scott, this bug is on my list. I'm not sure if it makes sense to include this in the docs or not, the advantage of the docs over a tips and tricks article is that more people know where the docs are and to look for information there.
Comment 14 Kristi 2018-01-03 23:44:27 UTC
Hello Joshua, 

I talked with Scott and found out that there is a section in the 2.4 dev-manual that never got completed because he did not receive the info; http://www.yoctoproject.org/docs/2.4/dev-manual/dev-manual.html#usingpoky-changes-collaborate

This is where this type of info can go if we put it in the doc set. Since this bug is on your list and Scott agrees that it should go in the docs, I can update the section when we have the info.

Thanks! 
Kristi
Comment 15 Kristi 2018-03-23 11:45:19 UTC
Please see the link in Comment 14 - we still need a review and a figure for typical system topology. Thanks!
Comment 16 Scott Rifenbark 2018-04-19 08:29:03 UTC
Hi, 

As a temporary fix regarding the docs, I wrote this section to not use a figure.  It would be nice to have something real-world though.

Scott
Comment 17 Scott Rifenbark 2018-07-24 19:39:45 UTC
Hi, 

This section needs reviewed.  This is the section addressing how to set up a team environment for Yocto.

Scott

https://yoctoproject.org/docs/2.6/dev-manual/dev-manual.html#usingpoky-changes-collaborate
Comment 18 Tracy Graydon 2019-01-24 21:06:02 UTC
I took a look at the documentation, and it looks pretty good to me, with the caveat that I am looking at it from the build infrastructure side of things, as used with meta-intel. Be nice to have a developer perspective on it from someone who is using such an environment. That said, unless someone is looking for some very detailed, explicit instructions, my take is that this is good documentation. Just my two cents.
Comment 19 Tracy Graydon 2019-01-24 21:08:06 UTC
Scott, seems like this should maybe be assigned to you as King of Docs?
Comment 20 Scott Rifenbark 2019-01-24 21:16:04 UTC
Awesome that someone actually reviewed this section... big +1 to the "King of Build Infrastructure" :)  Thanks Tracy.

I can take ownership of the bug.  I will keep it in "IN PROGRESS REVIEW" in hopes of someone else looking at the section.  Another idea is to throw it out on the Yocto mailing list and ask for feedback from the community.  I will do that too.

Scott
Comment 21 Randy MacLeod 2019-01-30 01:36:35 UTC
I read though the section linked in comment 14 as well. Other than the missing image, I didn't notice anything else that needs work. Add an image and ship it?
Comment 22 Scott Rifenbark 2019-02-15 18:43:56 UTC
Who can give me a typical production environment layout?
Comment 23 Scott Rifenbark 2019-04-16 23:45:46 UTC
Hi, 

Last call for a typical YP production layout topology that I can create into an image.  I am asking for some rough idea of what to create an image with.  I will even take a textual description of pieces and how they communicate.

I will close this without the image if I cannot get this information with a month or so.

Thanks, 
Scott
Comment 24 Mark Morton 2020-05-06 09:56:15 UTC
Is there anything left to do here? For example, we cover:

Setting Up a Team Development Environment: https://www.yoctoproject.org/docs/3.1/dev-manual/dev-manual.html#usingpoky-changes-collaborate 

Open Source License Compliance: https://www.yoctoproject.org/docs/3.1/dev-manual/dev-manual.html#working-with-licenses

Deployed (Production) On-target Package Management: https://www.yoctoproject.org/docs/3.1/dev-manual/dev-manual.html#using-runtime-package-management

Arichived Open Source Content (with archiver): https://www.yoctoproject.org/docs/3.1/dev-manual/dev-manual.html#providing-the-source-code

These all provide a pretty comprehensive picture of the tools we include for production.

Also, there the WIC tool, which creates partitioned images for mass deployment.

If there's nothing left to add, I'd like to mark this complete.
Comment 25 Randy MacLeod 2020-05-07 07:52:48 UTC
Some additional areas:

- local source mirrors
- strategies for handling the git cloned repos 
    (use local branches and rebase vs bbappend )

There are likely other areas. Does anyone have additional requirements for this work?
Comment 26 Robert Berger 2020-05-10 23:38:51 UTC
A developer workflow for production should be mentioned:

*) SDK for developer/bitbake for production build and Yocto/OE person
*) devtool for developer/devtool for Yocto/OE person

SW update solutions[1] should be mentioned for production, since people are reinventing all the time what's already there.

The following can be used
*) for "hardening" the production image
*) to be able to see what meta-layers/branch/commit-id were used to build the image and whether something was modified without being checked in
*) what packages are in the rootfs (without a package manager)

- cve-check.bbclass
- buildhistory.bbclass
- image-buildinfo.bbclass
- static code checks: https://github.com/priv-kweihmann/meta-sca
- I use this[2] to write /etc/image-manifest (all packages) into my rootfs

you can see here[3] how the output of image-buildinfo.bbclass and image-manifestinfo.bbclass looks like.

Something like the oss-review toolkit[4] could be used to help with license compliance. I am not sure yet whether this should be outside of the YP or integrated with it. 

[1] https://wiki.yoctoproject.org/wiki/System_Update

[2] https://gitlab.com/meta-layers/meta-resy/-/blob/dunfell/classes/image-manifestinfo.bbclass

[3] https://hub.docker.com/r/yoctotrainer/app-container-tensorflow-oci

[4] https://github.com/tsteenbe/ort
Comment 27 Robert Berger 2021-04-27 08:43:04 UTC
Created attachment 4793 [details]
feeplane mindmap 2021-04-27

freeplane mindmap
Comment 28 Robert Berger 2021-04-27 08:45:01 UTC
Hi,

Just added a freeplane[1] mindmap with some more ideas. In case you want to modify it, you will need to install freeplane.

In case you just want to watch it, either look at the .svg or for some more interactive/clickable version the html.

[1] https://www.freeplane.org/wiki/index.php/Home
Comment 29 Michael Opdenacker 2021-07-15 09:39:44 UTC
This bug contains too much history, making it time consuming to get back to it.

I'm closing it after creating a new one with just the relevant ideas that remain:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=14482

*** This bug has been marked as a duplicate of bug 14482 ***