aboutsummaryrefslogtreecommitdiff
path: root/web
Commit message (Collapse)AuthorAgeFilesLines
* web/graph.php: drop, as pGraph is not PHP7 compatibleGravatar Thomas Petazzoni2020-08-152-67/+0
| | | | | | | | The pchart library that was used to generate the graph is no longer maintained, and not compatible with PHP7, so let's drop support for displaying this graph of build results. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/funcs.inc.php: access filters['symbols'] after checking it existsGravatar Thomas Petazzoni2020-07-041-2/+6
| | | | | | This avoids a warning with PHP 7.4. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/search.{js, php}: pass the event to the submit handlerGravatar Victor Huesca2019-09-252-2/+2
| | | | | | | | | | | | | Some web-browsers do not define the global event object on functions callback (see [1]). This cause an 'undefined event' error on the search page. Passing the event argument from the function caller fix this (at least it does on Firefox ESR 60.0.8). [1] http://buildroot-busybox.2317881.n4.nabble.com/New-search-features-on-autobuild-buildroot-org-tt230624.html Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Acked-by: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/func.inc.php: add a link to the search page in the footerGravatar Victor Huesca2019-08-201-0/+1
| | | | | | | Allow to access the new search page from the footer. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/stylesheet.css: add styling for the request pageGravatar Victor Huesca2019-08-201-0/+64
| | | | | | | The style follows the existing visual aspect of the stats page. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/search: new page to help making request to the autobuild databaseGravatar Victor Huesca2019-08-202-0/+157
| | | | | | | | | | | | | | | | | The current way to make searches is to manually pass GET parameters to the URL, which is nice for automation and simple request but it gets messy with more complicated requests -- especially with the introduction of configuration symbols. This patch provides a handy interface to ask more sophisticated configs to the autobuild database. The implementation uses normal HTML forms but implements a hook to the submit method in order to handle config symbols from the textarea and keep the URL clean. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/index.php: add support for configuration symbols via GETGravatar Victor Huesca2019-08-131-0/+3
| | | | | | | | | | | | | | This patch add support of a 'symbols[<symbol>]=<value>' option via GET as it is done with other fields. This syntax allows to pass multiple configuration symbols and values while keeping the URL clean. This interface allows to search configurations with specific symbols and values. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/funcs.inc.php: add support for filtering autobuild results by ↵Gravatar Victor Huesca2019-08-131-6/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | configuration options This patch improves 'bab_get_results()' and 'bab_total_results_count()' so that we can filter autobuilder results from the database with a list of configuration options and values. The SQL query has been optimized to scale the better when multiple symbols are involved altogether. There is at least 3 ways to get the same results: 'join', 'where in' and 'intersect'. - The 'join' does not scale at all and can only return a dozen configurations in a reasonable amount of time. - The 'intersect' outperforms the two others and allows to add as many configuration symbols as wanted, even when thousand of configs are returned. - The 'where in' is the compromise solution. It works well for asking two or three configuration symbols at the same time but can become a real bottleneck when those symbols are commons are returns a too many configurations. Also its results depends on the underlying DBMS, this make its performances unpredictable. The current deployment uses an old mysql server that does not supports the 'intersect' queries. In order to scale well with a potential migration of the SQL server to a MariaDB 10.3.10+, this patch implements both the 'intersect' and 'where in' versions of the query. The default behavior is to look for 'intersect' support and fallback on the 'where in' query otherwise. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/db.inc.php: add support to test if the database supports a featureGravatar Victor Huesca2019-08-131-2/+26
| | | | | | | | | | | | | | This patch allows to test if the database supports a given feature. Any feature to be test against can be added by simply adding a new case to the switch. This patch allows to check if the database engine supports the 'intersect' SQL keyword. This keyword was implemented in mariadb 10.3.10 released in oct. 2018 Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/index.php: allow filtering by dateGravatar Victor Huesca2019-08-131-0/+3
| | | | | | | | | | | This patch provide a way to pass a date as part of the filter. This date can be either a single date or a couple 'start and end' dates as an associative array to cover every case: Example: "date[from]=2019-03-03&date[to]=2019-07-21" Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/funcs.inc.php: add support for filtering by dateGravatar Victor Huesca2019-08-131-0/+10
| | | | | | | | | | This patch provides support for filtering by date in the 'bab_format_sql_filter' function. The date can be either a singe value -- in which case it is assumed as a 'from' date -- or an associative array with 'from' and/or 'to' keys defined. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/index.php: reword the 'format_duration' functionGravatar Victor Huesca2019-08-121-20/+2
| | | | | | | | | The format_duration manually compute everything when it could just use the build-in date format function and trim the beginning for the same result. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/funcs.inc.php: fix 'bab_format_sql_filter' indentationGravatar Victor Huesca2019-08-121-21/+21
| | | | | | | | | The 'bab_format_sql_filter' function uses tabs indentation whereas the overall file uses two spaces. This patch simply replace those tabs by spaces for consistency. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/import.inc.php: support reading failure reason from reason fileGravatar Atharva Lele2019-08-011-11/+15
| | | | | Signed-off-by: Atharva Lele <itsatharva@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/schema.sql: add indexes on the database schemaGravatar Victor Huesca2019-07-121-1/+6
| | | | | | | | | | | | | | This commit adds indexes on the two columns of `symbol_per_result` to significantly improve queries involving symbols (this is an over 80M rows table). This table is heavily used to retrieve results matching a symbol, and without those indexes, the duration of such queries is prohibitive. While at it, we also mark these columns as foreign keys to ensure the integrity of the database. Signed-off-by: Victor Huesca <victor.huesca@bootlin.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/import.inc.php: compress files laterGravatar Thomas Petazzoni2019-06-201-11/+11
| | | | | | | | | | | | | | | It turns out that build-time.log is used in various places in the result importing process, and due to commit d041b1fc9fc984dbd3b7228549fdecdb2f85c335 ("web/import.inc.php: compress some result files"), we are now compressing build-time.log, but a bit too early. Due to this for example, the build duration is no longer calculated. To address this, we compress the files at the very end of the import process, once all the details have been extracted from build-time.log. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/import.inc.php: compress some result filesGravatar Thomas Petazzoni2019-06-191-0/+11
| | | | | | | | Some of the result files are quite large and not used that frequently. In order to save disk space on the server, let's store them compressed. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web: show proper result count and currently displayed countGravatar Thomas Petazzoni2018-11-012-5/+11
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web: introduce bab_format_sql_filter() functionGravatar Thomas Petazzoni2018-11-011-22/+28
| | | | | | This will allow to re-use it in bab_total_results_count(). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web: propagate filters in the prev/next linksGravatar Thomas Petazzoni2018-11-011-2/+20
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web: rework filtering logicGravatar Thomas Petazzoni2018-11-012-54/+39
| | | | | | | This makes the code shorter, and will allow to fix the next/previous links to keep the filters. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/schema.sql: fix default value for dateGravatar Thomas Petazzoni2018-09-211-1/+1
| | | | | | | '0000-00-00 00:00:00' is no longer a valid datetime value for MySQL, so let's use what is considered a valid default value. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* Allow '%' as a wildcard for the reason argument in index.phpGravatar Thomas Petazzoni2018-04-012-2/+2
| | | | | | | | | | | | | | | This allows to do: http://autobuild.buildroot.org/?reason=php-% to get all php build failures, not only the ones for a specific version. Or: http://autobuild.buildroot.org/?reason=qt5% to see all Qt5 failures. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/import.inc.php: remove debug messageGravatar Thomas Petazzoni2018-02-061-4/+2
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/import.inc.php: failure reason use build-time.logGravatar Matthew Weber2018-02-061-2/+9
| | | | | | | | | | | | | When the make output doesn't parse to provide a result and unknown is assumed, check the build-time.log and see if the last line was a <stamp>:start:<pkgname>. IF so, use this pkgname instead before declaring unknown. This was tested against the ti-cgt-pru hang. http://autobuild.buildroot.net/results/60e/60e11a3bb90b9f41259e4a970081b72d8b8d100b// Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* web/schema.sql: schema update for branch varcharGravatar Matthew Weber2018-02-061-0/+1
| | | | | Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* graph.php, stats.php: add support for viewing different branchesGravatar Thomas Petazzoni2017-11-053-5/+41
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* {stats,graph}.php: only show results for the master branchGravatar Thomas Petazzoni2017-11-032-4/+4
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* graph.php: fix query for recent MySQL versionsGravatar Thomas Petazzoni2017-11-021-1/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* utils,web: migrate to PHP 7Gravatar Thomas Petazzoni2017-11-027-29/+25
| | | | | | | | | Main changes are: - Use mysqli API instead of mysql API - Use preg_match() instead of ereg() Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* stats.php: fix SQL query with new MySQL versionsGravatar Thomas Petazzoni2017-11-021-1/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* index.php: display branch nameGravatar Thomas Petazzoni2017-11-012-3/+10
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* import.inc.php: parse a "branch" file in the build resultsGravatar Thomas Petazzoni2017-11-011-2/+11
| | | | | | | This is the first step towards building multiple branches in the autobuilders. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* schema.sql: add missing constraint in config_symbol tableGravatar Thomas Petazzoni2017-11-011-0/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update SQL schemaGravatar Thomas Petazzoni2017-10-201-7/+16
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* import.inc.php: reject bogus qemu-user failuresGravatar Thomas Petazzoni2017-08-151-0/+7
| | | | | | | In order to avoid build slaves to report bogus qemu-user failures, let's skip such build results. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update Buildroot toolchainsGravatar Thomas Petazzoni2017-07-1631-52/+52
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update pre-built Buildroot ARC toolchainGravatar Thomas Petazzoni2017-07-051-1/+1
| | | | | | | | | | Rebuild after building statically the flex library, to avoid build failures such as: /home/buildroot/build/instance-0/output/host/usr/bin/arc-linux-ranlib libargp.a /home/buildroot/build/instance-0/output/host/usr/bin/arc-linux-ranlib: error while loading shared libraries: libfl.so.2: cannot open shared object file: No such file or directory Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update all Buildroot pre-built toolchainsGravatar Thomas Petazzoni2017-07-0531-31/+31
| | | | | | | | All Buildroot toolchains have been rebuilt. The main reason for the rebuild is that uClibc is now built with minimal built-in libintl enabled. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* web/import.inc.php: do not make the build-time.log file mandatoryGravatar Thomas Petazzoni2017-07-031-2/+5
| | | | | | | | | | | | Some failures happen early in the build process (such as the "XYZ is in the dependency chain of ABS" error), even before a build-time.log is generated. Currently, such build results are discarded, which isn't nice. So, let's accept results without a build-time.log, and assume their duration was 0 seconds. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Remove Sourcery x86 and SuperH toolchainsGravatar Thomas Petazzoni2017-06-203-9/+0
| | | | | | | | | Those toolchains are super-old, and uses glibc 2.17, which has clock_*() functions in librt, causing build issues in a number of packages. Those toolchains are about to be removed from Buildroot, so drop them first from the autobuilders. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update Buildroot pre-built toolchainsGravatar Thomas Petazzoni2017-06-1231-79/+79
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update ARC pre-built toolchainGravatar Thomas Petazzoni2017-05-251-1/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update ARC pre-built toolchainGravatar Thomas Petazzoni2017-05-131-1/+1
| | | | | | | It has been rebuilt with ARC toolchain components in version arc-2017.03-rc2. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Upgrade ARM/Cortex-M4 toolchain with binutils 2.28Gravatar Thomas Petazzoni2017-05-051-2/+2
| | | | | | This will fix the elf2flt segfaults. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Fix ARC toolchain configuration to use Buildroot pre-built toolchainGravatar Thomas Petazzoni2017-05-041-0/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* toolchains/configs: make external toolchain explicitGravatar Arnout Vandecappelle (Essensium/Mind)2017-05-044-0/+4
| | | | | | | | | | | | | | | | | | | | | | Some of the toolchain configs rely on the default to select which external toolchain to use. However, this is wrong for two reasons: - when the defaults change in Buildroot, the toolchain config will change under the hood; - when the autobuild-run script adds some options (in particular, BR2_STATIC_LIBS), it is possible that the default changes (or is no longer available). Both can be fixed by explicitly adding the external toolchain option we want to the config file. Indeed, the autobuild-run script will then detect that there is a difference between the generated config and the base one, and will discard it. Fixes: http://autobuild.buildroot.net/results/39888c188c0d13219a8419897a833275fcc81597 Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Cc: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update Microblaze pre-built toolchainGravatar Thomas Petazzoni2017-05-041-1/+1
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* toolchains/configs: update pre-built uClibc toolchainsGravatar Thomas Petazzoni2017-04-3019-19/+19
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Update Buildroot pre-built uClibc toolchainsGravatar Thomas Petazzoni2017-04-0520-20/+20
| | | | | | Update uClibc toolchains after fixing the 1.0.23 uClibc-ng regression. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>