CentOS help


Integrated application deployment descriptor

The Integrated app deployment descriptor is an XML file that provides information to Teamforge about the configuration options that are exposed by the integrated application. Some of these are optional.

Note: Some of the tags are internationalized so that the application will display languages based on the browser locale. See Internationalize your integrated application.

Name

This will be the title name for the integrated app. (The button that appears in a project page when the integrated app is added to the project has this name). This name has to be unique and cannot be used for any other integrated app in the same TeamForge server.

Description

An internationalized string for the integrated app Description. This contains information that will help Project/Site Administrators know about the purpose of the integrated application (i.e. what does this integrated app do?)

Baseurl

The user will be directed to this URL, if he clicks on the integrated app icon in the button bar of a particular project. When a user clicks on an integrated app button in a project, the control will be sent to this URL.

Adminurl

This field indicates the URL available within the integrated application where the administration for the integrated app can be made. This is an optional field. Some applications may have an administration screen for configuring its own parameters. This field will contain that administration URL.

Permissions

This is a collection of permissions that are exposed by the integrated application. There could be any number of permissions that are exposed by the integrated application. These permissions will appear as a part of the project's existing and new roles so that they can also be assigned along with other tool permissions. One of these permissions could be mapped with a "dapMappedTo" attribute, which indicates the permission to be used when a user logs in without authenticating him to the system (for e.g. for Public projects). Typically, this will be the permission to read data, so that it doesn’t need a login name, but it will vary from one application to another.

require-perprojectprefix

(Integrated applications can indicate to CTF whether the object ids that it generates are uniquely identifiable across the entire integrated application (The value for the attribute in this case is "false") or whether they would need to be project specific (The value for the attribute in this case is "true"). If an integrated application needs per-project prefix, then the prefix value will have to be entered when the integrated application is added to a project.

Prefix

If the "require-per-project-prefix" is false, then the value of this tag will be used for identifying this integrated application in GoUrls/Associations/Linkifications etc. If the "require_project_prefix" is true, then the value will be used only for the "Host" project. Each of the projects will have to fill in their value as part of adding the Integrated app to their project (Refer to the doc on how to add an integrated app to a project)

gourl

Which URL must be used when an object id for an integrated application is specified (either via Jump_to_id or on the URL as /sf/go/<objectid>). This URL will be within the integrated application and can support couple of dynamic parameters. For example, if the Go URL is http://go.tourl.com/tracking?id=%o and the object ID entered is XYZ123, then the URL will be replaced and redirected to http://go.tourl.com/tracking?id=XYZ123.

Endpoint

This is the SOAP Endpoint for the integrated application. The Endpoint contains the various methods exposed by the integrated application and are called during the lifecycle of TeamForge.

Require-scm-integration

Indicates whether we need to validate the SCM commits. Some applications might have business rules which indicate that a commit can be done only if certain conditions are met. If this integrated application has any such rules, the value for the attribute should be "true". There are also a couple of methods to be implemented in the SOAP endpoint.

Page Component Settings

The Page Component settings are used for Project Content Editors. The integrated application content can become part of the standard Page Component Data that appears in Project home pages. The settings indicate the type of information that will be available from the integration application. [Note: For the 5.4 Alpha Release, Page Component Settings will not be available for Integrated applications. It will however be available in a future release]
Input type
This is the input type control for an integrated app Page Component. We only support 2 types now. Either "select" so that the inputs can be shown from a "SELECT" dropdown and the users will be able to pick a value from there. Else, it can be a "text" where a simple "text" field will be entered for taking the user input.
Result format
This is the format in which the output of Page Component is returned. This can be a "list" which indicates that it will be a Table like output. The integrated app will send the results in an XML format and the Integrated app framework converts this into a list of records. The other option is "html", where the output from the Integrated application is just displayed on the screen.
Page Component description
The description that will appear when you add an Integrated application Page Component (Link to the page where " Add component" is available)
Page Component title
The title that will appear when adding an Integrated application Page Component (Link to the page where "PCE Add component" is available)

Configuration Parameters

This section will specify all the configuration parameters that are required for an integrated application when associating to a project. There can be any number of configuration parameters for an integrated app and they are displayed when associating the app to a project. These parameters are filled in by the project administrator and are available at the integrated application SOAP interface as configuration parameters. The integrated app gets a chance to validate these parameters and indicate back to TeamForge whether this project association is successful by passing in a "TRUE". It can return a "FALSE" if it doesn’t want this project association to succeed. Each configuration parameter is placed inside the "param" tag, which can contain multiple elements to describe the parameter.
Title
The internationalized title that appears for a project admin to fill in while associating the integrated app to a project.
Name
The Java variable under which the value for this parameter will be available on the integrated application.
Description
The internationalized description that appears when a project admin fills in or enters a configuration parameter.
Default value
The default value for the parameter that will appear in the UI during the association of an integrated app to a project.
Display type
This is the type of display control used for the configuration parameter. We support "TEXT" for text fields, "CHECKBOX" for checkbox type controls, "RADIO" for radio buttons, and "SELECT" for select dropdowns. This field can also take an attribute that says what the value type for the field should be, i.e. whether it should be an "Integer", "String" etc. So if the field is expecting numbers, then entering "foo" as a value will throw a validation failure.
Option
If the display type is "RADIO" or "SELECT", then these fields contain the individual options available for the display controls. This will contain a "name" attribute that will be sent to the integrated application when that option is selected from the UI. The value of this option should be an internationalized field as it is the value visible to the user.
Editable
Whether this configuration parameter should be allowed for editing once the integrated app is associated to a project. These configuration parameters are available when you add /edit an integrated project. If a parameter should not be "edited" post association, then setting this to "false" will make it non-editable
Related reference information
pebble.dep.xml
install.conf