Skip to content
Commits on Source (2)
......@@ -324,6 +324,7 @@ See link:https://jenkins.debian.net/userContent/about.html["about jenkins.debian
** html:
*** leave all pkg.html files, delete them (much) later, then check all pkg.* files are gone
*** recreate them newly as index.html
**** provide links to debian pages if same package name exist
*** create new job to recreate all pkg pages
*** create json
** misc:
......
......@@ -37,6 +37,8 @@ HEIGHT=960
PAGE=""
TITLE=""
STATE=""
REPOSITORY=""
PKG=""
get_state_from_counter() {
local counter=$1
......@@ -51,6 +53,15 @@ get_state_from_counter() {
esac
}
include_pkg_html_in_page(){
cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
}
include_pkg_table_header_in_page(){
write_page " <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
}
repostats(){
#
# gather data
......@@ -231,12 +242,14 @@ repository_pages(){
archlinux_page_header
archlinux_page_repostats
SUITE="archlinux_$REPOSITORY"
TESTED=$(query_db "SELECT count(*) FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE';")
TESTED=$(query_db "SELECT count(*) FROM sources AS s JOIN results AS r ON s.id=r.package_id
WHERE s.architecture='x86_64' AND s.suite='$SUITE';")
write_page "<h2>$TESTED packages in repository $REPOSITORY</h2>"
write_page " <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
REPO_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE' ORDER BY r.status,s.name")
include_pkg_table_header_in_page
REPO_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id
WHERE s.architecture='x86_64' AND s.suite='$SUITE' ORDER BY r.status,s.name")
for PKG in $REPO_PKGS ; do
cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
include_pkg_html_in_page
done
write_page " </table>"
archlinux_page_footer
......@@ -250,27 +263,31 @@ state_pages(){
echo "$(date -u) - starting to write page for state $STATE'."
archlinux_page_header
archlinux_page_repostats
TESTED=$(query_db "SELECT count(*) FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND r.status LIKE '$STATE%';")
TESTED=$(query_db "SELECT count(*) FROM sources AS s JOIN results AS r ON s.id=r.package_id
WHERE s.architecture='x86_64' AND r.status LIKE '$STATE%';")
if [ "$STATE" = "UNKNOWN" ] ; then
# untested packages are also state UNKNOWN...
UNTESTED=$(query_db "SELECT count(s.name) FROM sources AS s WHERE s.architecture='x86_64' AND s.id NOT IN (SELECT package_id FROM results)")
UNTESTED=$(query_db "SELECT count(s.name) FROM sources AS s
WHERE s.architecture='x86_64' AND s.id NOT IN (SELECT package_id FROM results)")
if [ $UNTESTED -ne 0 ] ; then
let TESTED=$TESTED+$UNTESTED
fi
fi
write_page "<h2>$TESTED packages in $STATE state</h2>"
write_page " <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
include_pkg_table_header_in_page
for REPOSITORY in $ARCHLINUX_REPOS ; do
SUITE="archlinux_$REPOSITORY"
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%' ORDER BY r.status,s.name")
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id
WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%' ORDER BY r.status,s.name")
for PKG in ${STATE_PKGS} ; do
cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
include_pkg_html_in_page
done
if [ "$STATE" = "UNKNOWN" ] ; then
# untested packages are also state UNKNOWN...
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND s.id NOT IN (SELECT package_id FROM results) ORDER BY s.name")
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s
WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND s.id NOT IN (SELECT package_id FROM results) ORDER BY s.name")
for PKG in ${STATE_PKGS} ; do
cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
include_pkg_html_in_page
done
fi
done
......@@ -288,25 +305,29 @@ repository_state_pages(){
echo "$(date -u) - starting to write page for packages in $REPOSITORY in state $STATE'."
archlinux_page_header
archlinux_page_repostats
TESTED=$(query_db "SELECT count(*) FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%';")
TESTED=$(query_db "SELECT count(*) FROM sources AS s JOIN results AS r ON s.id=r.package_id
WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%';")
if [ "$STATE" = "UNKNOWN" ] ; then
# untested packages are also state UNKNOWN...
UNTESTED=$(query_db "SELECT count(s.name) FROM sources AS s WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND s.id NOT IN (SELECT package_id FROM results)")
UNTESTED=$(query_db "SELECT count(s.name) FROM sources AS s
WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND s.id NOT IN (SELECT package_id FROM results)")
if [ $UNTESTED -ne 0 ] ; then
let TESTED=$TESTED+$UNTESTED
fi
fi
write_page "<h2>$TESTED packages in $REPOSITORY in $STATE state</h2>"
write_page " <table><tr><th>repository</th><th>source package</th><th>version</th><th>test result</th><th>test date<br />test duration</th><th>1st build log<br />2nd build log</th></tr>"
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%' ORDER BY r.status,s.name")
include_pkg_table_header_in_page
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s JOIN results AS r ON s.id=r.package_id
WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND r.status LIKE '$STATE%' ORDER BY r.status,s.name")
for PKG in ${STATE_PKGS} ; do
cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
include_pkg_html_in_page
done
if [ "$STATE" = "UNKNOWN" ] ; then
# untested packages are also state UNKNOWN...
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND s.id NOT IN (SELECT package_id FROM results) ORDER BY s.name")
STATE_PKGS=$(query_db "SELECT s.name FROM sources AS s
WHERE s.architecture='x86_64' AND s.suite='$SUITE' AND s.id NOT IN (SELECT package_id FROM results) ORDER BY s.name")
for PKG in ${STATE_PKGS} ; do
cat $ARCHBASE/$REPOSITORY/$PKG/pkg.html >> $PAGE 2>/dev/null || true
include_pkg_html_in_page
done
fi
write_page " </table>"
......