MetaXPWiki/DeveloperDocumentation/GettingStarted: Difference between revisions

From BRF-Software
Jump to navigation Jump to search
No edit summary
 
m (8 revisions)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
Here comes a short HowTo about how to get started with developing !MetaXP
= Getting Started =
 
This HowTo explains briefly how to get started with developing code for MetaXP project.
 
== DB Access ==
 
All MetaXP projects are backed by the projectmanagement system [[GPMSWiki| GPMS]].
To be able to work with MetaXP you need an account.
 
If you are a developer
send an email to:  [[MailTo(krunte DASH devel AT cebitec DOT uni DASH bielefeld DOT de)]] to get a
developer account.
 
== CVS ==
 
* create a working direktory for CVS in your home named 'CVS'
* cd to that directory and get the projects needed to run emma:
 
<pre><nowiki>
cvs checkout bioinfo/<name of project>
</nowiki></pre>
 
You need to checkout the following projects:
* metaxp
* projectmanagement
* common
 
== API Documentation ==
 
The API documentation of OntoDB is not checked in as this causes more
trouble then it's worth. To generate your own copy of the API
documentation, simply run the script
 
<pre><nowiki>
CVS/bioinfo/ontodb/bin/create_html_doc.sh
</nowiki></pre>
 
 
== Web-Server ==
 
* goto CVS/bioinfo/metaxp/share/www
* edit apache2.sh: change `PORT=XXXX` to any free port on the webserver, and set CVS= to your CVS-directory
* login on a suitabel test-webserver using `qxterm` or `qrsh`
* in that shell execute:
 
<pre><nowiki>
CVS/bioinfo/metaxp/share/www/apache2.sh start
</nowiki></pre>
 
* try to open `http://SERVER:PORT` with  your browser
* if nothing happens or you get an error message have a look at `CVS/bioinfo/metaxp/share/www/log/all.errors`
 
== Documentation ==
 
----
'''As developers we are also responsible for ducumentation. Please let's try the following conventions:
* document your code
* use the specific documentation tools of the domain
* use POD for documenting Perl module
* use perlmodule Pod::Usage for documenting perl-scripts
* each script needs a usage message (see above)
* [[O2DBIWiki|O2DBI]]-documentation (will create POD-doku for server classes)
'''
----
The other main source is the perldoc documentation. The generated [[O2DBIWiki|O2DBI]]-servermodules are pod documented. You can read them with:
<pre><nowiki>
perldoc module.pm
</nowiki></pre>
 
Other modules may also have pod-documetation but this is not guaranteed. The documentation found can also be incomplete or rather outdated. If you wish to generate the documentation for all perl modules you can do so be executing the shell script:
 
<pre><nowiki>
CVS/bioinfo/metaxp/share/exec/create_html_docs.pl
</nowiki></pre>
 
It generates an HTML version of the perldoc documentation in the directory 'CVS/bioinfo/metaxp/share/doc/html'.
 
Additional documentation can be found in CVS/bioinfo/metaxp/share/doc.
 
== Directory Structure ==
 
The directory `CVS/bioinfo/metaxp/` contains the specific components of the metaxp software:
 
* `/bin` start wrapper(s) for executable scripts in `/share/exec`.
To run a script in share exec type: `metaxp_start scriptname.pl -p project [options]`
* `/share` contains the main application code
** `/exec` executable scripts
** `/perl` contains perl code
*** `/MetaXP` contains perl code
**** `/WWW/` modules specific to the web front-end of MetaXP
**** `/DBmodules` modules accessing the backend, used by the www-modules
* `/www` contains web-server specific code and the document root
** `/cgi-bin' contains the cgi-scripts
*** `/templates' the HTML-templates for each page
* `/htdocs' contains the static HTML pages for the web front-end
** `/images' the images used for the web front-end
* `/log' contains logging files of the apache web server
* `/src` contains the database schema and code for generation of code and documentation

Latest revision as of 07:15, 26 October 2011

Getting Started

This HowTo explains briefly how to get started with developing code for MetaXP project.

DB Access

All MetaXP projects are backed by the projectmanagement system GPMS. To be able to work with MetaXP you need an account.

If you are a developer send an email to: MailTo(krunte DASH devel AT cebitec DOT uni DASH bielefeld DOT de) to get a developer account.

CVS

  • create a working direktory for CVS in your home named 'CVS'
  • cd to that directory and get the projects needed to run emma:
cvs checkout bioinfo/<name of project>

You need to checkout the following projects:

  • metaxp
  • projectmanagement
  • common

API Documentation

The API documentation of OntoDB is not checked in as this causes more trouble then it's worth. To generate your own copy of the API documentation, simply run the script

CVS/bioinfo/ontodb/bin/create_html_doc.sh


Web-Server

  • goto CVS/bioinfo/metaxp/share/www
  • edit apache2.sh: change `PORT=XXXX` to any free port on the webserver, and set CVS= to your CVS-directory
  • login on a suitabel test-webserver using `qxterm` or `qrsh`
  • in that shell execute:
CVS/bioinfo/metaxp/share/www/apache2.sh start
  • try to open `http://SERVER:PORT` with your browser
  • if nothing happens or you get an error message have a look at `CVS/bioinfo/metaxp/share/www/log/all.errors`

Documentation


As developers we are also responsible for ducumentation. Please let's try the following conventions:

  • document your code
  • use the specific documentation tools of the domain
  • use POD for documenting Perl module
  • use perlmodule Pod::Usage for documenting perl-scripts
  • each script needs a usage message (see above)
  • O2DBI-documentation (will create POD-doku for server classes)


The other main source is the perldoc documentation. The generated O2DBI-servermodules are pod documented. You can read them with:

perldoc module.pm

Other modules may also have pod-documetation but this is not guaranteed. The documentation found can also be incomplete or rather outdated. If you wish to generate the documentation for all perl modules you can do so be executing the shell script:

CVS/bioinfo/metaxp/share/exec/create_html_docs.pl

It generates an HTML version of the perldoc documentation in the directory 'CVS/bioinfo/metaxp/share/doc/html'.

Additional documentation can be found in CVS/bioinfo/metaxp/share/doc.

Directory Structure

The directory `CVS/bioinfo/metaxp/` contains the specific components of the metaxp software:

  • `/bin` start wrapper(s) for executable scripts in `/share/exec`.

To run a script in share exec type: `metaxp_start scriptname.pl -p project [options]`

  • `/share` contains the main application code
    • `/exec` executable scripts
    • `/perl` contains perl code
      • `/MetaXP` contains perl code
        • `/WWW/` modules specific to the web front-end of MetaXP
        • `/DBmodules` modules accessing the backend, used by the www-modules
  • `/www` contains web-server specific code and the document root
    • `/cgi-bin' contains the cgi-scripts
      • `/templates' the HTML-templates for each page
  • `/htdocs' contains the static HTML pages for the web front-end
    • `/images' the images used for the web front-end
  • `/log' contains logging files of the apache web server
  • `/src` contains the database schema and code for generation of code and documentation