* Deploying Yocto build images @ 2013-11-21 12:10 Stefano Babic 2013-11-21 12:34 ` Diego Sueiro 2013-11-21 15:48 ` Bryan Evenson 0 siblings, 2 replies; 7+ messages in thread From: Stefano Babic @ 2013-11-21 12:10 UTC (permalink / raw) To: yocto@yoctoproject.org Hi everybody, in the last ELCE, David point out in his presentation that we should improve how to deploy Yocto images on the target. I did some work this year to provide a reliable way for some customers of us to install Yocto's images in field, and I have published last week the sources. Here the link of the announcement: http://comments.gmane.org/gmane.comp.embedded.eldk/2397 Mainly, it is a tool that can be stored in the rootfs or will be put in a separate initrd image and whose goal is only to update the system. I have tried to describe pros and cons of several different solutions (updating via bootloader ? single copy against dual copy ?) - you can find details in the doc directory in the swupdate repository. Maybe someone of you can find this helpful, and I will be happy if I could get some feedback. Best regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de ===================================================================== ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Deploying Yocto build images 2013-11-21 12:10 Deploying Yocto build images Stefano Babic @ 2013-11-21 12:34 ` Diego Sueiro 2013-11-21 13:15 ` Stefano Babic 2013-11-21 18:20 ` Michael_E_Brown 2013-11-21 15:48 ` Bryan Evenson 1 sibling, 2 replies; 7+ messages in thread From: Diego Sueiro @ 2013-11-21 12:34 UTC (permalink / raw) To: Stefano Babic; +Cc: yocto@yoctoproject.org [-- Attachment #1: Type: text/plain, Size: 2028 bytes --] Stefano, This is a really great tool. I'm always developing a new software update tool for each new project, since there are different requirements. As I can see you are dealing with different scenarios, and this is really amazing. I'm already cloning meta-swupdate to test it. Looking at recipes I realized that swupdate is initialized in an sysVinit environment. Did you plan to use systemd too? Maybe I can contribute to this. Thanks for sharing. Regards, -- *dS Diego Sueiro /*long live rock 'n roll*/ 2013/11/21 Stefano Babic <sbabic@denx.de> > Hi everybody, > > in the last ELCE, David point out in his presentation that we should > improve how to deploy Yocto images on the target. > > I did some work this year to provide a reliable way for some customers > of us to install Yocto's images in field, and I have published last week > the sources. Here the link of the announcement: > > http://comments.gmane.org/gmane.comp.embedded.eldk/2397 > > Mainly, it is a tool that can be stored in the rootfs or will be put in > a separate initrd image and whose goal is only to update the system. I > have tried to describe pros and cons of several different solutions > (updating via bootloader ? single copy against dual copy ?) - you can > find details in the doc directory in the swupdate repository. > > Maybe someone of you can find this helpful, and I will be happy if I > could get some feedback. > > Best regards, > Stefano Babic > > -- > ===================================================================== > DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de > ===================================================================== > _______________________________________________ > yocto mailing list > yocto@yoctoproject.org > https://lists.yoctoproject.org/listinfo/yocto > [-- Attachment #2: Type: text/html, Size: 3083 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Deploying Yocto build images 2013-11-21 12:34 ` Diego Sueiro @ 2013-11-21 13:15 ` Stefano Babic 2013-11-21 18:20 ` Michael_E_Brown 1 sibling, 0 replies; 7+ messages in thread From: Stefano Babic @ 2013-11-21 13:15 UTC (permalink / raw) To: Diego Sueiro, Stefano Babic; +Cc: yocto@yoctoproject.org Hi Diego, On 21/11/2013 13:34, Diego Sueiro wrote: > Stefano, > > This is a really great tool. I'm always developing a new software update > tool for each new project, since there are different requirements. That is right. I did the same in the past, until I recognize that I waste a lot of effort. > As I can see you are dealing with different scenarios, and this is > really amazing. > Sure. I hope that the tool remains general enough to allow to include scenarios that I was not able to foresee. > I'm already cloning meta-swupdate to test it. > Looking at recipes I realized that swupdate is initialized in an > sysVinit environment. > Did you plan to use systemd too? > Maybe I can contribute to this. Let's say that how the tool is started is open and can be easy customized. Updating to systemd is surely nice. One use of case I have is to not use neither sysVinit not systemd at all. The tool is put into a initrd and it is the only task running, that is I modified rcS to start only the tool and to speed up the booting process. But as I said, this is only a use case. Best regards, Stefano -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de ===================================================================== ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Deploying Yocto build images 2013-11-21 12:34 ` Diego Sueiro 2013-11-21 13:15 ` Stefano Babic @ 2013-11-21 18:20 ` Michael_E_Brown 2013-11-21 18:49 ` Stefano Babic 1 sibling, 1 reply; 7+ messages in thread From: Michael_E_Brown @ 2013-11-21 18:20 UTC (permalink / raw) To: diego.sueiro, sbabic; +Cc: yocto [-- Attachment #1: Type: text/plain, Size: 3295 bytes --] Thanks for posting this. It's very timely for a project I am in the initial stages of designing. I have looked over the docs and some of the code, and am interested in using this. I would make a couple suggestions: 1) As you mention, documentation is important. Unless this is very well documented, it's difficult for other people to take up and use effectively, or to advocate for its use in a group 2) Progress indications: it's going to be fairly important to build in some way to notify other process about the state of the update. A flexible framework for sharing progress would be very much appreciated. There are a couple scenarios I have, but the main one is a network notification where one device is being updated by another. The updated device should be able to signal update progress to the updater device in a flexible fashion. I haven't looked at the code hard enough to see how difficult this would be to add. -- Michael From: yocto-bounces@yoctoproject.org [mailto:yocto-bounces@yoctoproject.org] On Behalf Of Diego Sueiro Sent: Thursday, November 21, 2013 6:35 AM To: Stefano Babic Cc: yocto@yoctoproject.org Subject: Re: [yocto] Deploying Yocto build images Stefano, This is a really great tool. I'm always developing a new software update tool for each new project, since there are different requirements. As I can see you are dealing with different scenarios, and this is really amazing. I'm already cloning meta-swupdate to test it. Looking at recipes I realized that swupdate is initialized in an sysVinit environment. Did you plan to use systemd too? Maybe I can contribute to this. Thanks for sharing. Regards, -- *dS Diego Sueiro /*long live rock 'n roll*/ 2013/11/21 Stefano Babic <sbabic@denx.de<mailto:sbabic@denx.de>> Hi everybody, in the last ELCE, David point out in his presentation that we should improve how to deploy Yocto images on the target. I did some work this year to provide a reliable way for some customers of us to install Yocto's images in field, and I have published last week the sources. Here the link of the announcement: http://comments.gmane.org/gmane.comp.embedded.eldk/2397 Mainly, it is a tool that can be stored in the rootfs or will be put in a separate initrd image and whose goal is only to update the system. I have tried to describe pros and cons of several different solutions (updating via bootloader ? single copy against dual copy ?) - you can find details in the doc directory in the swupdate repository. Maybe someone of you can find this helpful, and I will be happy if I could get some feedback. Best regards, Stefano Babic -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53<tel:%2B49-8142-66989-53> Fax: +49-8142-66989-80<tel:%2B49-8142-66989-80> Email: sbabic@denx.de<mailto:sbabic@denx.de> ===================================================================== _______________________________________________ yocto mailing list yocto@yoctoproject.org<mailto:yocto@yoctoproject.org> https://lists.yoctoproject.org/listinfo/yocto [-- Attachment #2: Type: text/html, Size: 10616 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Deploying Yocto build images 2013-11-21 18:20 ` Michael_E_Brown @ 2013-11-21 18:49 ` Stefano Babic 0 siblings, 0 replies; 7+ messages in thread From: Stefano Babic @ 2013-11-21 18:49 UTC (permalink / raw) To: Michael_E_Brown, diego.sueiro, sbabic; +Cc: yocto Hi Michael, On 21/11/2013 19:20, Michael_E_Brown@Dell.com wrote: > Thanks for posting this. It’s very timely for a project I am in the > initial stages of designing. I have looked over the docs and some of the > code, and am interested in using this. > > > > I would make a couple suggestions: > Thanks ! > 1) As you mention, documentation is important. Unless this is very > well documented, it’s difficult for other people to take up and use > effectively, or to advocate for its use in a group I know, and I am understand there are a lot of things that I have not explained. Documentation is first priority. > 2) Progress indications: it’s going to be fairly important to build > in some way to notify other process about the state of the update. > A > flexible framework for sharing progress would be very much appreciated. There is an interface using Unix Domain Socket to communicate with the installer. There is only a couple of implemented messages (start installer - get status). It is quite rudimentary, but it can be extended. This interface is also used by the AJAX interface (see in ./www) to report the current status to the operator's browser when a downloaded is started from network. Another use case is to output the status on a LCD: a separate process can ask the installer and render the output for the operator. > There are a couple scenarios I have, but the main one is a network > notification where one device is being updated by another. The updated > device should be able to signal update progress to the updater device in > a flexible fashion. I haven’t looked at the code hard enough to see how > difficult this would be to add. I think it is should be not very difficult. As I said, there is already an interface that can be easy extended. Regards, Stefano -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de ===================================================================== ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Deploying Yocto build images 2013-11-21 12:10 Deploying Yocto build images Stefano Babic 2013-11-21 12:34 ` Diego Sueiro @ 2013-11-21 15:48 ` Bryan Evenson 2013-11-21 17:08 ` Stefano Babic 1 sibling, 1 reply; 7+ messages in thread From: Bryan Evenson @ 2013-11-21 15:48 UTC (permalink / raw) To: Stefano Babic, yocto@yoctoproject.org Stefano, Looks interesting. I have a question that I didn't see covered in the documentation (yet). I can see the benefit to having a single image firmware upgrade, but how does swupdate handle configuration differences? I can see cases in which the majority of the software will be the same but there will be configuration file differences from device to device. I like the idea of a single image upgrade, but not at the cost of wiping the device-specific configuration. Thanks, Bryan E. > -----Original Message----- > From: yocto-bounces@yoctoproject.org [mailto:yocto- > bounces@yoctoproject.org] On Behalf Of Stefano Babic > Sent: Thursday, November 21, 2013 7:11 AM > To: yocto@yoctoproject.org > Subject: [yocto] Deploying Yocto build images > > Hi everybody, > > in the last ELCE, David point out in his presentation that we should > improve how to deploy Yocto images on the target. > > I did some work this year to provide a reliable way for some customers > of us to install Yocto's images in field, and I have published last > week the sources. Here the link of the announcement: > > http://comments.gmane.org/gmane.comp.embedded.eldk/2397 > > Mainly, it is a tool that can be stored in the rootfs or will be put in > a separate initrd image and whose goal is only to update the system. I > have tried to describe pros and cons of several different solutions > (updating via bootloader ? single copy against dual copy ?) - you can > find details in the doc directory in the swupdate repository. > > Maybe someone of you can find this helpful, and I will be happy if I > could get some feedback. > > Best regards, > Stefano Babic > > -- > ===================================================================== > DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel > HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany > Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de > ===================================================================== > _______________________________________________ > yocto mailing list > yocto@yoctoproject.org > https://lists.yoctoproject.org/listinfo/yocto ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Deploying Yocto build images 2013-11-21 15:48 ` Bryan Evenson @ 2013-11-21 17:08 ` Stefano Babic 0 siblings, 0 replies; 7+ messages in thread From: Stefano Babic @ 2013-11-21 17:08 UTC (permalink / raw) To: Bryan Evenson, Stefano Babic, yocto@yoctoproject.org Hi Bryan, On 21/11/2013 16:48, Bryan Evenson wrote: > Stefano, > > Looks interesting. I have a question that I didn't see covered in > the documentation (yet). I know, this is my fault. Writing documentation is a task that is always postponed ;-) > I can see the benefit to having a single image firmware upgrade, but > how does swupdate handle configuration differences? I can see cases > in which the majority of the software will be the same but there will > be configuration file differences from device to device. I like the > idea of a single image upgrade, but not at the cost of wiping the > device-specific configuration. I explain how it was done in a real project. The scope was to have a single image, containing update for multiple devices. Let's say this is an update of version Y for a whole family of products, but each product has its own parts (mostly kernel differs, but not only). In that case, an external parser was used. The sw-description is written as XML, with a syntax like this: <?xml version="1.0" encoding="UTF-8"?> <software version="1.0"> <name>Update Image</name> <version>1.0.0</version> <description>Firmware for XXXXX Project</description> <images> <image device="firstdevice" version="0.9"> <stream name="dev1-uImage" type="ubivol" volume="kernel" /> <stream name="dev1.dtb" type="ubivol" volume="dtb" /> <stream name="dev1-rootfs.ubifs" type="ubivol" volume="rootfs"/> <stream name="dev1-uboot-env" type="uboot" /> <stream name="raw_vfat" type="raw" dest="/dev/mmcblk0p4" /> <stream name="sdcard.lua" type="lua" /> </image> <image device="seconddevice" version="0.9"> <stream name="dev2.dtb" rev="0.9" type="dtb" /> <stream name="dev2-uImage" rev="0.9" type="kernel" /> ...... That is: there is a single description, that describes the components for all devices. Each device must recognized where it is running - this was done with a configuration file or reading directly from hardware (GPIOs, SPI EPROM). When the image is downloaded, the description is parsed and only the significant parts are extracted - the rest is discarded. Of course, the image can be significantly bigger - it contains the software for many devices. In my real project, this was not an issue - the scope was really to have a single image for a product family. Note: this is only an example how the tool was used. But this shows also that the syntax of the sw-description is open. I could also add the LUA script/XML parser to the repository, it is at the moment not stored - I have thought at it as a custom specific requirement. Best regards, Stefano -- ===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de ===================================================================== ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2013-11-21 18:49 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-11-21 12:10 Deploying Yocto build images Stefano Babic 2013-11-21 12:34 ` Diego Sueiro 2013-11-21 13:15 ` Stefano Babic 2013-11-21 18:20 ` Michael_E_Brown 2013-11-21 18:49 ` Stefano Babic 2013-11-21 15:48 ` Bryan Evenson 2013-11-21 17:08 ` Stefano Babic
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.