Notes add a new module: #### Set this to the full name of the new module set DEST = SolexaTrans #### Set this to a unique two-letter code for the new module. #### Do not duplicate existing two-letter codes. Code may be #### longer than two letters, but not recommended. set TAG = ST #### Set this to the working dev instance creating the module setenv SBEAMS /net/dblocal/www/html/dev2/sbeams -- #### DO NOT CHANGE THIS set TEMPLATE = MODULETEMPLATE set TMPLTAG = ModTmpTAG --- cd $SBEAMS/lib/perl/SBEAMS #rm -r ${DEST} ${DEST}.pm cp -p $TEMPLATE.pm $DEST.pm cp -p -r $TEMPLATE $DEST replaceall.pl $TEMPLATE $DEST $DEST.pm cd $DEST replaceall.pl $TEMPLATE $DEST *.pm replaceall.pl ${TMPLTAG}_ ${TAG}_ *.pm /bin/rm -rf CVS .svn --- cd $SBEAMS/cgi #rm -r ${DEST} cp -p -r $TEMPLATE $DEST cd $DEST replaceall.pl $TEMPLATE $DEST *.cgi replaceall.pl sbeams$TMPLTAG sbeams$TAG *.cgi replaceall.pl ${TMPLTAG}_ ${TAG}_ *.cgi /bin/rm -rf CVS .svn --- cd $SBEAMS/lib/conf/Core ed Modules.conf and/or AvailableModules.conf to include new module cd $SBEAMS/lib/perl/SBEAMS/Connection ed TableInfo.pm to add link to new module at top --- cd $SBEAMS/lib/perl/SBEAMS/$DEST ed TableInfo.pm ed Tables.pm to add some initial tables ed HTMLPrinter.pm to add links to manageable tables cd $SBEAMS/lib/conf ed SBEAMS.conf ed SBEAMS.conf.template to add database location definitions for new module DBPREFIX{Genotyping} = sbeams.dbo. --- This would a be good time to create a new database if the module calls for it, given r/w access to the sbeams user and r/o to sbeamsro. cd $SBEAMS/lib/conf #rm -r $DEST mkdir $DEST cd $DEST cp -p ../${TEMPLATE}/${TEMPLATE}_table_property.txt ${DEST}_table_property.txt cp -p ../${TEMPLATE}/${TEMPLATE}_table_column.txt ${DEST}_table_column.txt replaceall.pl ${TMPLTAG}_ ${TAG}_ * replaceall.pl $TEMPLATE $DEST * edit them to reflect desired tables --- Create the DDL files and create the tables in the database cd $SBEAMS/lib/scripts/Core setenv MODULE $DEST if ( ! -d "../../sql/$MODULE") mkdir ../../sql/$MODULE ./generate_schema.pl \ --table_prop ../../conf/$MODULE/${MODULE}_table_property.txt \ --table_col ../../conf/$MODULE/${MODULE}_table_column.txt \ --schema_file ../../sql/$MODULE/$MODULE \ --destination_type mssql \ --module $DEST See section 8 of the sbeams.installnotes for details on how to create the database objects with the resulting files in /net/dblocal/www/html/dev2/sbeams/lib/sql/$DEST $SBEAMS/lib/scripts/Core/runsql.pl -u sbeamsadmin -s $SBEAMS/lib/sql/$MODULE/${MODULE}_CREATETABLES.mssql -delim GO $SBEAMS/lib/scripts/Core/runsql.pl -u sbeamsadmin -s $SBEAMS/lib/sql/$MODULE/${MODULE}_CREATECONSTRAINTS.mssql -delim GO --ignore --- Load those tables into the database if desired cd $SBEAMS/lib/scripts/Core ed batch_update_driver_tables.csh (Add two lines for new driver tables and run the additions) set CONFDIR = "../../conf" ./update_driver_tables.pl $CONFDIR/${DEST}/${DEST}_table_property.txt ./update_driver_tables.pl $CONFDIR/${DEST}/${DEST}_table_column.txt --- Add in user groups like ${DEST}_admin, ${DEST}_user, ${DEST}_readonly if desired. Make some users belong to these groups Create table_group_security entries for these groups and the table groups defined in ${DEST}_table_property.txt Create table_group_security entries for new groups for common and rowprivate --- Add the scripts directory and add load_biosequence_set support if desired: cd $SBEAMS/lib/scripts mkdir $DEST cd $DEST ln -s ../share/load_biosequence_set.pl cd ../share ed load_biosequence_set.pl cd ../Core ed UpdateSymLinks.pl --- Add query_option data: cd $SBEAMS/lib/sql/$DEST cp -p ../ProteinStructure/ProteinStructure_POPULATE.mssql ${DEST}_POPULATE.mssql ed ${DEST}_POPULATE.mssql execute --- Test in your dev2 area. Once all is good, check into CVS or Subversion: cd $SBEAMS/cgi cd $DEST pur cd .. svn add $DEST cd $SBEAMS/lib/perl/SBEAMS cd $DEST pur cd .. svn add $DEST.pm svn add $DEST #cd $SBEAMS/images #svn add biosap_logo.png cd $SBEAMS/lib/conf cd $DEST pur cd .. svn add $DEST svn add $DEST/* cd $SBEAMS svn commit Added new SolexaTrans Module