[OE-core] shell script guidelines in oe-core? (was Re: [PATCH v4] create-pull-request: cleanup bashisms)

Christopher Larson clarson at kergoth.com
Wed Aug 12 17:46:29 UTC 2015


On Wed, Aug 12, 2015 at 9:56 AM, Khem Raj <raj.khem at gmail.com> wrote:

> On Wed, Aug 12, 2015 at 2:49 AM,  <Mikko.Rapeli at bmw.de> wrote:
> > This reminded me of the problems I've seen with various oe-core shell
> scripts:
> > they are missing systematic error handling.
> >
> > IMO using bash and 'set -euxo pipefail' are a good approach to catch
> errors
> > early in shell scripts. Manually checking for $? is error prone and
> things
> > like pipes can hide them. Using undefined variables is another thing
> > which should fail early before things go horribly wrong. And in build
> automation
> > I'd rather see output of -x since things can fail in mysterious ways.
> > And then there's quoting....
> >
> > One useful guide is to use shellcheck as static analysis tool for shell
> scripts.
> >
> > I guess internally bitbake uses at least set -e.
> >
> > Comments?
>
> all these are good suggestions, I would recommend to open bugs for all
> of these some of them might need
> to cite the scripts which need fixing.


Agreed, it's important to check the behavior of shell scripts is kosher and
standards-compliant. shellcheck is extremely useful, I recommend it as
well, but combined with the vim syntastic plugin, so every time you save
the file all the errors and warnings are identified :) Makes it harder to
ignore or forget about.
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20150812/701eaa4a/attachment-0002.html>


More information about the Openembedded-core mailing list