-
Notifications
You must be signed in to change notification settings - Fork 10
GuideDataModel
DTGov makes use of the configured S-RAMP repository to store various internal objects as extension artifacts. This section of the guide documents this data model, providing a list of all extension artifact types, their use, and their properties. All DTGov artifacts can be modified either via the DTGov UI or by directly manipulating them using standard S-RAMP tools.
The DTGov notification service uses templates when sending notifications to users. These templates can be stored in the S-RAMP repository and queried via:
/s-ramp/ext/DtgovEmailTemplate
Each template artifact can have the following properties:
Property Name | Description |
---|---|
template |
A logical identifier used by the Notification Service when looking up the template to use for a particular notification. |
template-type |
The type of template, for example 'subject' or 'body'. |
The DTGov deployment service stores some information about the deployment in the S-RAMP repository so that it is possible to later undeploy the deployment. A list of all these undeployment artifacts can be found via:
/s-ramp/ext/UndeploymentInformation
Each undeployment artifact can have the following properties and relationships:
Property Name | Description |
---|---|
deploy.target |
|
deploy.type |
|
deploy.classifier |
Relationship Name | Description |
---|---|
describesDeployment |
A relationship from the UndeploymentInformation artifact that points to the deployment artifact it describes. |
Additional custom properties will be added to the undeployment info artifact depending on the type of deployment:
Property Name | Description |
---|---|
deploy.copy.file |
The location that the deployment was copied to (so it can be deleted). |
Property Name | Description |
---|---|
deploy.rhq.baseUrl |
URL of the RHQ server. |
deploy.rhq.port |
Port of the RHQ server. |
deploy.rhq.groupId |
The RHQ group the deployment was added to. |
deploy.rhq.name |
The deployment’s name. |
deploy.rhq.pluginName |
The RHQ plugin name - needed to support multiple versions of RHQ. |
Property Name | Description |
---|---|
deploy.cli.name |
The name of the deployment. |
deploy.cli.host |
The JBoss CLI server host. |
deploy.cli.port |
The JBoss CLI server port. |
deploy.cli.domainMode |
Boolean indicating whether the deployment was done in Domain mode. |
A primary feature of DTGov is to watch the S-RAMP repository for changes and, when it detects them, trigger a new instance of a BPMN2 workflow for the artifact that caused the change. The DTGov UI provides a way to manage these queries - each one is stored in the S-RAMP repository as a 'DtgovWorkflowQuery', which can be quried with the following:
/s-ramp/ext/DtgovWorkflowQuery
Each workflow query artifact can have the following properties:
Property Name | Description |
---|---|
query |
A valid S-RAMP query used to scan the repository for matching artifacts. |
workflow |
The ID of the BPMN2 workflow that will be triggered when an artifact matches the query. |
Additionally, the workflow query is configured with a number of custom properties configured in the UI. These properties are passed to the workflow instance when it is created. Each property is stored on the DtgovWorkflowQuery as a custom property prefixed with 'prop.'.
Whenever a workflow is triggered for an artifact in the S-RAMP repository (see the 'Workflow Queries' section above), DTGov will add an artifact to S-RAMP that represents the workflow instance. This provides a way to easily track all of the workflow instances, their state, and which S-RAMP artifact they are governing. A list of these workflow instances can be queried using the following:
/s-ramp/ext/DtgovWorkflowInstance
Each workflow query artifact can have the following properties and relationships:
Property Name | Description |
---|---|
workflow.processId |
The ID of the workflow instance in jBPM. |
workflow.numParams |
The number of parameters passed to the workflow instance when it was created. |
workflow.status |
The current status of the process (RUNNING, ABORTED, COMPLETED). |
workflow.param.* |
Each parameter passed to the workflow instance is prefixed by this. |
workflow.artifactId |
The ID of the S-RAMP artifact being governed. |
workflow.artifactName |
The name of the S-RAMP artifact being governed. |
Relationship Name | Description |
---|---|
governs |
A pointer to the artifact in S-RAMP that is being governed by this workflow instance. |
The DTGov deployment service is responsible for deploying an S-RAMP artifact (deployment) into a runtime environment such as JBoss EAP or Apache Tomcat. The service must be configured with at least one logical deployment target. This configuration information is managed via the DTGov user interface. Each deployment target is stored in the S-RAMP repository as a 'DeploymentTargetType'. These target artifacts can be queries with the following:
/s-ramp/ext/DtgovDeploymentTarget
Each workflow query artifact can have the following properties:
Property Name | Description |
---|---|
deployment.type |
The type of deployer to use (e.g. CLI, RHQ, File Copy, Maven). |
deployment.classifiers |
The classifier(s) to add to the artifact being deployed. |
Additional properties are added to the deployment target artifact depending on its type:
Property Name | Description |
---|---|
deployment.deployDir |
The server-side file directory/path to copy the deployment artifact into. |
Property Name | Description |
---|---|
deployment.baseUrl |
The URL of the RHQ server. |
deployment.pluginName |
The RHQ 'plugin name' - needed to support multiple versions of RHQ. |
deployment.user |
The RHQ username. |
deployment.password |
The RHQ password. |
deployment.group |
The RHQ server group to deploy into. |
Property Name | Description |
---|---|
deployment.host |
The host JBoss is running on. |
deployment.port |
The CLI port for JBoss. |
deployment.user |
The JBoss CLI username. |
deployment.password |
The JBoss CLI user’s password. |
deployment.domainMode |
Boolean indicating whether to use domain mode or standalone. |
deployment.serverGroup |
If domainMode=true, required to indicate the server group to deploy into. |
Property Name | Description |
---|---|
deployment.repositoryUrl |
The URL of the maven repository. |
deployment.releaseEnabled |
Boolean indicating whether releases are enabled. |
deployment.snapshotEnabled |
Boolean indicating whether snapshots are enabled. |
deployment.user |
The username for authenticating into the repository. |
deployment.password |
The password for authenticating into the repository. |