Add scripts to export board status data to wiki
It's a start... Change-Id: Ibdb0b64ab0349df58bcad5ce553bf0dbec636925 Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Reviewed-on: http://review.coreboot.org/4483 Tested-by: build bot (Jenkins)
This commit is contained in:
parent
08c4150ec4
commit
274c6c2177
|
@ -0,0 +1,34 @@
|
|||
#!/bin/sh
|
||||
# usage: $0 [weekly|monthly|quarterly] < filenames
|
||||
# sorts files of the form VENDOR/BOARD/COMMIT/DATE/revision.txt
|
||||
# into buckets of the given granularity
|
||||
|
||||
weekly() {
|
||||
date --date="$1" +%YW%V
|
||||
}
|
||||
|
||||
monthly() {
|
||||
date --date="$1" +%Y-%m
|
||||
}
|
||||
|
||||
quarterly() {
|
||||
date --date="$1" "+%Y %m" | awk '{ q=int(($2-1)/3+1); print $1 "Q" q}'
|
||||
}
|
||||
|
||||
# TODO: restrict $1 to allowed values
|
||||
|
||||
curr=""
|
||||
sort -r -k4 -t/ | while read file; do
|
||||
timestamp=`printf $file | cut -d/ -f4`
|
||||
new=`$1 $timestamp`
|
||||
if [ "$new" != "$curr" ]; then
|
||||
if [ "$curr" != "" ]; then
|
||||
printf "\n"
|
||||
fi
|
||||
printf "$new:"
|
||||
curr=$new
|
||||
fi
|
||||
printf "$file "
|
||||
done
|
||||
printf "\n"
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
= coreboot status by mainboard =
|
||||
|
||||
This list contains reports of successful coreboot execution, ordered by date. It's shows which boards can actually run with current coreboot versions.
|
||||
|
||||
By sorting it by date, we encourage developers and users to keep ports current and well-tested.
|
||||
|
||||
Status data comes from the [http://review.coreboot.org/gitweb?p=board-status.git board status repository], which also contains the parser.
|
||||
The coreboot tree [http://review.coreboot.org/gitweb?p=coreboot.git;a=tree;f=util/board_status;hb=HEAD contains a tool] to generate and push suitable data.
|
||||
An account on review.coreboot.org is required for sending data.
|
|
@ -0,0 +1,82 @@
|
|||
#!/bin/bash
|
||||
# $1: file containing text
|
||||
|
||||
. ~/.wikiaccount
|
||||
WIKIAPI="http://www.coreboot.org/api.php"
|
||||
TITLE="Supported_Motherboards"
|
||||
cookie_jar="/tmp/wikicookiejar"
|
||||
#Will store file in wikifile
|
||||
|
||||
#################login
|
||||
#Login part 1
|
||||
CR=$(curl -sS \
|
||||
--location \
|
||||
--retry 2 \
|
||||
--retry-delay 5\
|
||||
--cookie $cookie_jar \
|
||||
--cookie-jar $cookie_jar \
|
||||
--user-agent "Curl Shell Script" \
|
||||
--keepalive-time 60 \
|
||||
--header "Accept-Language: en-us" \
|
||||
--header "Connection: keep-alive" \
|
||||
--compressed \
|
||||
--data-urlencode "lgname=${USERNAME}" \
|
||||
--data-urlencode "lgpassword=${USERPASS}" \
|
||||
--request "POST" "${WIKIAPI}?action=login&format=txt")
|
||||
|
||||
CR2=($CR)
|
||||
if [ "${CR2[9]}" = "[token]" ]; then
|
||||
TOKEN=${CR2[11]}
|
||||
else
|
||||
exit
|
||||
fi
|
||||
|
||||
#Login part 2
|
||||
CR=$(curl -sS \
|
||||
--location \
|
||||
--cookie $cookie_jar \
|
||||
--cookie-jar $cookie_jar \
|
||||
--user-agent "Curl Shell Script" \
|
||||
--keepalive-time 60 \
|
||||
--header "Accept-Language: en-us" \
|
||||
--header "Connection: keep-alive" \
|
||||
--compressed \
|
||||
--data-urlencode "lgname=${USERNAME}" \
|
||||
--data-urlencode "lgpassword=${USERPASS}" \
|
||||
--data-urlencode "lgtoken=${TOKEN}" \
|
||||
--request "POST" "${WIKIAPI}?action=login&format=txt")
|
||||
|
||||
###############
|
||||
#Get edit token
|
||||
CR=$(curl -sS \
|
||||
--location \
|
||||
--cookie $cookie_jar \
|
||||
--cookie-jar $cookie_jar \
|
||||
--user-agent "Curl Shell Script" \
|
||||
--keepalive-time 60 \
|
||||
--header "Accept-Language: en-us" \
|
||||
--header "Connection: keep-alive" \
|
||||
--compressed \
|
||||
--request "POST" "${WIKIAPI}?action=tokens&format=txt")
|
||||
|
||||
CR2=($CR)
|
||||
EDITTOKEN=${CR2[8]}
|
||||
if [ ${#EDITTOKEN} != 34 ]; then
|
||||
exit
|
||||
fi
|
||||
#########################
|
||||
|
||||
CR=$(curl -sS \
|
||||
--location \
|
||||
--cookie $cookie_jar \
|
||||
--cookie-jar $cookie_jar \
|
||||
--user-agent "Curl Shell Script" \
|
||||
--keepalive-time 60 \
|
||||
--header "Accept-Language: en-us" \
|
||||
--header "Connection: keep-alive" \
|
||||
--header "Expect:" \
|
||||
--form "token=${EDITTOKEN}" \
|
||||
--form "title=${TITLE}" \
|
||||
--form "text=<$1" \
|
||||
--request "POST" "${WIKIAPI}?action=edit&")
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/sh
|
||||
ls -d */*/*/*/ | `dirname $0`/bucketize.sh weekly | `dirname $0`/towiki.sh
|
|
@ -0,0 +1,27 @@
|
|||
#!/bin/sh
|
||||
export GIT_DIR=../coreboot/.git
|
||||
CODE_GITWEB="http://review.coreboot.org/gitweb?p=coreboot.git;a=commitdiff;h="
|
||||
STATUS_GITWEB="http://review.coreboot.org/gitweb?p=board-status.git;a=blob;hb=HEAD;f="
|
||||
if [ -f `dirname $0`/foreword.wiki ]; then
|
||||
cat `dirname $0`/foreword.wiki
|
||||
fi
|
||||
while read line; do
|
||||
timeframe=`echo $line | cut -d: -f1`
|
||||
rest=`echo $line | cut -d: -f2-`
|
||||
echo "= $timeframe ="
|
||||
for i in $rest; do
|
||||
vendor_board=`echo $i | cut -d/ -f1-2`
|
||||
commit=`echo $i | cut -d/ -f3`
|
||||
datetime=`echo $i | cut -d/ -f4`
|
||||
datetime_human=`LC_ALL=C TZ=UTC date --date="$datetime"`
|
||||
upstream=`grep "^Upstream revision:" $vendor_board/$commit/$datetime/revision.txt |cut -d: -f2-`
|
||||
upstream=`git log -1 --format=%H $upstream`
|
||||
echo $vendor_board at $datetime_human
|
||||
echo "[$CODE_GITWEB$upstream upstream tree]"
|
||||
ls $vendor_board/$commit/$datetime/* |grep -v '/revision.txt$' | while read file; do
|
||||
echo "* [$STATUS_GITWEB$file `basename $file`]"
|
||||
done
|
||||
echo
|
||||
done
|
||||
done
|
||||
|
Loading…
Reference in New Issue