Alert.png The wiki is deprecated and due to be decommissioned by the end of September 2022.
The content is being migrated to other supports, new updates will be ignored and lost.
If needed you can get in touch with EGI SDIS team using operations @ egi.eu.

Difference between revisions of "GOCDB/Regional Module Technical Documentation"

From EGIWiki
Jump to navigation Jump to search
 
(7 intermediate revisions by 2 users not shown)
Line 3: Line 3:
== Download  ==
== Download  ==


'''LATEST VERSION: GOCDBv5.2''' <br>  
'''LATEST VERSION: GOCDBv5.6''' <br>  
https://github.com/GOCDB/gocdb


For install see:
https://github.com/GOCDB/gocdb/blob/master/INSTALL.md
<!--
*Packaged V5.2: https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/tags/gocdb/GOCDB-5.2/GocDB-5.2.zip
*Packaged V5.2: https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/tags/gocdb/GOCDB-5.2/GocDB-5.2.zip
*svn v5.2:
*svn v5.2:
Line 11: Line 16:
*Latest dev/trunk svn:
*Latest dev/trunk svn:
<pre>svn checkout https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/branches/gocdb/MultipleEndpointsGocDB/</pre>
<pre>svn checkout https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/branches/gocdb/MultipleEndpointsGocDB/</pre>
-->


<!--<pre>svn checkout https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/branches/gocdb/Doctrine%20Web%20Portal</pre> -->
<!--<pre>svn checkout https://www.sysadmin.hep.ac.uk/svn/grid-monitoring/branches/gocdb/Doctrine%20Web%20Portal</pre> -->
Note, for svn co, if you are asked to authenticate with a client certificate as below, you can dismiss by pressing Enter  
<!--Note, for svn co, if you are asked to authenticate with a client certificate as below, you can dismiss by pressing Enter  
<pre>Authentication realm: https://www.sysadmin.hep.ac.uk:443
<pre>Authentication realm: https://www.sysadmin.hep.ac.uk:443
Client certificate filename: &lt;ENTER to dismiss&gt;
Client certificate filename: &lt;ENTER to dismiss&gt;
Line 22: Line 28:


<br>  
<br>  
 
-->
<br>
<br>


<!--
== Prerequisites==
== Prerequisites==
=== System prerequisites  ===
=== System prerequisites  ===
Line 46: Line 53:
*Required database: Any version of MySQL will work including the free MySQL Community Server edition  
*Required database: Any version of MySQL will work including the free MySQL Community Server edition  
*Required space: See MySQL install guide:http://dev.mysql.com/doc/refman/5.7/en/installing.html
*Required space: See MySQL install guide:http://dev.mysql.com/doc/refman/5.7/en/installing.html
<!--
<br>
SQLite:


*Required database: SQLite 3.x.x or higher. SQLite is produced as an open source database and all versions are free to use.
*Required: See the SQLite documentation: www.sqlite.org/docs.html
-->
<br>
<br>


Line 133: Line 134:
=== Database Connection ===
=== Database Connection ===
You should now have all the required blocks in place to deploy GOCDB V5. To Deploy the database schema to your desired database using Doctrine:
You should now have all the required blocks in place to deploy GOCDB V5. To Deploy the database schema to your desired database using Doctrine:
* Navigate to to gocDBSrc/lib/Doctrine folder.  
* Navigate to to '<gocDBSrcHome>/lib/Doctrine' folder.  
* Locate the provided template file: ''bootstrap_doctrine_TEMPLATE.php''. In this file you will find three blocks of code commented out, once for each of the supported databased, SQLite, Oracle and MySQL as shown below:
* Locate the provided template file: ''bootstrap_doctrine_TEMPLATE.php''. In this file you will find three blocks of code commented out, once for each of the supported databased, SQLite, Oracle and MySQL as shown below:
* '''Copy this file to''' ''bootstrap_doctrine.php'' in the same dir as the template file and modify to specify your chosen DB connection details.  
* '''Copy this file to''' ''bootstrap_doctrine.php'' in the same dir as the template file and modify to specify your chosen DB connection details.  
Line 186: Line 187:


'''Windows Users:''' These scripts are designed for deployment on a Linux machine (Cygwin on Windows is ok).   
'''Windows Users:''' These scripts are designed for deployment on a Linux machine (Cygwin on Windows is ok).   
<!--you will need to open ''recreate.sh'' and change: ''doctrine'' to ''doctrine.bat''.-->
 


By supplying a flag when executing the script you can deploy either a new empty database or a sample database eg:
By supplying a flag when executing the script you can deploy either a new empty database or a sample database eg:
Line 204: Line 205:


=== Apache Configuration  ===
=== Apache Configuration  ===
Now that your database is deployed the final step is to configure Apache.
==== /etc/sysconfig/httpd - Oracle configuration ====
The Oracle environment must be set correctly before starting Apache so that PHP OCI8 works correctly. In general you should set the same variables that are set by the ''$ORACLE_HOME/bin/oracle_env.sh'' script. The necessary environment variables can be set in Apache's environment configuration file.
On RedHat Linux and its derivatives with the default httpd package, this is ''/etc/sysconfig/httpd''.
<pre>
export ORACLE_HOME=/u01/app/oracle/product/12.1    # Adjust pathname to match your installation
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
</pre>


==== httpd.conf  ====
==== httpd.conf  ====
Now that your database is deployed the final step is to configure Apache.


A few modules need to be enabled for GOCDB to work, check these are enabled on your Apache and if not enable them.&nbsp;  
A few modules need to be enabled for GOCDB to work, check these are enabled on your Apache and if not enable them.&nbsp;  
Line 213: Line 223:
In ''httpd.conf'' enable ssl_module by un-commenting these lines:  
In ''httpd.conf'' enable ssl_module by un-commenting these lines:  
<pre>LoadModule ssl_module modules/mod_ssl.so</pre>  
<pre>LoadModule ssl_module modules/mod_ssl.so</pre>  
<!--
 
and
<pre>extension=php_openssl.dll</pre>
Depending on the database you are using the supporting module may also need to be enabled. For example Oracle requires the oracle module to be uncommented:
<pre>extension=php_oci8_11g.dll</pre>
-->




Line 477: Line 482:
This shows the process of creating an entity, using its get and set methods to enter and retrieve data and then committing it to the database. It also shows the process of using the PDO connection to check that the data exists in the database as we expect.  
This shows the process of creating an entity, using its get and set methods to enter and retrieve data and then committing it to the database. It also shows the process of using the PDO connection to check that the data exists in the database as we expect.  


 
-->





Latest revision as of 17:02, 9 November 2016