DirectAdmin -
Maybe this will be of some use to you for future development. I just ran portupgrade (after cvsup'ing ports tree) to update all of the ports on my DA system and the output is below. It looks like the system is still running so this did not cause any problems. I guess the thing to note below is that exim, proftpd, and vm-pop3d did not update.
Maybe I am missing something here, but in an ideal world, if you included the following, it seems as if server administration would be cut to a minimum.
1. As part of base install, include cvsup and cron it to run nightly for the ports
2. As part of the base install, include portupgrade and run it nightly as well
3. As part of your DA updates, include updates for exim, proftpd, and vm-pop3d so that all of the system software gets updated.
4. Maybe this is outside of what you want DA to do, but if there was also a set of security ports that could be installed/managed from DA, I would love that. chkrootkit, logcheck, snort and/or tripwire, and a firewall.
5. Unless I am missing something, that really only leaves the kernel updates to deal with on our own.
www5# portupgrade -iarR
---> Session started at: Fri, 19 Sep 2003 10:16:30 -0500
cd: can't cd to /usr/ports/mail/da_exim
cd: can't cd to /usr/ports/ftp/da_proftpd
cd: can't cd to /usr/ports/mail/da_vm-pop3d
** No need to upgrade 'bind-8.3.6' (>= bind-8.3.6). (specify -f to force)
** No need to upgrade 'snort-2.0.1' (>= snort-2.0.1). (specify -f to force)
** No need to upgrade 'png-1.2.5_2' (>= png-1.2.5_2). (specify -f to force)
** The port directory for 'mail/da_vm-pop3d' does not exist.
** The port directory for 'ftp/da_proftpd' does not exist.
** No need to upgrade 'openssh-3.6.1_3' (>= openssh-3.6.1_3). (specify -f to force)
** No need to upgrade 'ruby-1.6.8.2003.04.19' (>= ruby-1.6.8.2003.04.19). (specify -f to force)
** No need to upgrade 'ruby-shim-ruby18-1.8.0.p2.2003.04.19_1' (>= ruby-shim-ruby18-1.8.0.p2.2003.04.19_1). (specify -f to force)
** No need to upgrade 'ruby-rdoc-0.0.0.b2' (>= ruby-rdoc-0.0.0.b2). (specify -f to force)
** No need to upgrade 'imake-4.3.0_1' (>= imake-4.3.0_1). (specify -f to force)
** No need to upgrade 'ruby-bdb1-0.2.1' (>= ruby-bdb1-0.2.1). (specify -f to force)
** No need to upgrade 'portupgrade-20030723' (>= portupgrade-20030723). (specify -f to force)
** No need to upgrade 'chkrootkit-0.41' (>= chkrootkit-0.41). (specify -f to force)
** The port directory for 'mail/da_exim' does not exist.
** No need to upgrade 'libtool-1.3.5_1' (>= libtool-1.3.5_1). (specify -f to force)
** No need to upgrade 'libiconv-1.9.1_1' (>= libiconv-1.9.1_1). (specify -f to force)
** No need to upgrade 'expat-1.95.6_1' (>= expat-1.95.6_1). (specify -f to force)
** No need to upgrade 'gettext-0.12.1' (>= gettext-0.12.1). (specify -f to force)
** No need to upgrade 'unzip-5.50_2' (>= unzip-5.50_2). (specify -f to force)
** No need to upgrade 'm4-1.4_1' (>= m4-1.4_1). (specify -f to force)
** No need to upgrade 'bison-1.75_1' (>= bison-1.75_1). (specify -f to force)
** No need to upgrade 'jpeg-6b_1' (>= jpeg-6b_1). (specify -f to force)
** No need to upgrade 'gmake-3.80_1' (>= gmake-3.80_1). (specify -f to force)
** No need to upgrade 'wget-1.8.2_4' (>= wget-1.8.2_4). (specify -f to force)
** No need to upgrade 'ezm3-1.1' (>= ezm3-1.1). (specify -f to force)
** No need to upgrade 'freetype2-2.1.4_1' (>= freetype2-2.1.4_1). (specify -f to force)