
Both releases are missing an important patch that changes the displayed version from dev to the appropriate release number. This is confusing to the user and probably breaks some assumptions in some scripts. Ideally, the tags should have been moved with those patches applied to their respective branch but that is not a git best practice so we're stuck with this "hack" instead. 3.3.x releases aren't impacted as they got the patch applied. Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3.4 KiB
Executable File
#!/bin/bash
Called with $1 as the build directory
$2 as the path to yocto-docs
$3 as the path to bitbake
builddir=$1 ypdocs=$2/documentation/ bbdocs=$3/doc/ docs_buildtools=/srv/autobuilder/autobuilder.yoctoproject.org/pub/buildtools/x86_64-buildtools-docs-nativesdk-standalone-3.2+snapshot-20201105.sh outputdir=$builddir/output scriptdir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
cd $builddir mkdir buildtools $docs_buildtools -y -d $builddir/buildtools . $builddir/buildtools/environment-setup*
#wget https://downloads.yoctoproject.org/mirror/docbook-mirror/docbook-archives-20201105.tar.xz docbookarchive=/srv/autobuilder/autobuilder.yoctoproject.org/pub/docbook-mirror/docbook-archives-20201105.tar.xz mkdir $outputdir cd $outputdir tar -xJf $docbookarchive
cd $bbdocs git checkout master make clean make publish mkdir $outputdir/bitbake cp -r ./_build/final/* $outputdir/bitbake
git checkout master-next make clean make publish mkdir $outputdir/bitbake/next cp -r ./_build/final/* $outputdir/bitbake/next
stable branches
for branch in 1.46 1.48 1.50 1.52; do git checkout $branch make clean make publish mkdir $outputdir/bitbake/$branch cp -r ./_build/final/* $outputdir/bitbake/$branch done
only sync bitbake folder for now. We need bitbake to be published first
since the bitbake intersphinx index will be downloaded to build yocto-docs
cd $outputdir rsync -irlp --checksum --ignore-times --delete bitbake docs@docs.yoctoproject.org:docs/
cd $ypdocs git checkout master make clean make publish cp -r ./_build/final/* $outputdir
cd $ypdocs git checkout transition make clean make publish cp -r ./_build/final/* $outputdir/
cd $ypdocs git checkout master-next make clean make publish mkdir $outputdir/next cp -r ./_build/final/* $outputdir/next
stable branches
for branch in dunfell gatesgarth hardknott honister; do cd $ypdocs git checkout $branch make clean make publish mkdir $outputdir/$branch cp -r ./_build/final/* $outputdir/$branch done
Yocto Project releases/tags
v_sphinx='yocto-3.1.5' #This and newer versions have Sphinx docs. cd $ypdocs for tag in $(git tag --list 'yocto-'); do first=$(printf '%s\n%s' $tag $v_sphinx | sort --version-sort | head -n1) if [ "$first" = "$v_sphinx" ]; then cd $ypdocs git checkout $tag # yocto-3.3 and yocto-3.4 were tagged before the current_version in # conf.py was changed resulting in sphinx believing these are # development branches which breaks all sorts of assumptions. Moving a # tag isn't best practice so we just patch the releases here instead. if [ "$tag" = "yocto-3.3" ] || [ "$tag" = "yocto-3.4" ]; then git am "${scriptdir}/${tag}/0001-conf-update-for-release.patch" fi make clean make publish version=$(echo $tag | cut -c7-) mkdir $outputdir/$version cp -r ./_build/final/ $outputdir/$version fi done
get current release (e.g. most recent tag), and add a 'current' link
tag=$(git tag --list 'yocto-*' | sort --version-sort | tail -1 | cut -c7-) ln -s $tag $outputdir/current
Update switchers.js with the copy from master ypdocs
cd $outputdir find . -name switchers.js -not -path ./_static/switchers.js -exec cp ./_static/switchers.js {} ;
cd $outputdir rsync -irlp --checksum --ignore-times --delete . docs@docs.yoctoproject.org:docs/