--- builds_bin/update_templates 2017/03/28 17:53:55 1.19 +++ builds_bin/update_templates 2020/06/14 05:54:39 1.20 @@ -5,15 +5,12 @@ # Clean up tmp dir rm -rf /var/lib/pootle/tmp -mkdir -p /var/lib/pootle/tmp/ /var/www/html/pootle/{patches,errors,anaconda} +mkdir -p /var/lib/pootle/tmp/ /var/www/html/{patches,errors,anaconda} #========================================================== -# to help debugging set to 1 and it will help to follow where errors occurs -debug=0 export CVS_RSH=ssh -(($debug)) && builtin echo "Update/expand smeserver cvs" # Update/expand smeserver cvs cd /var/lib/pootle/cvs/smeserver for pkg in *e-smith*/sme* *sme*/sme* anaconda/sme* booty/sme* @@ -26,7 +23,6 @@ do make -C $pkg prep &> /dev/null done -(($debug)) && builtin echo "Update/expand smecontribs cvs" # Update/expand smecontribs cvs cd /var/lib/pootle/cvs/smecontribs for pkg in *e-smith*/contribs* *sme*/contribs* @@ -46,14 +42,12 @@ cd /var/lib/pootle/tmp # Sync database stores to filesystem django-admin sync_stores --settings=pootle.settings &> /dev/null -for ver in sme9 sme10 +for ver in sme7 sme8 do - (($debug)) && echo&& echo builtin echo "anaconda $ver" # debug jpp # Update anaconda template anacondatmpl $ver > anaconda.pot diffmv anaconda.pot /var/lib/pootle/po/$ver/templates/anaconda.pot - (($debug)) && echo&& echo builtin echo "console template $ver " # Update console templates potempl $(find /var/lib/pootle/cvs/smeserver/e-smith-quota/$ver/ -type f -name adminQuotaSummary.tmpl) > adminQuotaSummary.tmpl.pot diffmv adminQuotaSummary.tmpl.pot /var/lib/pootle/po/$ver/templates/adminQuotaSummary.tmpl.pot @@ -66,7 +60,6 @@ do potempl $(find /var/lib/pootle/cvs/smeserver/e-smith-quota/$ver/ -type f -name userOverQuota.tmpl) > userOverQuota.tmpl.pot diffmv userOverQuota.tmpl.pot /var/lib/pootle/po/$ver/templates/userOverQuota.tmpl.pot - (($debug)) && echo&& echo builtin echo "panel template $ver " # Update panel templates for pkg in $(find /var/lib/pootle/cvs/smeserver/*/$ver/*/root/etc/e-smith/locale/en-us/ -type f -not -regex '.*\+ldap/.*' 2> /dev/null) do @@ -75,19 +68,15 @@ do done done -for ver in contribs9 +for ver in contribs7 contribs8 do - nver=$(echo $ver| tr -dc '0-9') - if [ "$nver" -ge "9" ] + if [ "$ver" == "contribs7" ] then - (($debug)) && echo&& echo builtin echo "sme*admin template $ver " - # Update sme*admin template - #echo "smeserver-sme${nver}admin" - potempl /var/lib/pootle/cvs/smecontribs/smeserver-sme${nver}admin/$ver/*/root/{etc/e-smith/web/functions/sme${nver}admin,usr/bin/sme${nver}admind} > sme${nver}admin.pot - diffmv sme${nver}admin.pot /var/lib/pootle/po/$ver/templates/sme${nver}admin.pot + # Update sme7admin template + potempl /var/lib/pootle/cvs/smecontribs/smeserver-sme7admin/$ver/*/root/{etc/e-smith/web/functions/sme7admin,usr/bin/sme7admind} > sme7admin.pot + diffmv sme7admin.pot /var/lib/pootle/po/$ver/templates/sme7admin.pot fi - (($debug)) && echo&& echo builtin echo "contribs others template $ver" # Update contrib panel templates for pkg in $(find /var/lib/pootle/cvs/smecontribs/*/$ver/*/root/etc/e-smith/locale/en-us/ -type f 2> /dev/null) do @@ -102,7 +91,6 @@ done rsync -amR --include '*/' --include '*.po' --exclude '*' /var/lib/pootle/po/./{sme,contribs}[0-9]/ /var/lib/pootle/tmp/errors/ find /var/lib/pootle/tmp/errors/ -type f -exec sed -i '/^#~/d' {} \+ -(($debug)) && echo&& echo builtin echo "Apply templates to languages" # Apply templates to languages for lang in $(ls -I templates /var/lib/pootle/po/{sme,contribs}[0-9] 2> /dev/null | grep '[[:alpha:]]$' | sort -u) do @@ -135,23 +123,19 @@ do done done -(($debug)) && echo&& echo builtin echo "Copy po files so we can create error reports" # Copy po files so we can create error reports rsync -amR --include '*/' --include '*.po' --exclude '*' /var/lib/pootle/po/./{sme,contribs}[0-9]/ /var/lib/pootle/tmp/errors/ #========================================================== -(($debug)) && echo&& echo builtin echo "Sync filesystem to database stores" # Sync filesystem to database stores django-admin update_stores --settings=pootle.settings &> /dev/null -(($debug)) && echo&& echo builtin echo "Recalculate stats and restart server" # Recalculate stats and restart server django-admin refresh_stats --settings=pootle.settings &> /dev/null #========================================================== -(($debug)) && echo&& echo builtin echo "Create error compendium to assist translators" # Create error compendium to assist translators find /var/lib/pootle/tmp/errors/ -type f -exec sed -i '/^#~/d' {} \+ for lang in $(ls -I templates /var/lib/pootle/po/{sme,contribs}[0-9] 2> /dev/null | grep '[[:alpha:]]$' | sort -u) @@ -162,10 +146,9 @@ do | sed ':a;/^\n*$/{$d;N;ba;}' \ > errors-$lang.err chmod 644 errors-$lang.err - diffmv errors-$lang.err /var/www/html/pootle/errors/errors-$lang.err + diffmv errors-$lang.err /var/www/html/errors/errors-$lang.err done -(($debug)) && echo&& echo builtin echo "Build diffs for languages" # Build diffs for languages for pkg in $(ls /var/lib/pootle/po/{sme,contribs}[0-9]/templates/ | sed -n 's@\.pot@@p' | sort -u) do @@ -176,13 +159,9 @@ do then ls /var/lib/pootle/po/*/*/$pkg.po | cut -d/ --output-delimiter " " -f6,7 | while read ver lang do - [[ $ver == *7 ]] && continue - [[ $ver == *8 ]] && continue - - (($debug)) && echo&& echo builtin echo "anaconda $ver $lang " - mkdir -p /var/www/html/pootle/anaconda/$ver/$lang/LC_MESSAGES - anacondagen $ver $lang > /var/www/html/pootle/anaconda/$ver/$lang/LC_MESSAGES/anaconda.mo - [ -s /var/www/html/pootle/anaconda/$ver/$lang/LC_MESSAGES/anaconda.mo ] || rm -rf /var/www/html/pootle/anaconda/$ver/$lang + mkdir -p /var/www/html/anaconda/$ver/$lang/LC_MESSAGES + anacondagen $ver $lang > /var/www/html/anaconda/$ver/$lang/LC_MESSAGES/anaconda.mo + [ -s /var/www/html/anaconda/$ver/$lang/LC_MESSAGES/anaconda.mo ] || rm -rf /var/www/html/anaconda/$ver/$lang done else pkgs=$(ls -d /var/lib/pootle/cvs/*/smeserver-$pkg/*/*/root 2> /dev/null) @@ -190,13 +169,8 @@ do echo "$pkgs" | cut -d/ --output-delimiter " " -f8,9 | while read ver pkgname do - [[ $ver == *7 ]] && continue - [[ $ver == *8 ]] && continue - - (($debug)) && echo&& echo builtin echo "$pkg $ver" for lang in $(ls -I templates /var/lib/pootle/po/$ver/ 2> /dev/null | grep '[[:alpha:]]$' | sort -u) do - (($debug)) && echo&& echo builtin echo "* $pkg $lang " if [ -f "/var/lib/pootle/po/$ver/$lang/${pkg}.po" ] then mkdir -p diff/$ver/${pkgname}.update/po/$lang @@ -212,23 +186,15 @@ do echo "$pkgs" | grep -qv '/contribs[0-9]/' && pkgs=$(echo "$pkgs" | grep '/contribs[0-9]/'; ls -d /var/lib/pootle/cvs/*/smeserver-locale/*/*/root) echo "$pkgs" | cut -d/ --output-delimiter " " -f8,9 | while read ver pkgname do - [[ $ver == *7 ]] && continue - [[ $ver == *8 ]] && continue - - if [[ $ver == contribs* ]] + if echo $ver | grep -q contribs then - if [ -f /var/lib/pootle/templates/$ver/$pkg.orig ] - then - (($debug)) && echo&& echo builtin echo "$pkg update $ver" - mkdir -p diff/$ver/${pkgname}.update/$(localedir en-us $pkg) - cat /var/lib/pootle/templates/$ver/$pkg.orig \ - | perl -pe 's@_AMP_@&@g;s@_{_@<@g;s@_}_@>@g' \ - > diff/$ver/${pkgname}.update/$(localedir en-us $pkg)/$pkg - fi + mkdir -p diff/$ver/${pkgname}.update/$(localedir en-us $pkg) + cat /var/lib/pootle/templates/$ver/$pkg.orig \ + | perl -pe 's@_AMP_@&@g;s@_{_@<@g;s@_}_@>@g' \ + > diff/$ver/${pkgname}.update/$(localedir en-us $pkg)/$pkg fi for lang in $(ls -I templates /var/lib/pootle/po/$ver/ 2> /dev/null | grep '[[:alpha:]]$' | sort -u) do - (($debug)) && echo&& echo builtin echo "* $pkg $lang " mkdir -p diff/$ver/${pkgname}.update/$(localedir $lang $pkg) xmlgen $ver /var/lib/pootle/po/$ver/$lang/${pkg}.po \ > diff/$ver/${pkgname}.update/$(localedir $lang $pkg)/$pkg @@ -237,23 +203,22 @@ do fi done -(($debug)) && echo&& echo builtin echo "Build patches" # Build diffs ls -d diff/*/* | sed 's@.update$@@' | cut -d/ --output-delimiter " " -f2,3 | while read ver pkg do - mkdir -p /var/www/html/pootle/patches/$ver - rm -f /var/www/html/pootle/patches/$ver/$(echo $pkg | sed 's/-[^-]\+$//')-*-locale-*.patch + mkdir -p /var/www/html/patches/$ver + rm -f /var/www/html/patches/$ver/$(echo $pkg | sed 's/-[^-]\+$//')-*-locale-*.patch if [ -d "diff/$ver/$pkg.update/root" ] then diff -ruN {/var/lib/pootle/cvs/*/*/$ver/$pkg,diff/$ver/$pkg.update}/root/etc/e-smith/locale \ | sed 's@^\(---\|+++\) [^ ]\+/\([^/]\+/root/.*\)@\1 \2@;/^diff -ruN/d' \ - >> /var/www/html/pootle/patches/$ver/$pkg-locale-$(date +%F).patch + >> /var/www/html/patches/$ver/$pkg-locale-$(date +%F).patch fi if [ -d "diff/$ver/$pkg.update/po" ] then diff -ruN {/var/lib/pootle/cvs/*/*/$ver/$pkg,diff/$ver/$pkg.update}/po \ | sed 's@^\(---\|+++\) [^ ]\+/\([^/]\+/po/.*\)@\1 \2@;/^diff -ruN/d' \ - >> /var/www/html/pootle/patches/$ver/$pkg-locale-$(date +%F).patch + >> /var/www/html/patches/$ver/$pkg-locale-$(date +%F).patch fi done