Skip to content

Commit

Permalink
Merge pull request #2 from PawelWozniak/master
Browse files Browse the repository at this point in the history
Package.xml formating issue fix
  • Loading branch information
JitendraZaa committed Dec 20, 2016
2 parents fd5f854 + 45cd327 commit b3a990d
Show file tree
Hide file tree
Showing 3 changed files with 58 additions and 39 deletions.
19 changes: 13 additions & 6 deletions GeneratePackage_xml.properties
@@ -1,12 +1,19 @@
# By : Jitendra Zaa
# Date : 12/31/2014
# Address : http://JitendraZaa.com
sfSandbox.serverurl = https://test.salesforce.com
sfPRO.serverurl = https://login.salesforce.com
# Version : 1.1 - added proxy settings. Pawel Wozniak 12/01/2016

# Uncoment which is needed
sf.serverurl = https://test.salesforce.com
#sf.serverurl = https://login.salesforce.com

sf.username = YOURUSERNAME
sf.password = YOURPASSWORD
sf.username = <USERNAME>
sf.password = <PASSWORD>
sf.xmlPath = tmp
sf.Name = TrainingOrg
sf.Name = EnvBackup

package.xml.template = config/template-Package-Folders.xml

package.xml.template = config/template-Package-Folders.xml
# Proxy Settings
proxy.host =
proxy.port =
62 changes: 39 additions & 23 deletions GeneratePackage_xml.xml
Expand Up @@ -2,11 +2,21 @@
Author : Jitendra Zaa
Date : 12/31/2014
Address : http://JitendraZaa.com
Version : 1.1 - fixed package.xml formating issues, added proxy settings, tmp folder creation. Pawel Wozniak 12/01/2016
-->
<project name="Generate Package.xml" default="testPackageXML" basedir="." xmlns:sf="antlib:com.salesforce">

<!-- Use this proxy when in Proxy required network -->
<target name="proxy">
<setproxy proxyhost="${proxy.host}" proxyport="${proxy.port}" />
</target>

<!-- Use this empty proxy setting outside Proxy Required network -->
<target name="noproxy">
</target>

<!--
Import AntContrib
Import AntContrib. It is needed to add For loop support
Download it from - http://mvnrepository.com/artifact/ant-contrib/ant-contrib/1.0b3
-->
<taskdef resource="net/sf/antcontrib/antlib.xml">
Expand All @@ -17,8 +27,9 @@

<property file="GeneratePackage_xml.properties"/>
<property environment="env"/>
<property name="tab" value=" "/>

<!-- Get folders content -->
<macrodef name="Package_fetchFolderContents">
<attribute name="folderName"/>
<attribute name="componentType"/>
Expand All @@ -28,7 +39,6 @@
<attribute name="sfServerURL"/>

<sequential>

<sf:listMetadata
username="@{sfUserName}"
password="@{sfPassword}"
Expand All @@ -42,9 +52,10 @@
<available file="tmp/@{orgName}-@{componentType}-@{folderName}.log"/>
<then>
<loadfile srcfile="tmp/@{orgName}-@{componentType}-@{folderName}.log" property="@{orgName}.@{componentType}.@{folderName}" >
<filterchain>
<ignoreblank/>
<linecontains negate="false">
<filterchain>
<ignoreblank/>
<trim/>
<linecontains>
<contains value="FileName:"/>
</linecontains>

Expand All @@ -58,20 +69,24 @@
<replacestring from="FileName: dashboards/" to=""/>
<replacestring from=".report" to=""/>
<replacestring from=".email" to=""/>
<replacestring from=".dashboard" to=""/>
<replacestring from=".dashboard" to=""/>
</tokenfilter>
</filterchain>
</loadfile>

<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.@{componentType}" append="true">
${@{orgName}.@{componentType}.@{folderName}}
</concat>

<!-- Write filtered content to snippet file -->
<for param="line" list="${@{orgName}.@{componentType}.@{folderName}}" delimiter="${line.separator}">
<sequential>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.@{componentType}" append="true" >${tab}${tab}@{line}${line.separator}</concat>
</sequential>
</for>
<!-- <echo> Extracted Report Names - ${@{orgName}.@{componentType}.@{folderName}} </echo> -->
</then>
</if>
</sequential>
</macrodef>

<!-- Get the folder name -->
<macrodef name="Package_computeFolderName">
<attribute name="sfUserName"/>
<attribute name="sfPassword"/>
Expand All @@ -82,17 +97,18 @@
<attribute name="orgName"/>

<sequential>

<sf:listMetadata
username="@{sfUserName}"
password="@{sfPassword}"
serverurl="@{sfServerURL}"
metadataType="@{metadataType}"
resultFilePath="@{tmpFolderPath}"/>
<echo> Output file for sf:listMetadata - @{tmpFolderPath} </echo>

<echo>Output file for sf:listMetadata - @{tmpFolderPath}</echo>

<loadfile srcfile="@{tmpFolderPath}" property="@{orgName}.@{metadataType}.onlyFolderName" >
<filterchain>
<trim/>
<ignoreblank/>
<linecontains negate="false">
<contains value="FileName"/>
Expand All @@ -109,11 +125,9 @@

<for param="line" list="${@{orgName}.@{metadataType}.onlyFolderName}" delimiter="${line.separator}">
<sequential>
<echo> Folder - @{line} </echo>
<echo>Folder - @{line}</echo>

<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.@{componentType}" append="true">
&lt;members&gt; @{line} &lt;/members&gt;
</concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.@{componentType}" append="true">${tab}${tab}&lt;members&gt;@{line}&lt;/members&gt;${line.separator}</concat>

<Package_fetchFolderContents
folderName="@{line}"
Expand Down Expand Up @@ -151,10 +165,10 @@

<!-- Empty Content in each file -->
<property name="blankVal" value=""/>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.Dashboard" append="true"> ${blankVal} </concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.Report" append="true"> ${blankVal} </concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.EmailTemplate" append="true"> ${blankVal} </concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.Document" append="true"> ${blankVal} </concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.Dashboard" append="true">${blankVal}</concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.Report" append="true">${blankVal}</concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.EmailTemplate" append="true">${blankVal}</concat>
<concat destfile="tmp/@{orgName}.Package.xml.Snnipet.Document" append="true">${blankVal}</concat>


<!--
Expand Down Expand Up @@ -223,11 +237,13 @@
</sequential>
</macrodef>

<target name="testPackageXML">
<target name="testPackageXML" depends="noproxy"> <!-- Change to proxy if do not want to use proxy -->
<!-- Create tmp folder if missing -->
<mkdir dir="tmp"/>
<GeneratePackage_xml
sfUserName = "${sf.username}"
sfPassword = "$${sf.password}"
sfServerURL = "${sfPRO.serverurl}"
sfServerURL = "${sf.serverurl}"
packageXMLPath = "${basedir}/${sf.xmlPath}/Package.xml"
orgName="${sf.Name}" />

Expand Down
16 changes: 6 additions & 10 deletions config/template-Package-Folders.xml
Expand Up @@ -9,7 +9,7 @@
<name>AccountOwnerSharingRule</name>
</types>
<types>
<members>Account_Opportunity_Analytic_snapshot</members>
<members>*</members>
<name>AnalyticSnapshot</name>
</types>
<types>
Expand Down Expand Up @@ -96,16 +96,13 @@
<name>CustomTab</name>
</types>
<types>
_replaceDashboardMembersTag_
<name>Dashboard</name>
_replaceDashboardMembersTag_ <name>Dashboard</name>
</types>
<types>
_replaceDocumentMembersTag_
<name>Document</name>
_replaceDocumentMembersTag_ <name>Document</name>
</types>
<types>
_replaceEmailTemplateMembersTag_
<name>EmailTemplate</name>
_replaceEmailTemplateMembersTag_ <name>EmailTemplate</name>
</types>
<types>
<members>*</members>
Expand Down Expand Up @@ -152,8 +149,7 @@ _replaceEmailTemplateMembersTag_
<name>RemoteSiteSetting</name>
</types>
<types>
_replaceReportMembersTag_
<name>Report</name>
_replaceReportMembersTag_ <name>Report</name>
</types>
<types>
<members>*</members>
Expand All @@ -175,5 +171,5 @@ _replaceReportMembersTag_
<members>*</members>
<name>Settings</name>
</types>
<version>28.0</version>
<version>38.0</version>
</Package>

0 comments on commit b3a990d

Please sign in to comment.