Build Files for Governance Controls
The build file for governance controls supports a set of targets to create and manage governance controls. The default location of the build files is
<TIBCO_HOME>/pd/1.2/samples/common
.
project Element
The
project
element declares the default build target for the
build.xml file.
taskdef
and
target
are sub elements of the project. The optional
default
attribute is used to specify a default target. You can select any target from the build file to be the default target.
<project default="target"> <taskdef ... /> <target name="target" ... /> </project>
import Element
The
import
element identifies the task definition file, which defines the path to the libraries required by ActiveMatrix Policy Director Governance.
Set the
file
attribute to ${basic.cli.file}
and
${gov.admin.cli.file}
. For example:
<import file="${basic.cli.file}"/> <import file="${gov.admin.cli.file}"/>
target Element
The
target
element specifies the actions performed for an execution of the command-line interface. In a target you can provide a
depends
attribute containing a list of targets. Each target runs in order until one fails or the list completes.
<target name="target"> <AMXAdminTask ... /> </target>
Add Target
The
add
target creates new governance controls. The governance control template is based on the data file specified in the dataFile attribute. The following is a sample code snippet of the
add
target:
<target name="add"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="add" propsFile="${props.file}" remote="true"/> </target>
Edit Target
The
edit
target modifies existing governance controls. The following is a sample code snippet of the
edit
target:
<target name="edit"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="edit" propsFile="${props.file}" remote="true"/> </target>
Delete Target
The
delete
target deletes one or more governance controls. The following is a sample code snippet of the
delete
target:
<target name="delete"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="delete" propsFile="${props.file}" remote="true"/> </target>
Deploy Target
The
deploy
target deploys the governance control. The following is a sample code snippet of the
deploy
target:
<target name="deploy"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="deploy" propsFile="${props.file}" remote="true"/> </target>
Undeploy Target
The
undeploy
target undeploys the governance control. The following is a sample code snippet of the
undeploy
target:
<target name="undeploy"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="undeploy" propsFile="${props.file}" remote="true"/> </target>
synch-rule-obj-groups Target
The
syncMembers
target is a utility to synchronize object groups that deploy the governance control. This utility is used only when the Object Group membership is not synchornized. The following is a sample code snippet of the
sync-rule-obj-groups
target:
<target name="sync-rule-obj-groups"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:SyncRuleObjGroupRefs" dataFile="basicAuthentication_GCRule_data.xml" action="syncObjectGroupRefs" propsFile="${props.file}" remote="true"/> </target>
Sample Build File
The following is a sample build file that contains the targets required for managing a governance control:
<?xml version="1.0"?> <project default="add"> <property file="ogp-cli.properties"/> <property value="rule_export_data.xml" name="exported.data.file"/> <import file="${basic.cli.file}"/> <import file="${gov.admin.cli.file}"/> <target name="add_and_deploy_basicAuth_rule" depends="add, deploy"/> <target name="undeploy_and_delete_basicAuth_rule" depends="undeploy, delete"/> <target name="add"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="add" propsFile="${props.file}" remote="true"/> </target> <target name="edit"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="edit" propsFile="${props.file}" remote="true"/> </target> <target name="deploy"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="deploy" propsFile="${props.file}" remote="true"/> </target> <target name="undeploy"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="undeploy" propsFile="${props.file}" remote="true"/> </target> <target name="delete"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:StandaloneRule" dataFile="basicAuthentication_GCRule_data.xml" action="delete" propsFile="${props.file}" remote="true"/> </target> <target name="sync-rule-obj-groups"> <GovernanceAdminTask failOnError="false" force="true" createIfNotExists="true" merge="true" overwrite="true" objectSelector="declare namespace rule='http://tibco.com/governance/pd/cli/types_rule'; rule:SyncRuleObjGroupRefs" dataFile="basicAuthentication_GCRule_data.xml" action="syncObjectGroupRefs" propsFile="${props.file}" remote="true"/> </target> </project>