User defined configuration parameters with OpenPetra.build.config: Difference between revisions

From OpenPetra Wiki
Jump to navigation Jump to search
(Created page with 'You can create your own configuration file, which will not be committed to bazaar, because the contents will be different for each developer. Just create a file called '''OpenPe…')
 
 
(18 intermediate revisions by 8 users not shown)
Line 1: Line 1:
You can create your own configuration file, which will not be committed to bazaar, because the contents will be different for each developer.
You can define your own local (installation-specific) configuration settings such as


Just create a file called '''OpenPetra.build.config''' in your OpenPetra root directory, besides OpenPetra.build.
* database and credentials you use
* local paths for tools, etc.


You can overwrite every property, that you find in the NAnt build files, in OpenPetra.build or any of the xml files in inc\nant\. The properties usually have the attribute '''overwrite="false"''' which means your values from OpenPetra.build.config will overrule.
All the configuration options are set in NAnt build files, which are just simple xml files.
Just create a file ''OpenPetra.build.config'' in your OpenPetra root directory (the same directory you find the file ''OpenPetra.build'' in). As the contents will be different for each developer, it has aleady been marked in bazaar that it shall be ignored by version-control.


An example:
The shortest PostgreSQL-example for ''OpenPetra.build.config'' for windows (If you use standard parameters ...):
<pre>
<pre>
<?xml version="1.0"?>
<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
<project name="OpenPetra-userconfig">
     <property name="DBMS.Type" value="postgresql"/>
     <property name="DBMS.Type" value="postgresql"/>
     <property name="PostgreSQL.exe" value="C:\Program Files/PostgreSQL/9.0/bin/psql.exe"/>
</project>
     <property name="pgdump.exe" value="C:\Program Files/PostgreSQL/9.0/bin/pg_dump.exe" overwrite="false"/>
</pre>
 
For Linux it would be:
<pre>
<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
     <property name="DBMS.Type" value="postgresql"/>
</project>
</pre>
 
A more complex example:
<pre>
<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
    <property name="PostgreSQL.Version" value="9.3"/>
     <property name="PostgreSQL.exe" value="D:\Program Files\PostgreSQL\9.3\bin\psql.exe" />
    <property name="DBMS.Type" value="postgresql"/>
     <property name="DBMS.DBName" value="myopenpetradb"/>
     <property name="DBMS.DBName" value="myopenpetradb"/>
     <property name="DBMS.Password" value="secret" />  
    <property name="DBMS.UserName" value="myusername"/>
     <property name="DBMS.Password" value="secret"/>
    <property name="projectfiles.templates-list" value="sharpdevelop4" />
    <property name="Server.DebugLevel" value="0"/>
</project>
</pre>
 
An example for SQLite (note: empty password required on Windows):
<pre>
<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
    <property name="DBMS.Type" value="sqlite"/>
    <property name="DBMS.Password" value=""/>
</project>
</project>
</pre>
</pre>


Explanation of this example:
'''Important: after you changed any settings in the config-file, you have to run "nant initConfigFiles".'''
* this developer wants to work with PostgreSQL instead of the default SQLite. Therefore you must set the DBMS.Type property.
 
* Usually, the psql.exe and pg_dump.exe are located by default in the Program Files directory, but in the case of 64bit Windows, the default Program Files directory for nant is "Program Files (x86)", where Postgresql is not installed in my case.
Explanation of the above example:
* You have the option to define a different database, and also a different database password
* Database-System: this developer wants to work with PostgreSQL instead of the default SQLite. Therefore you must set the DBMS.Type property.
* File-Locations: Usually, the psql.exe and pg_dump.exe are located by default in the Program Files directory, but in the case of 64bit Windows, the default Program Files directory for nant is "Program Files (x86)", where Postgresql is not installed in my case. PostgreSQL.exe can be used to specify file locations when they are not in the default location.  (Note: The equivalent entry for MySQL would be '<property name="MySQL.exe" value="D:\Program Files\...\bin\mysql.exe" />'
* Database: You have the option to define a different database, its user and password
* See [[Notes_about_PostgreSQL]] for more information about PostgreSQL setup
* ''projectfiles.templates-list'': see [[Build system with our own NAnt tools and tasks|nant generateProjectFiles]]
== Finding changeable properties ==
 
Check these configuration files where the default settings are set:
 
* [https://github.com/openpetra/openpetra/blob/master/inc/nant/OpenPetra.common.xml inc\nant\OpenPetra.common.xml]
* [https://github.com/openpetra/openpetra/blob/master/inc/nant/OpenPetra.tobe.migrated.xml inc\nant\OpenPetra.tobe.migrated.xml]
 
Just browse these files and find the properties you need to fit your configuration. Just copy the property into '''OpenPetra.build.config''' and alter its value appropriately.

Latest revision as of 06:38, 6 October 2016

You can define your own local (installation-specific) configuration settings such as

  • database and credentials you use
  • local paths for tools, etc.

All the configuration options are set in NAnt build files, which are just simple xml files. Just create a file OpenPetra.build.config in your OpenPetra root directory (the same directory you find the file OpenPetra.build in). As the contents will be different for each developer, it has aleady been marked in bazaar that it shall be ignored by version-control.

The shortest PostgreSQL-example for OpenPetra.build.config for windows (If you use standard parameters ...):

<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
    <property name="DBMS.Type" value="postgresql"/>
</project>

For Linux it would be:

<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
    <property name="DBMS.Type" value="postgresql"/>
</project>

A more complex example:

<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
    <property name="PostgreSQL.Version" value="9.3"/>
    <property name="PostgreSQL.exe" value="D:\Program Files\PostgreSQL\9.3\bin\psql.exe" />
    <property name="DBMS.Type" value="postgresql"/>
    <property name="DBMS.DBName" value="myopenpetradb"/>
    <property name="DBMS.UserName" value="myusername"/>
    <property name="DBMS.Password" value="secret"/>
    <property name="projectfiles.templates-list" value="sharpdevelop4" />
    <property name="Server.DebugLevel" value="0"/>
</project>

An example for SQLite (note: empty password required on Windows):

<?xml version="1.0"?>
<project name="OpenPetra-userconfig">
    <property name="DBMS.Type" value="sqlite"/>
    <property name="DBMS.Password" value=""/>
</project>

Important: after you changed any settings in the config-file, you have to run "nant initConfigFiles".

Explanation of the above example:

  • Database-System: this developer wants to work with PostgreSQL instead of the default SQLite. Therefore you must set the DBMS.Type property.
  • File-Locations: Usually, the psql.exe and pg_dump.exe are located by default in the Program Files directory, but in the case of 64bit Windows, the default Program Files directory for nant is "Program Files (x86)", where Postgresql is not installed in my case. PostgreSQL.exe can be used to specify file locations when they are not in the default location. (Note: The equivalent entry for MySQL would be '<property name="MySQL.exe" value="D:\Program Files\...\bin\mysql.exe" />'
  • Database: You have the option to define a different database, its user and password
  • See Notes_about_PostgreSQL for more information about PostgreSQL setup
  • projectfiles.templates-list: see nant generateProjectFiles

Finding changeable properties

Check these configuration files where the default settings are set:

Just browse these files and find the properties you need to fit your configuration. Just copy the property into OpenPetra.build.config and alter its value appropriately.