summaryrefslogtreecommitdiff
path: root/ports-mgmt/tinderbox
diff options
context:
space:
mode:
authorIon-Mihai Tetcu <itetcu@FreeBSD.org>2008-11-12 15:58:29 +0000
committerIon-Mihai Tetcu <itetcu@FreeBSD.org>2008-11-12 15:58:29 +0000
commita689ee9d7ebe6534edb96ef578d52bdb08680985 (patch)
treef8f44676425893870dbc692ad205dcef5c71db68 /ports-mgmt/tinderbox
parentFix a typo in Config/exports.y (diff)
Update to 3.1.1 - Bug fix and feature release.
This release brings many bug fixes and some new features, particularly with the webui frontend: * The tinderd.sh rc.d script has been renamed tinderd, and modernized. See the README for more details. * A tinderd_debug option has been added to the tinderd rc.d script to control whether or not to write output to /dev/null. * Add a new tinderd config option, TINDERD_LOGFILE. When this is set, all tinderbuild output from a tinderd cycle will be appended to this logfile. By default, the logfile is /dev/null. * Reintroduce user permissions functionality in the webui from 2.x. * Add RSS support for the latest_buildports view (webui). * Add buttons to tinderd queue view to remove all or all built entries from the queue (webui). * Automatically set rootdir and wwwrooturi variable (webui). * Show target port of current build (webui). * Fix a slew of Postgres upgrade and install bugs. Note: not all upgrade bugs have been fixed. The schema changes in 3.1 may need to be applied manually to Postgres databases. * Fix a case where a failed build could lead to false-positive leftovers. * Fix a regression where the wrong module name was used. This broke tinderd configuration. * Prevent dereferencing a null value in the Build Ports Queue code when a port is no longer associated to a Build. * Fix rescanPorts' command line arguments, and allow it to be invoked as a shell command. * Use the installed Jail's /usr/share/mk directory when doing a make distribution. This fixes a Jail build of 7.X on recent -CURRENT. * Add -k to the conig-recursive command so that it doesn't die if one chooses to skip a port. * Don't make it fatal if the rm of the directory fails in cleanDir. This may very well fail if the target is a mount point. * Some setup steps in the README have been clarified. !!!NOTE!!!This release includes a schema change, so be sure to run the following before using 3.1: ./tc Upgrade The contributors to this release are Beat Gätzi, Ion-Mihai Tetcu, Aron Schlesinger, Alexander Logvinov, Wesley Shields, Martin Wilke, and Boris Samorodov. Local patches: - install a favicon for the webui - show last 30 ports per page in "Current and Latest Builds" page (webui) - when sorting by "Last Build Attempt" in list build page sort descending -- latest built first (webui) PR: ports/128785 (based on) Submitted by: bsam@
Notes
Notes: svn path=/head/; revision=222773
Diffstat (limited to 'ports-mgmt/tinderbox')
-rw-r--r--ports-mgmt/tinderbox/Makefile29
-rw-r--r--ports-mgmt/tinderbox/distinfo9
-rw-r--r--ports-mgmt/tinderbox/files/extra-patch-webui__core__TinderboxDS.php13
-rw-r--r--ports-mgmt/tinderbox/files/extra-patch-webui__module__moduleBuildPorts.php11
-rw-r--r--ports-mgmt/tinderbox/files/patch-lib__Tinderbox__TinderboxDS.pm33
-rw-r--r--ports-mgmt/tinderbox/files/patch-lib__tc_command.pl20
-rw-r--r--ports-mgmt/tinderbox/files/patch-sql__genschema19
-rw-r--r--ports-mgmt/tinderbox/files/patch-sql__schema.pgsql.pre20
-rw-r--r--ports-mgmt/tinderbox/files/pkg-message.in4
-rw-r--r--ports-mgmt/tinderbox/pkg-plist6
10 files changed, 53 insertions, 111 deletions
diff --git a/ports-mgmt/tinderbox/Makefile b/ports-mgmt/tinderbox/Makefile
index 426ec518a8b3..d120a963a574 100644
--- a/ports-mgmt/tinderbox/Makefile
+++ b/ports-mgmt/tinderbox/Makefile
@@ -6,11 +6,14 @@
PORTNAME= tinderbox
#DISTVERSION= ${PORTVERSION}-${PORTREVISION}
-PORTVERSION= 3.0.0
-PORTREVISION= 2
+PORTVERSION= 3.1.1
CATEGORIES= ports-mgmt
-MASTER_SITES= http://T32.TecNik93.com/FreeBSD/ports/${PORTNAME}/sources/
-#DIST_SUBDIR= tinderbox
+MASTER_SITES= http://tinderbox.marcuscom.com/:SOURCES \
+ http://T32.TecNik93.com/FreeBSD/ports/${PORTNAME}/sources/:SOURCES,FAVICON
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:SOURCES \
+ favicon.ico:FAVICON
+DIST_SUBDIR= tinderbox
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= itetcu@FreeBSD.org
COMMENT= Port build tinderbox system
@@ -41,6 +44,8 @@ RUN_DEPENDS+= ${LOCALBASE}/share/pear/DB.php:${PORTSDIR}/databases/pear-DB
WANT_PHP_WEB= yes
USE_PHP= session
PLIST_SUB+= WEBUI=""
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-webui__module__moduleBuildPorts.php \
+ ${FILESDIR}/extra-patch-webui__core__TinderboxDS.php
.else
PLIST_SUB+= WEBUI="@comment "
.endif
@@ -84,16 +89,16 @@ pre-everything::
@${FALSE}
.endif
-post-extract:
.if !defined(WITH_WEBUI)
+post-extract:
@${RM} -R ${WRKSRC}/webui
-.endif
-
+.else
+post-extract:
+ @${CP} ${_DISTDIR}/favicon.ico ${WRKSRC}/webui
post-patch:
- ${RM} ${WRKSRC}/lib/Tinderbox/TinderboxDS.pm.orig \
- ${WRKSRC}/lib/tc_command.pl.orig \
- ${WRKSRC}/sql/schema.pgsql.pre.orig \
- ${WRKSRC}/sql/genschema.orig
+ @${RM} ${WRKSRC}/webui/core/TinderboxDS.php.orig
+ @${RM} ${WRKSRC}/webui/module/moduleBuildPorts.php.orig
+.endif
do-install:
@${MKDIR} ${PREFIX}/tinderbox/scripts
@@ -101,7 +106,7 @@ do-install:
cd ${WRKSRC}/man/man1 && ${INSTALL_MAN} ${MAN1} ${MAN1PREFIX}/man/man1 && \
cd ${WRKSRC} && ${RM} -r ${WRKSRC}/man
@${ECHO_CMD} "Installing rc script ..."
- ${INSTALL_SCRIPT} ${WRKSRC}/etc/rc.d/tinderd.sh ${PREFIX}/etc/rc.d/${PORTNAME}
+ ${INSTALL_SCRIPT} ${WRKSRC}/etc/rc.d/tinderd ${PREFIX}/etc/rc.d/${PORTNAME}
@${ECHO_CMD} "Installing tinderbox ..."
${CP} -R ${WRKSRC}/* ${PREFIX}/tinderbox/scripts
@${ECHO_CMD} "All Done"
diff --git a/ports-mgmt/tinderbox/distinfo b/ports-mgmt/tinderbox/distinfo
index 0ed44fb44831..62e415cfd8a0 100644
--- a/ports-mgmt/tinderbox/distinfo
+++ b/ports-mgmt/tinderbox/distinfo
@@ -1,3 +1,6 @@
-MD5 (tinderbox-3.0.0.tar.gz) = f798417a2a150b6374588846f2658a3e
-SHA256 (tinderbox-3.0.0.tar.gz) = 5c4e66be67c6bf2a5e3efd526b6e6c8dfe020d2c261820436e7c9952cce1b62c
-SIZE (tinderbox-3.0.0.tar.gz) = 118144
+MD5 (tinderbox/tinderbox-3.1.1.tar.gz) = 05fd88070ed603e5ffa10d1d652be886
+SHA256 (tinderbox/tinderbox-3.1.1.tar.gz) = bafffa963ebabf17e52a67fd498925ac39168dfb961aaed0c3e2ed6f8423f950
+SIZE (tinderbox/tinderbox-3.1.1.tar.gz) = 118201
+MD5 (tinderbox/favicon.ico) = 1d2e9e267ca81f0ef5bc7b9c391aaced
+SHA256 (tinderbox/favicon.ico) = 842f1e23dcfcee24d4d7578381256256cda994347751fb332b6eb2182eae216e
+SIZE (tinderbox/favicon.ico) = 4710
diff --git a/ports-mgmt/tinderbox/files/extra-patch-webui__core__TinderboxDS.php b/ports-mgmt/tinderbox/files/extra-patch-webui__core__TinderboxDS.php
new file mode 100644
index 000000000000..829a9c7847a5
--- /dev/null
+++ b/ports-mgmt/tinderbox/files/extra-patch-webui__core__TinderboxDS.php
@@ -0,0 +1,13 @@
+--- ./webui/core/TinderboxDS.php.orig 2008-11-12 17:35:47.000000000 +0200
++++ ./webui/core/TinderboxDS.php 2008-11-12 17:36:48.000000000 +0200
+@@ -378,6 +378,10 @@
+ if ($sortby == "") $sortby = "port_directory";
+ if ($sortby == "port_directory") $sortbytable = "p";
+ if ($sortby == "port_maintainer") $sortbytable = "p";
++ if ($sortby == "last_built") {
++ $sortbytable = "bp";
++ $sortby = "last_built desc";
++ }
+ $query = "SELECT p.*,
+ bp.last_built,
+ bp.last_status,
diff --git a/ports-mgmt/tinderbox/files/extra-patch-webui__module__moduleBuildPorts.php b/ports-mgmt/tinderbox/files/extra-patch-webui__module__moduleBuildPorts.php
new file mode 100644
index 000000000000..b852f64427e9
--- /dev/null
+++ b/ports-mgmt/tinderbox/files/extra-patch-webui__module__moduleBuildPorts.php
@@ -0,0 +1,11 @@
+--- ./webui/module/moduleBuildPorts.php.orig 2008-11-12 17:38:36.000000000 +0200
++++ ./webui/module/moduleBuildPorts.php 2008-11-12 17:38:01.000000000 +0200
+@@ -168,7 +168,7 @@
+ $build_id = false;
+ }
+
+- $ports = $this->TinderboxDS->getLatestPorts( $build_id, 20 );
++ $ports = $this->TinderboxDS->getLatestPorts( $build_id, 30 );
+
+ if( is_array( $ports ) && count( $ports ) > 0 ) {
+ $this->template_assign( 'data', $this->modulePorts->get_list_data( $build_name, $ports ) );
diff --git a/ports-mgmt/tinderbox/files/patch-lib__Tinderbox__TinderboxDS.pm b/ports-mgmt/tinderbox/files/patch-lib__Tinderbox__TinderboxDS.pm
deleted file mode 100644
index a20f37b4824d..000000000000
--- a/ports-mgmt/tinderbox/files/patch-lib__Tinderbox__TinderboxDS.pm
+++ /dev/null
@@ -1,33 +0,0 @@
---- ./lib/Tinderbox/TinderboxDS.pm.orig 2008-08-07 07:27:49.000000000 +0300
-+++ ./lib/Tinderbox/TinderboxDS.pm 2008-09-07 09:37:07.000000000 +0300
-@@ -23,7 +23,7 @@
- # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- # SUCH DAMAGE.
- #
--# $MCom: portstools/tinderbox/lib/Tinderbox/TinderboxDS.pm,v 1.88 2008/08/07 04:27:49 marcus Exp $
-+# $MCom: portstools/tinderbox/lib/Tinderbox/TinderboxDS.pm,v 1.88.2.2 2008/09/05 21:07:14 marcus Exp $
- #
-
- package Tinderbox::TinderboxDS;
-@@ -42,6 +42,7 @@
- use DBI;
- use Carp;
- use Digest::MD5 qw(md5_hex);
-+use POSIX qw(strftime);
- use vars qw(
- $DB_DRIVER
- $DB_HOST
-@@ -362,8 +363,12 @@
- sub reorgBuildPortsQueue {
- my $self = shift;
-
-+ my $enq_time = time - 25200;
-+ my $enq_sql = strftime("%Y-%m-%d %H:%M:%S", localtime($enq_time));
-+
- my $rc = $self->_doQuery(
-- "DELETE FROM build_ports_queue WHERE enqueue_date<=NOW()-25200 AND status != 'ENQUEUED'"
-+ "DELETE FROM build_ports_queue WHERE enqueue_date<=? AND status != 'ENQUEUED'",
-+ [$enq_sql]
- );
-
- return $rc;
diff --git a/ports-mgmt/tinderbox/files/patch-lib__tc_command.pl b/ports-mgmt/tinderbox/files/patch-lib__tc_command.pl
deleted file mode 100644
index e57dc27820a1..000000000000
--- a/ports-mgmt/tinderbox/files/patch-lib__tc_command.pl
+++ /dev/null
@@ -1,20 +0,0 @@
---- ./lib/tc_command.pl.orig 2008-08-15 20:23:07.000000000 +0300
-+++ ./lib/tc_command.pl 2008-09-07 09:37:07.000000000 +0300
-@@ -24,7 +24,7 @@
- # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- # SUCH DAMAGE.
- #
--# $MCom: portstools/tinderbox/lib/tc_command.pl,v 1.150 2008/08/15 17:23:07 marcus Exp $
-+# $MCom: portstools/tinderbox/lib/tc_command.pl,v 1.150.2.1 2008/09/05 21:52:24 marcus Exp $
- #
-
- my $pb;
-@@ -1668,7 +1668,7 @@
- . "\n");
- } else {
- cleanup($ds, 1,
-- "There is no BuildPortsQueue configured in the datastore.\n"
-+ "There are no more queued ports for this host in the datastore.\n"
- );
- }
- }
diff --git a/ports-mgmt/tinderbox/files/patch-sql__genschema b/ports-mgmt/tinderbox/files/patch-sql__genschema
deleted file mode 100644
index 59a008d3086b..000000000000
--- a/ports-mgmt/tinderbox/files/patch-sql__genschema
+++ /dev/null
@@ -1,19 +0,0 @@
---- ./sql/genschema.orig 2008-07-25 02:52:33.000000000 +0300
-+++ ./sql/genschema 2008-09-07 09:37:07.000000000 +0300
-@@ -24,7 +24,7 @@
- # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- # SUCH DAMAGE.
- #
--# $MCom: portstools/tinderbox/sql/genschema,v 1.1 2008/07/24 23:52:33 ade Exp $
-+# $MCom: portstools/tinderbox/sql/genschema,v 1.1.2.1 2008/09/05 11:16:29 beat Exp $
- #
- # Create a full-blown schema from a series of files, reducing duplication
- #
-@@ -48,6 +48,6 @@
- # Kick out the generated schema
- #
- cat schema.${dbtype}.pre \
-- values.config values.hooks values.pfp values.pfr \
-+ values.config values.hooks values.pfr values.pfp \
- schema.${dbtype}.post
- exit 0
diff --git a/ports-mgmt/tinderbox/files/patch-sql__schema.pgsql.pre b/ports-mgmt/tinderbox/files/patch-sql__schema.pgsql.pre
deleted file mode 100644
index 5d516eb2b046..000000000000
--- a/ports-mgmt/tinderbox/files/patch-sql__schema.pgsql.pre
+++ /dev/null
@@ -1,20 +0,0 @@
---- ./sql/schema.pgsql.pre.orig 2008-08-05 02:18:10.000000000 +0300
-+++ ./sql/schema.pgsql.pre 2008-09-07 09:37:07.000000000 +0300
-@@ -99,7 +99,7 @@
- -- DROP TABLE port_dependencies CASCADE;
- CREATE TABLE port_dependencies (
- port_dependency_id SERIAL PRIMARY KEY,
-- build_port_id INTEGER REFERENCES build_port(build_port_id) ON UPDATE CASCADE ON DELETE CASCADE,
-+ build_port_id INTEGER REFERENCES build_ports(build_port_id) ON UPDATE CASCADE ON DELETE CASCADE,
- port_id INTEGER REFERENCES ports(port_id) ON UPDATE CASCADE ON DELETE CASCADE,
- dependency_type VARCHAR(16) CHECK (dependency_type IN ('UNKNOWN', 'EXTRACT_DEPENDS', 'PATCH_DEPENDS', 'FETCH_DEPENDS', 'BUILD_DEPENDS', 'LIB_DEPENDS', 'DEPENDS', 'RUN_DEPENDS')) DEFAULT 'UNKNOWN'
- );
-@@ -109,7 +109,7 @@
- -- DROP TABLE config CASCADE;
- CREATE TABLE config (
- config_option_name VARCHAR(255) NOT NULL PRIMARY KEY,
-- config_option_value TEXT,
-+ config_option_value TEXT
- );
-
- -- DROP TABLE build_ports_queue CASCADE;
diff --git a/ports-mgmt/tinderbox/files/pkg-message.in b/ports-mgmt/tinderbox/files/pkg-message.in
index f1af49cc1714..ef714324b6ea 100644
--- a/ports-mgmt/tinderbox/files/pkg-message.in
+++ b/ports-mgmt/tinderbox/files/pkg-message.in
@@ -13,7 +13,7 @@ The following walkthrough is the webserver setup:
Alias /tb/logs/ "%%PREFIX%%/tinderbox/logs/"
Alias /tb/packages/ "%%PREFIX%%/tinderbox/packages/"
Alias /tb/errors/ "%%PREFIX%%/tinderbox/errors/"
- Alias /tb/ "%%PREFIX%%/tinderbox/scripts/www-exp/"
+ Alias /tb/ "%%PREFIX%%/tinderbox/scripts/webui/"
<Directory "%%PREFIX%%/tinderbox/">
Order allow,deny
Allow from all
@@ -26,7 +26,7 @@ Turn on "mod_alias" and add the following lines:
alias.url = ( "/tb/logs/" => "%%PREFIX%%/tinderbox/logs/",
"/tb/packages/" => "%%PREFIX%%/tinderbox/packages/",
"/tb/errors/" => "%%PREFIX%%/tinderbox/errors/",
- "/tb/" => "%%PREFIX%%/tinderbox/scripts/www-exp/" )
+ "/tb/" => "%%PREFIX%%/tinderbox/scripts/webui/" )
dir-listing.activate = "enable"
Check your system by going to http://localhost/tb/
diff --git a/ports-mgmt/tinderbox/pkg-plist b/ports-mgmt/tinderbox/pkg-plist
index cc626095a1d7..5b0d2ad619de 100644
--- a/ports-mgmt/tinderbox/pkg-plist
+++ b/ports-mgmt/tinderbox/pkg-plist
@@ -2,7 +2,7 @@ etc/rc.d/tinderbox
tinderbox/scripts/README
tinderbox/scripts/ds.ph.dist
tinderbox/scripts/etc/env/.keep_me
-tinderbox/scripts/etc/rc.d/tinderd.sh
+tinderbox/scripts/etc/rc.d/tinderd
tinderbox/scripts/lib/Tinderbox/Build.pm
tinderbox/scripts/lib/Tinderbox/BuildPortsQueue.pm
tinderbox/scripts/lib/Tinderbox/Config.pm
@@ -40,13 +40,14 @@ tinderbox/scripts/sql/values.pfr
tinderbox/scripts/tc
tinderbox/scripts/tinderbox.ph.dist
tinderbox/scripts/tinderd
-tinderbox/scripts/upgrade/.keep_me
tinderbox/scripts/upgrade/build_ports.map
tinderbox/scripts/upgrade/build_ports_queue.map
tinderbox/scripts/upgrade/builds.map
tinderbox/scripts/upgrade/config.map
tinderbox/scripts/upgrade/hooks.map
tinderbox/scripts/upgrade/jails.map
+tinderbox/scripts/upgrade/mig_mysql_tinderbox-3.0_to_3.1.sql
+tinderbox/scripts/upgrade/mig_pgsql_tinderbox-3.0_to_3.1.sql
tinderbox/scripts/upgrade/order.lst
tinderbox/scripts/upgrade/user_permissions.map
%%WEBUI%%tinderbox/scripts/webui/core/Build.php
@@ -86,6 +87,7 @@ tinderbox/scripts/upgrade/user_permissions.map
%%WEBUI%%tinderbox/scripts/webui/templates/default/list_tinderd_queue.tpl
%%WEBUI%%tinderbox/scripts/webui/templates/default/messages.inc
%%WEBUI%%tinderbox/scripts/webui/templates/default/please_login.tpl
+%%WEBUI%%tinderbox/scripts/webui/templates/default/rss.tpl
%%WEBUI%%tinderbox/scripts/webui/templates/default/tinderstyle.css
%%WEBUI%%tinderbox/scripts/webui/templates/default/user_admin.tpl
%%WEBUI%%tinderbox/scripts/webui/templates/default/user_permissions.tpl