Re: [PATCH yocto-autobuilder-helper] run-docs-build: fix checkout of releases.rst from master

Michael Opdenacker

Hi Quentin,

Thank you very much for the review.

On 1/26/22 09:11, Quentin Schulz wrote:
Hi Michael,

On January 25, 2022 5:45:46 PM GMT+01:00, Michael Opdenacker <michael.opdenacker@...> wrote:
A wrong path was given given the working directory.

Also revert the changes with "git reset --hard" to
have a clean state before further branch switches.
One change at a time please ☺️

Well, here, the two should go together. I admit my description is
probably misleading.

My initial "git checkout" was wrong (wrong path), so wasn't doing
anything. Now that "git checkout" works as expected, I need a way to
clean the branch after the docs are generated. Otherwise, I'll switch
branches in the rest of the script from an unclean state.

Signed-off-by: Michael Opdenacker <michael.opdenacker@...>
scripts/run-docs-build | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/scripts/run-docs-build b/scripts/run-docs-build
index 5d6d24a..c93b3e6 100755
--- a/scripts/run-docs-build
+++ b/scripts/run-docs-build
@@ -43,11 +43,12 @@ cp -r ./_build/final/* $outputdir/bitbake/next
# see the latest releases.
for branch in 1.46 1.48 1.50 1.52; do
git checkout $branch
- git checkout master doc/releases.rst
+ git checkout master releases.rst
make clean
make publish
mkdir $outputdir/bitbake/$branch
cp -r ./_build/final/* $outputdir/bitbake/$branch
+ git reset --hard
This should be done right after the git checkout. It's better to ensure what you build is clean that try to ensure the next oneto build has a clean env. Especially since checkouts can dirty the git repo I think (I've had this issue multiple times when switching between kernel branches far enough from one another).

Also git reset --hard is not enough. I use git clean -ffdx instead usually. Didn't have a problem with this one for a while now.

My point was just to undo the "git checkout" to fetch releases.txt from
"master", not to be a substitute for "make clean".  I can't do it right
after "git checkout" otherwise I'm not doing anything at all.

You have a valid point about a possible "dirty" git version though.
Fortunately, I checked and it seems that uncommitted changes have no
impact on the generated docs. I couldn't find any git commit anywhere.


Michael Opdenacker, Bootlin
Embedded Linux and Kernel engineering

Join to automatically receive all group messages.