Stages can interact with configuration management systems (CMS) to work with remotely stored files. The configuration for these systems is done in two simple steps:
Currently, following content management systems are available and can be configured as described in the linked sections:
To enable Stages to communicate with an external CMS, you have to add an XML snippet to the central configuration file, which is located at <STAGESHOME>/conf/config.xml.
A generic XML snippet for all CMS configurations looks like the following:
<?xml version="1.0" encoding="UTF-8" ?> <stages-config> ... <cms> <cms-type name="[name]"> <!-- Global Properties --> <cms-property name="[key]" value="[value]" /> <cms-host ident="[ident]" name="[http://hostname.com]" displayName="[displayName]"> <!-- Host Properties --> <cms-property name="[key]" value="[value]" /> </cms-host> </cms-type> </cms> ... </stages-config>
<stages-config>
The root XML element of the stages configuration file. The configuration for the content management systems has to be inserted inside this element. The CMS configuration is a child element of the <stages-config> element.
<cms>
This element holds all configuration data for the content management systems.
<cms-type name=“” >
The <cms-type> element represents the configuration for a single content management system you want to support in your Stages application.
<cms-property name=“” value=“” > (Global Properties)
Right inside the <cms-type> element you can define multiple <cms-property> elements, which affect the entire CMS type. These properties are called global properties.
<cms-host ident=“” name=“” displayName=“” >
A <cms-type> element can have several <cms-host> elements.
<cms-property name=“” value=“” > (Host Properties)
Inside a <cms-host> element you can define <cms-property> elements, which affect only the specific host. These properties are called host properties.
<cms-type name="subversion"> <cms-host ident="subversion.example.ident" name="https://subversion.example.net:1234" displayName="Subversion Example Server"> <cms-property name="user" value="subversion_username" /> <cms-property name="password" value="subversion_password" /> </cms-host> </cms-type>
user
password
domain
**http.authentication.hostname ** (required for NTLM authentication)
http.connection.timeout
http.max.connections
http.ssl.allow.all
<cms-type name="sharepoint"> <!-- Global Properties --> <cms-property name="stages.server.url" value="https://stages.mycompany:8080" /> <cms-property name="http.authentication.hostname" value="nonempty" /> <cms-property name="http.max.connections" value="100" /> <cms-property name="http.connection.timeout" value="10000" /> <cms-property name="http.socket.timeout" value="90000" /> <cms-property name="http.connection.pool.max.idle" value="60000" /> <cms-property name="http.ssl.allow.all" value="true" /> <cms-host ident="sharepoint.example.ident" name="https://sharepoint.example.net:1234" displayName="Sharepoint Example Server"> <!-- Host Properties --> <cms-property name="state.attribute.name" value="_Status" /> <cms-property name="version.date.format" value="dd.MM.yyyy HH:mm" /> <cms-property name="document.content.type.name" value="Document" /> <cms-property name="link.content.type.name" value="Link to a document" /> <cms-property name="user" value="sharepoint_username" /> <cms-property name="password" value="sharepoint_username" /> </cms-host> </cms-type>
These configuration properties affect the behavior of every integrated SharePoint server. The configuration of them needs to be done in the <cms-type> section of config.xml.
**stages.server.url ** (required)
**http.authentication.hostname ** (required for NTLM authentication)
upload.service
initial.checkin.fix
http.ssl.allow.all
http.max.connections
http.connection.timeout
http.socket.timeout
http.connection.pool.max.idle
http.connection.context.timeout
http.connection.resource.check.interval
**version.date.format **
**raw.version.date.format ** (required)
**document.content.type.name ** (required if Sharepoint Content Types are enabled)
**link.content.type.name ** (required if Sharepoint Content Types enabled)
user
password
domain
state.attribute.name (required)
label.attribute.name
label.attribute.delimiter
element.url.attribute.name
major.versions