On Tue, May 10, 2011 at 08:56:04AM -0700, Mark Diggory wrote: > > On May 10, 2011, at 7:23 AM, Mark H. Wood wrote: > > > On Tue, May 10, 2011 at 01:38:52PM +0100, Robin Taylor wrote: > > [snip] > >> Whilst editing a pom is an option for developers who are familiar with > >> the DSpace Maven infrastructure I think we need to come up something > >> much more user friendly. In the UK at least most sites do not have a > >> dedicated repo developer. I also suspect most sites take the code from > >> the downloadable zip and never go near SVN. There is already a Jira > >> issue from the DCAT group asking for an install process that doesn't > >> require the installer to get involved with Maven and Ant. I think we > >> risk alienating a section of the community if we don't provide an easy > >> mechanism to add modules and/or find the source code. This is not an > >> insurmountable problem, we just need to figure out some good solutions. > >> I'm looking forward to seeing Tim's Installer, it might spark off some > >> good discussions. > > > > Yes. Sites that don't want to alter DSpace shouldn't need to even > > *have* Maven or Ant: > > > > 0. install servlet container and DBMS if you don't already have them > > 1. cd DSPACE_HOME > > 2. unzip /path/to/DSPACE-CORE-PACKAGE > > 3. unzip /path/to/SOME-ADDON-PACKAGE > > Addons have dependencies that need to be "Resolved" and > "prioritized/selected" so it has to be more than an "unzip". MAven does this > transitive analysis for us, thus its important.
Addons are *built* against the code the add onto, so won't this happen at build time? At install time they just drop in, if properly organized. We can document the meaning of "properly organized". > > ... > > 4. ./bin/dspace create-administrator > > 5. tell your servlet container to look in DSPACE_HOME/webapps/YOUR-CHOICE > > 6. login to the repo. as administrator and configure > > 7. kick the servlet container to restart the repo. (if necessary) > > I actually think we can do away witht he above by carrying the container > inside the dspace installation. We have a case in CSU where we do this, you > can put the container+dspace anywhere you want to without having to alter > dspace.cfg to run it because we set everything as relative paths to the JAVA > working directory (in this case [dspace.dir]/bin Eww. I *hate* finding there's a whole web server inside some thing I wanted to plug into the web server that I already had running. While an all-inclusive package may appeal to some, I would choose another packaging. > > Step 5 might include specifying the DBMS connection, since either that > > or the value of DSPACE_HOME will have to be provided to the webapp(s) > > from the outside. > > This is the tough one... but combined with my previous comment, running a > native or in-memory java rdbms would make the configuration of a database not > a requirement for install. This part is ridiculously simple in Tomcat: $ cat /etc/tomcat-6/Catalina/localhost/mhw#trunk-1.7#xmlui.xml <Context docBase='/home/mwood/dspaces/trunk-1.7/webapps/xmlui'> <Parameter description='Path to the DSpace configuration file.' override='false' name='dspace-config' value='/home/mwood/dspaces/trunk-1.7/config/dspace.cfg' /> <Resource name='jdbc/dspace' description="DBMS connection pool for DSpace's database" type='javax.sql.DataSource' factory='org.apache.commons.dbcp.BasicDataSourceFactory' auth='Container' username='foo' password='baz' driverClassName='org.postgresql.Driver' url='jdbc:postgresql://localhost:5432/mhw-trunk-1.7' maxActive='30' maxIdle='-1' maxWait='5000' /> </Context> The above is running right now (except that those aren't the real DBMS credentials). It provides everything DSpace needs to know to find itself. Okay, it doesn't *look* simple, but most of it is boilerplate. A path, two class names, a database name, a user name, and a password are all that need vary until you know your way around the product. Tell the installer program which DBMS you use and it supplies the class names, which are the only bits you might not know. Drop one of those where Catalina looks for them, and it starts. 'touch' it and the app. restarts. -- Mark H. Wood, Lead System Programmer mw...@iupui.edu Asking whether markets are efficient is like asking whether people are smart.
pgp0hA6WRMYHv.pgp
Description: PGP signature
------------------------------------------------------------------------------ Achieve unprecedented app performance and reliability What every C/C++ and Fortran developer should know. Learn how Intel has extended the reach of its next-generation tools to help boost performance applications - inlcuding clusters. http://p.sf.net/sfu/intel-dev2devmay
_______________________________________________ Dspace-devel mailing list Dspace-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspace-devel