使用部署控制文件
部署控制文件是 XML 文件,将该文件与 DeployFolder 和 DeployDeploymentGroup pmrep 命令结合使用可部署文件夹或部署组。 您可以手动创建部署控制文件,为部署提供参数,或者使用“复制向导”创建部署控制文件。
如果手动创建部署控制文件,则必须符合与 PowerCenter Client 一同安装的 depcntl.dtd 文件。 在部署控制文件中包含 depcntl.dtd 文件的位置。
在部署控制文件中可以指定部署超时。 部署超时是 pmrep 在目标存储库中等待获取对象锁定的一段时间。 默认情况下,pmrep 会无限期地等待,直至获取锁定或取消部署为止。 要在 pmrep 等待获取锁定时取消部署,请按 Ctrl+C。
以下是 depcntl.dtd 文件示例:
<!ELEMENT DEPLOYPARAMS (DEPLOYFOLDER?, DEPLOYGROUP?)>
<!ATTLIST DEPLOYPARAMS
DEFAULTSERVERNAME CDATA #IMPLIED
COPYPROGRAMINFO (YES | NO) "YES"
COPYMAPVARPERVALS (YES | NO) "NO"
RETAINMAPVARPERVALS (YES | NO) "NO"
COPYWFLOWVARPERVALS (YES | NO) "NO"
COPYWFLOWSESSLOGS (YES | NO) "NO"
COPYDEPENDENCY (YES | NO) "YES"
LATESTVERSIONONLY (YES | NO) "NO"
CHECKIN_COMMENTS CDATA #IMPLIED
DEPLOYTIMEOUT CDATA "-1"
RETAINGENERATEDVAL (YES | NO) "YES"
RETAINSERVERNETVALS (YES | NO) "YES">
COPYDEPLOYMENTGROUP (YES | NO) "NO">
<!--criteria specific to deploying folder-->
<!ELEMENT DEPLOYFOLDER (REPLACEFOLDER?, DEPLOYEDFOLDEROWNER?, OVERRIDEFOLDER*)>
<!ATTLIST DEPLOYFOLDER
NEWFOLDERNAME CDATA #IMPLIED>
<!--folder to replace-->
<!ELEMENT REPLACEFOLDER EMPTY>
<!ATTLIST REPLACEFOLDER
FOLDERNAME CDATA #REQUIRED
RETAINMAPVARPERVALS (YES | NO) "NO"
RETAINWFLOWVARPERVALS (YES | NO) "YES"
RETAINWFLOWSESSLOGS (YES | NO) "NO"
MODIFIEDMANUALLY (YES | NO) "NO"
RETAINORIGFOLDEROWNER (YES | NO) "NO">
<!--shared folder to override-->
<!ELEMENT OVERRIDEFOLDER EMPTY>
<!ATTLIST OVERRIDEFOLDER
SOURCEFOLDERNAME CDATA #REQUIRED
SOURCEFOLDERTYPE (LOCAL | GLOBAL) "LOCAL"
TARGETFOLDERNAME CDATA #REQUIRED
TARGETFOLDERTYPE (LOCAL | GLOBAL) "LOCAL"
MODIFIEDMANUALLY (YES | NO) "NO"
<!--criteria specific to deploy deployment group-->
<!ELEMENT DEPLOYGROUP (REPLACEDG?, TARGETDGOWNER?, OVERRIDEFOLDER*, APPLYLABEL?)>
<!ATTLIST DEPLOYGROUP
CLEARSRCDEPLOYGROUP (YES | NO) "NO">
NEWDEPLOYGROUPNAME CDATA #IMPLIED
<!--labels used to apply on the src objects and deployed objects-->
<!ELEMENT APPLYLABEL EMPTY>
<!ATTLIST APPLYLABEL
SOURCELABELNAME CDATA #IMPLIED
SOURCEMOVELABEL (YES | NO) "NO"
TARGETLABELNAME CDATA #IMPLIED
TARGETMOVELABEL (YES | NO) "NO">
<!-- new owners of deployed folders -->
<!ELEMENT DEPLOYEDFOLDEROWNER EMPTY>
<!ATTLIST DEPLOYEDFOLDEROWNER
USERNAME CDATA #IMPLIED
SECURITYDOMAIN CDATA #IMPLIED
GROUPNAME CDATA #IMPLIED>
<!-- to indicate that a deployment group should be replaced-->
<!ELEMENT REPLACEDG EMPTY>
<!ATTLIST REPLACEDG
DGNAME CDATA #REQUIRED
SECURITYDOMAIN CDATA #IMPLIED
<!-- new owner of copied deployment group-->
<!ELEMENT TARGETDGOWNER EMPTY>
<!ATTLIST TARGETDGOWNER
USERNAME CDATA #IMPLIED
SECURITYDOMAIN CDATA #IMPLIED
部署控制文件参数
下表列出了 pmrep 部署控制文件参数:
元素 | 属性名称 | 属性说明 |
---|
DEPLOYPARAMS (与 DeployFolder 和 DeployDeploymentGroup 配合使用) | DEFAULTSERVERNAME | 可选。 在目标存储库中注册的集成服务,用于运行工作流。 对于任何部署,您都可以指定一个默认服务器名称。 |
- | COPYPROGRAMINFO | 可选。 复制 SAP 安装的 ABAP 程序。 |
- | COPYMAPVARPERVALS | 可选。 复制映射变量持久值。 |
- | RETAINMAPVARPERVALS | 可选。 在目标中保留映射变量持久值。 |
- | COPYWFLOWVARPERVALS | 可选。 复制工作流变量持久值。 |
- | COPYWFLOWSESSLOGS | 可选。 复制工作流日志。 |
- | COPYDEPENDENCY | 可选。 复制映射中对象的依赖关系信息。 |
- | COPYDEPLOYMENTGROUP | 可选。 将部署组与部署组中的对象一起复制到目标存储库。 |
- | VALIDATETARGETREPOSITORY | 可选。 验证目标存储库中的对象。 |
- | LATESTVERSIONONLY | 可选。 复制最新版本。 |
- | CHECKIN_COMMENTS | 可选。 复制或部署对象时,替代默认注释并在目标存储库中添加注释。 您必须将 LATESTVERSIONONLY 设置为 true 才能使用此属性。 |
- | DEPLOYTIMEOUT | 可选。 pmrep 尝试在目标存储库中获取对象锁定的时间(以秒为单位)。 值为 0 表示 pmrep 无法获取锁定时,复制操作立即失败。 值为 -1 表示 pmrep 等待无限长的时间,直到其获取锁定或用户取消操作。 默认值为 -1。 |
- | RETAINGENERATEDVAL | 可选。 保留序列生成器或规范器转换的当前值。 |
- | RETAINSERVERNETVALS | 可选。 在任务中保留服务器网络相关的值。 |
DEPLOYFOLDER (与 DeployFolder 配合使用) | NEWFOLDERNAME | 可选。 使用此名称创建文件夹。 |
REPLACEFOLDER (与 DeployFolder 配合使用) | FOLDERNAME | 必需。 在替换文件夹后,为文件夹命名。 |
- | RETAINMAPVARPERVALS | 可选。 在目标中保留映射变量持久值。 |
- | RETAINFLOWVARPERVALS | 可选。 保留工作流变量持久值。 |
- | RETAINWFLOWSESSLOGS | 可选。 在目标中保留工作流会话日志。 |
- | MODIFIEDMANUALLY | 可选。 如果自上次部署后已在目标文件夹中创建或修改对象,则比较文件夹。 |
- | RETAINORIGFOLDEROWNER | 可选。 保留现有文件夹所有者。 pmrep 忽略在 DEPLOYEDFOLDEROWNER 元素中提供的任何信息。 |
OVERRIDEFOLDER (与 DeployFolder 和 DeployDeploymentGroup 配合使用) | SOURCEFOLDERNAME | 必需。 如果部署文件夹,则指定快捷方式指向的当前文件夹。 如果部署一个部署组,则指定以下文件夹: - - 快捷方式指向的一个或多个文件夹
- - 包含部署组对象的一个或多个文件夹
|
- | SOURCEFOLDERTYPE | 可选。 如果部署文件夹,则指定快捷方式指向的文件夹类型。 使用本地或全局快捷方式。 |
- | TARGETFOLDERNAME | 必需。 如果部署文件夹,则指定快捷方式指向的文件夹。 如果部署一个部署组,则指定以下文件夹: - - 快捷方式指向的一个或多个文件夹
- - 包含部署组对象的一个或多个文件夹
|
- | TARGETFOLDERTYPE | 可选。 如果部署文件夹,则指定快捷方式指向的文件夹类型。 使用本地或全局快捷方式。 |
- | MODIFIEDMANUALLY | 可选。 如果自上次部署后已在目标文件夹中创建或修改对象,则比较文件夹。 仅可将此属性与 DeployDeploymentGroup 命令配合使用。 |
DEPLOYGROUP (与 DeployDeploymentGroup 配合使用) | CLEARSRCDEPLOYGROUP | 可选。 在部署后,从源组中删除对象。 |
- | NEWDEPLOYGROUPNAME | 可选。 使用此名称创建部署组。 如果指定了 REPLACEDG,则会被忽略。 默认名称为源部署组名称。 |
REPLACEDG | DGNAME | 可选。 要替换的部署组的名称。 |
- | RETAINORIGINALOWNER | 可选。 指定是否保留正在目标存储库中替换的部署组的所有者。 |
TARGETDGOWNER | USERNAME | 可选。 复制的部署组的所有者。 默认值为源部署组的所有者。 |
- | SECURITYDOMAIN | 可选。 目标部署组的安全域。 |
APPLYLABEL (与 DeployDeploymentGroup 配合使用) | SOURCELABELNAME | 可选。 将标签应用于源组中的所有对象。 |
- | SOURCEMOVELABEL | 可选。 将标签从源组中对象的其他版本移至对象的部署组版本。 如果存储库代理检测到标签已应用于相同对象的其他版本,则可以选择将标签移至对象的选定版本。 |
- | TARGETLABELNAME | 可选。 将标签应用于已部署到目标存储库的所有对象。 |
- | TARGETMOVELABEL | 可选。 将标签从目标组中对象的其他版本移至对象的部署组版本。 如果存储库代理检测到标签已应用于相同对象的其他版本,则可以选择将标签移至对象的最新版本。 |
DEPLOYEDFOLDEROWNER (与 DeployFolder 和 DeployDeploymentGroup 配合使用) | USERNAME | 可选。 目标存储库中已部署的文件夹或部署组的所有者。 |
- | SECURITYDOMAIN | 可选。 已部署文件夹或部署组的所有者所属安全域的名称。 |
- | GROUPNAME | 可选。 目标存储库中已部署文件夹或部署组的组所有者。 |