|
|
(12 intermediate revisions by 8 users not shown) |
Line 1: |
Line 1: |
| ===So you want to have your own copies of the binaries and your own hgwdev-user.cse.ucsc.edu browser? Here is a walkthrough:===
| | This page is no longer maintained. |
| | |
| | |
| ====Request a "virtual space" from the cluster-admins:====
| |
| | |
| This includes, among other things, adding a block to the file /usr/local/apache/conf/httpd.conf | |
| | |
| <VirtualHost 128.114.xx.yyy>
| |
| ServerName hgwdev-myusername.cse.ucsc.edu
| |
| ServerAlias hgwdev-myusername
| |
| ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin-myusername/"
| |
| </VirtualHost>
| |
| | |
| | |
| ====Populate my /usr/local/apache/cgi-bin-kayla/ directory for the first time by doing the following:====
| |
| | |
| From my home directory on hgwdev /cluster/home/myusername I type the following things:
| |
| | |
| [myusername@hgwdev ~]$cd kent
| |
| [myusername@hgwdev ~/kent]$ cvsup
| |
| [myusername@hgwdev ~/kent]$ cd src
| |
| [myusername@hgwdev src]$ make libs
| |
| [myusername@hgwdev src]$ cd hg
| |
| [myusername@hgwdev hg]$ make cgi
| |
| [myusername@hgwdev hg]$ cd makeDb/trackDb
| |
| [myusername@hgwdev trackDb]$ make update
| |
| | |
| I now have my own compiled version of the cgis.
| |
| | |
| | |
| ====Edit my /usr/local/apache.cgi-bin-myusername/hg.conf:====
| |
| | |
| *You can copy this file from another user, but make sure to replace their name with your name in the appropriate (4) places.
| |
| *Pay attention to the following lines (they will need to be edited or added):
| |
| central.host=localhost
| |
| central.domain=hgwdev-myusername.cse.ucsc.edu
| |
| central.cookie=hguid.hgwdev-myusername
| |
| backupcentral.domain=hgwdev-myusername.ucsc.edu
| |
| *Also play with the line:
| |
| browser.background=/images/floret.jpg to change what background your browser displays.
| |
| *here is a generic [image:floret.jpg] file you can download and edit.
| |
| | |
| ====Keep it current:====
| |
| | |
| Here is a script (makeBinaries.csh) that you can copy and paste into your ~myusername/bin directory to make your binaries every night:
| |
| | |
| #!/bin/tcsh
| |
|
| |
| if ($HOST != hgwdev) then
| |
| echo "\n this must be run from hgwdev!\n"
| |
| endif
| |
|
| |
| cd ~/kent/src
| |
| make clean > dev/null
| |
| cd ~/kent
| |
| /cluster/bin/scripts/cvsup | mail -s 'CVS update report on kent tree' myusername
| |
| cd ~/kent/src
| |
| make libs
| |
| cd ~/kent/src/hg
| |
| make cgi
| |
| cd ~/kent/src/hg/makeDb/trackDb
| |
| make update
| |
| | |
| ====Automate it:====
| |
| | |
| Create a crontab file. Note that you may have numerous crontab
| |
| files. Each machine that you want cron jobs running on will need
| |
| its own crontab file (assuming the jobs are different). Example,
| |
| name your crontab file: hgwdev.cron for your hgwdev crontab.
| |
| With your editor, add a line to your crontab file to run the
| |
| command at the time you desire. For example, to run your daily
| |
| build at 04:42 every weekday, the line would read:
| |
| <PRE>
| |
| 42 04 * * 1-5 bin/dailyBuild.sh
| |
| </PRE>
| |
| | |
| See also: '<B>man 5 crontab</B>' for a description of the fields used
| |
| in these crontab lines.
| |
| | |
| When you crontab file is set correctly, hand it off to the cron
| |
| system with the command:
| |
| <PRE>
| |
| $ crontab <yourCrontabFile>
| |
| </PRE>
| |
| | |
| Example: '<B>crontab hgwdev.cron</B>'
| |
| | |
| To see what you have submitted to the cron system, ask it to
| |
| display what it knows about your cron jobs with the -l argument:
| |
| <PRE>
| |
| $ crontab -l
| |
| </PRE>
| |
| | |
| Cron job tips: It is better to <B>not</B> run your jobs exactly at
| |
| the top of the hour. They would be competing with system cron jobs that
| |
| are running at times like the top of the hour. Better to run your job
| |
| at odd minutes during the hour. Don't use the example time listed here,
| |
| otherwise everyone's job will be running at 04:42 every day and competing
| |
| with each other.
| |
| | |
| Any output to stdout or stderr by your cron job will be emailed to you
| |
| via the cron system as it runs your job. If you would rather not
| |
| see that output in email, construct your cron job shell script in such
| |
| a way that it takes care of all of its stdout and stderr output. For
| |
| example, it could create an organized by date hierarchy of log files
| |
| for its output.
| |
| | |
| | |
| | |
| [[Category:Browser Development]]
| |