Question
TalkTalk
GB
Last activity: 14 May 2018 3:23 EDT
Jenkins integration issues - setup help
hello everyone
i've configure jenkins on my local machine following the setup guide suggested below:
plugins installed, environment variables set (if someone could tell me which way around import/export are. i want to test firstly just taking an application off a pega environment and storing it in a file first)
i have a personal edition running 7.3.1 on port 8081, login details are admin@Test pass:admin,
jenkins servier on port 8081
i've gotten to the point shown in the below console output in jenkins:
hello everyone
i've configure jenkins on my local machine following the setup guide suggested below:
plugins installed, environment variables set (if someone could tell me which way around import/export are. i want to test firstly just taking an application off a pega environment and storing it in a file first)
i have a personal edition running 7.3.1 on port 8081, login details are admin@Test pass:admin,
jenkins servier on port 8081
i've gotten to the point shown in the below console output in jenkins:
Started by user admin
[EnvInject] - Loading node environment variables.
[EnvInject] - Preparing an environment for the build.
[EnvInject] - Keeping Jenkins system variables.
[EnvInject] - Keeping Jenkins build variables.
[EnvInject] - Injecting as environment variables the properties content
SystemName=$BUILD_TAG
SourcePassword=rules
SourceHost=http://localhost:8081
SourceUser=admin@Test
[EnvInject] - Variables injected successfully.
[EnvInject] - Injecting contributions.
Building in workspace C:\TaskJenkins\Jenkins\workspace\PegaExport
[EnvInject] - Unset unresolved 'USERNAME' variable.
[EnvInject] - Executing scripts and injecting environment variables after the SCM step.
[EnvInject] - Injecting as environment variables the properties content
ImportExistingInstance=skip
ARTIFACTS_DIR=C:TaskJenkinsJenkins
[EnvInject] - Variables injected successfully.
[jenkins] $ cmd.exe /C "ant.bat -file Jenkins-build.xml -DproductVersion=20180219.100722 -DTargetHost=http://localhost:8081 -DTargetPassword=rules -DproductName=Test -DTargetUser=admin@Test exportprops && exit %%ERRORLEVEL%%"
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\samples\jenkins\Jenkins-build.xml
exportprops:
[propertyfile] Creating new property file: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\jenkins-PegaExport-3_export.properties
BUILD SUCCESSFUL
Total time: 0 seconds
[PegaExport] $ cmd /c call C:\windows\TEMP\jenkins2980875066725196557.bat
C:\TaskJenkins\Jenkins\workspace\PegaExport>C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcServiceUtils.bat export --connPropFile
Invoke our ant script, passing in the arguments as collected
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml
[echo] *** JVM Arguments -XX:MaxHeapSize=1280m -XX:MaxMetaspaceSize=512m ***
-init:
[echo] ******************************************************************
[echo] Build date : ${pegaBuildDate.value}
[echo] Pega7 platform version : ${specificationVersion.value}
[echo] ******************************************************************
[delete] Deleting directory C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\generated
[mkdir] Created dir: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\generated
[pega:propertyparser] Reading Properties from: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils/prpcServiceUtils.properties
[pega:propertyparser] getstatus.jobID=
[pega:propertyparser] hotfix.async=true
[pega:propertyparser] expose.includeDescendents=true
[pega:propertyparser] export.async=true
[pega:propertyparser] expose.async=true
[pega:propertyparser] expose.excludedClasses=
[pega:propertyparser] import.commitRate=100
[pega:propertyparser] export.productName=
[pega:propertyparser] export.branchAppContext=
[pega:propertyparser] expose.commitRate=100
[pega:propertyparser] import.existingInstances=skip
[pega:propertyparser] user.temp.dir=C:/pega_temp
[pega:propertyparser] expose.reindex=true
[pega:propertyparser] hotfix.operation=
[pega:propertyparser] expose.excludeDescendents=true
[pega:propertyparser] updateAccessGroup.applicationName=
[pega:propertyparser] import.nofailonerror=false
[pega:propertyparser] pega.rest.proxy.password=*****
[pega:propertyparser] import.codesetVersion=06-01-01
[pega:propertyparser] export.applicationVersion=
[pega:propertyparser] pega.rest.proxy.username=
[pega:propertyparser] expose.includedClasses=
[pega:propertyparser] rollback.action=SystemRollback
[pega:propertyparser] pega.rest.server.url=http://<host name>:<port number>/<context>/PRRestService/<tenant url hash>
[pega:propertyparser] updateAccessGroup.applicationVersion=
[pega:propertyparser] expose.startKey=
[pega:propertyparser] expose.reindexType=nonpega
[pega:propertyparser] import.codesetName=Customer
[pega:propertyparser] manageRestorePoints.restorePointLabel=
[pega:propertyparser] import.async=true
[pega:propertyparser] pega.rest.password=*****
[pega:propertyparser] hotfix.force=false
[pega:propertyparser] import.compileLibraries=true
[pega:propertyparser] rollback.restorePointName=
[pega:propertyparser] import.allowImportWithMissingDependencies=false
[pega:propertyparser] export.productVersion=
[pega:propertyparser] pega.rest.username=
[pega:propertyparser] rollback.async=true
[pega:propertyparser] export.branchName=
[pega:propertyparser] getstatus.operationName=
[pega:propertyparser] expose.endDate=
[pega:propertyparser] import.preserveOrder=true
[pega:propertyparser] rollback.downloadLogToFile=true
[pega:propertyparser] pega.rest.proxy.port=
[pega:propertyparser] pega.rest.proxy.workstation=
[pega:propertyparser] expose.endKey=
[pega:propertyparser] hotfix.dlFilePath=
[pega:propertyparser] import.archive.path=
[pega:propertyparser] updateAccessGroup.groupList=
[pega:propertyparser] manageRestorePoints.restorePointName=
[pega:propertyparser] export.archiveName=
[pega:propertyparser] import.mode=import
[pega:propertyparser] expose.startDate=
[pega:propertyparser] hotfix.bypassSchema=false
[pega:propertyparser] manageTrackedData.operation=
[pega:propertyparser] expose.numOfThreads=1
[pega:propertyparser] hotfix.catalogPath=
[pega:propertyparser] manageRestorePoints.action=
[pega:propertyparser] import.skipBackup=false
[pega:propertyparser] pega.rest.proxy.domain=
[pega:propertyparser] export.applicationName=
[pega:propertyparser] pega.rest.response.type=json
[pega:propertyparser] pega.rest.proxy.host=
[mkdir] Created dir: C:\windows\TEMP\PegaInstallTemp-20-February-2018-12.59.01
[pega:hasenoughspace] Found 265661304KB of free space on 'C:\windows\TEMP\'
-processInstances:
[echo] Performing ${prpc.service.util.action} on multiple instance(s)
[pega:echoargline] arg line : -action ${prpc.service.util.action} -propFileDir C:\TaskJenkins\prpcServiceUtils_73\scripts\utils/generated -poolSize ${prpcserviceutils.pool.size} -requestTimeOut ${prpcserviceutils.request.timeout} -tempDir C:\windows\TEMP\/PegaInstallTemp-20-February-2018-12.59.01 -artifactsDir logs
[echo] Reading connection information from -Dprpc.service.util.action=export
[pega:propertyfilegenerator] pega.rest.server.url=http://<host name>:<port number>/<context>/PRRestService/<tenant url hash>
[pega:propertyfilegenerator] pega.rest.username=
[pega:propertyfilegenerator] pega.rest.password=*****
[pega:propertyfilegenerator] pega.rest.proxy.host=
[pega:propertyfilegenerator] pega.rest.proxy.port=
[pega:propertyfilegenerator] pega.rest.proxy.username=
[pega:propertyfilegenerator] pega.rest.proxy.password=*****
[pega:propertyfilegenerator] pega.rest.proxy.domain=
[pega:propertyfilegenerator] pega.rest.proxy.workstation=
[pega:propertyfilegenerator] pega.rest.response.type=json
[pega:propertyfilegenerator] user.temp.dir=C:/pega_temp
[pega:propertyfilegenerator] export.archiveName=
[pega:propertyfilegenerator] export.productName=
[pega:propertyfilegenerator] export.productVersion=
[pega:propertyfilegenerator] export.applicationVersion=
[pega:propertyfilegenerator] export.applicationName=
[pega:propertyfilegenerator] export.branchName=
[pega:propertyfilegenerator] export.branchAppContext=
[pega:propertyfilegenerator] export.async=true
[pega:propertyfilegenerator] expose.includedClasses=
[pega:propertyfilegenerator] expose.includeDescendents=true
[pega:propertyfilegenerator] expose.excludedClasses=
[pega:propertyfilegenerator] expose.excludeDescendents=true
[pega:propertyfilegenerator] expose.startKey=
[pega:propertyfilegenerator] expose.endKey=
[pega:propertyfilegenerator] expose.startDate=
[pega:propertyfilegenerator] expose.endDate=
[pega:propertyfilegenerator] expose.reindex=true
[pega:propertyfilegenerator] expose.reindexType=nonpega
[pega:propertyfilegenerator] expose.commitRate=100
[pega:propertyfilegenerator] expose.numOfThreads=1
[pega:propertyfilegenerator] expose.async=true
[pega:propertyfilegenerator] import.archive.path=
[pega:propertyfilegenerator] import.mode=import
[pega:propertyfilegenerator] import.existingInstances=skip
[pega:propertyfilegenerator] import.nofailonerror=false
[pega:propertyfilegenerator] import.commitRate=100
[pega:propertyfilegenerator] import.compileLibraries=true
[pega:propertyfilegenerator] import.allowImportWithMissingDependencies=false
[pega:propertyfilegenerator] import.preserveOrder=true
[pega:propertyfilegenerator] import.codesetName=Customer
[pega:propertyfilegenerator] import.codesetVersion=06-01-01
[pega:propertyfilegenerator] import.async=true
[pega:propertyfilegenerator] import.skipBackup=false
[pega:propertyfilegenerator] manageTrackedData.operation=
[pega:propertyfilegenerator] hotfix.operation=
[pega:propertyfilegenerator] hotfix.dlFilePath=
[pega:propertyfilegenerator] hotfix.catalogPath=
[pega:propertyfilegenerator] hotfix.bypassSchema=false
[pega:propertyfilegenerator] hotfix.force=false
[pega:propertyfilegenerator] hotfix.async=true
[pega:propertyfilegenerator] getstatus.jobID=
[pega:propertyfilegenerator] getstatus.operationName=
[pega:propertyfilegenerator] manageRestorePoints.action=
[pega:propertyfilegenerator] manageRestorePoints.restorePointName=
[pega:propertyfilegenerator] manageRestorePoints.restorePointLabel=
[pega:propertyfilegenerator] rollback.restorePointName=
[pega:propertyfilegenerator] rollback.action=SystemRollback
[pega:propertyfilegenerator] rollback.async=true
[pega:propertyfilegenerator] rollback.downloadLogToFile=true
[pega:propertyfilegenerator] updateAccessGroup.applicationName=
[pega:propertyfilegenerator] updateAccessGroup.applicationVersion=
[pega:propertyfilegenerator] updateAccessGroup.groupList=
BUILD FAILED
C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml:179: Connection Property file -Dprpc.service.util.action=export is not a valid file
Total time: 0 seconds
Exiting with Error
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE
-
Like (0)
-
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Accepted Solution
Pegasystems Inc.
US
Had a screenshare with Aaron and performed the jenkins integration with a new Jenkins Job. The functionality is working as expected after using the latest downloaded prpcServiceUtils_73 utility. So the issue might be coming from the changes done in the prpcServiceUtils utility.
Pegasystems Inc.
US
Hi Aaron,
Could you share the screenshots of your Jenkins Job configuration along with the Environment variables which are declared in Jenkins. Also share the jenkins-build.xml file which is available in your prpcServiceUtils.
Regards
Mahesh
TalkTalk
GB
attached are my screenshots labelled in order to make it easier along with a zip of all screens together and my jenkins-build.xml in a zip
also if you would like to talk over skype or any other medium at a suitable time for you. send me a day/time and timezone for this to be arranged. i'm flexible for any day/time
-
Anil Nuthalapati
Pegasystems Inc.
US
In Screen7.PNG, the command used to perform exportprops task is wrong as specified below
%PEGA_HOME%\scripts\utils\prpcServiceUtils.bat export --connPropFile %WORKSPACE%\%SystemName%_export.properties --artifactsDir %WORKSPACE%
Your command is missing --connPropFile in the command.
Suggestion: Change to the above command and also kindly make sure that you provided the Build File($PEGA_HOME\scripts\samples\jenkins\Jenkins-build.xml) for exportprops target before you run the task.
TalkTalk
GB
the output in my log is from when i had that command in there (--connPropFile). i removed to try something else
can you explain the suggestion please. i'll add the command meanwhile
Pegasystems Inc.
US
I mean to say, in the exportprops Build File field provide $PEGA_HOME\scripts\samples\jenkins\Jenkins-build.xml in order to read the build configuration from this file, use backward slash in path.
TalkTalk
GB
Started by user admin
[EnvInject] - Loading node environment variables.
[EnvInject] - Preparing an environment for the build.
[EnvInject] - Keeping Jenkins system variables.
[EnvInject] - Keeping Jenkins build variables.
[EnvInject] - Injecting as environment variables the properties content
SystemName=$BUILD_TAG
SourcePassword=rules
SourceHost=http://localhost:8081
SourceUser=admin@Test
[EnvInject] - Variables injected successfully.
[EnvInject] - Injecting contributions.
Building in workspace C:\TaskJenkins\Jenkins\workspace\PegaExport
[EnvInject] - Unset unresolved 'USERNAME' variable.
[EnvInject] - Executing scripts and injecting environment variables after the SCM step.
[EnvInject] - Injecting as environment variables the properties content
ImportExistingInstance=skip
ARTIFACTS_DIR=C:TaskJenkinsJenkins
[EnvInject] - Variables injected successfully.
[jenkins] $ cmd.exe /C "ant.bat -file Jenkins-build.xml -DproductVersion=20180219.100722 -DTargetHost=http://localhost:8081 -DTargetPassword=rules -DproductName=Test -DTargetUser=admin@Test exportprops && exit %%ERRORLEVEL%%"
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\samples\jenkins\Jenkins-build.xml
exportprops:
[propertyfile] Creating new property file: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\jenkins-PegaExport-5_export.properties
BUILD SUCCESSFUL
Total time: 0 seconds
[PegaExport] $ cmd /c call C:\windows\TEMP
Started by user admin
[EnvInject] - Loading node environment variables.
[EnvInject] - Preparing an environment for the build.
[EnvInject] - Keeping Jenkins system variables.
[EnvInject] - Keeping Jenkins build variables.
[EnvInject] - Injecting as environment variables the properties content
SystemName=$BUILD_TAG
SourcePassword=rules
SourceHost=http://localhost:8081
SourceUser=admin@Test
[EnvInject] - Variables injected successfully.
[EnvInject] - Injecting contributions.
Building in workspace C:\TaskJenkins\Jenkins\workspace\PegaExport
[EnvInject] - Unset unresolved 'USERNAME' variable.
[EnvInject] - Executing scripts and injecting environment variables after the SCM step.
[EnvInject] - Injecting as environment variables the properties content
ImportExistingInstance=skip
ARTIFACTS_DIR=C:TaskJenkinsJenkins
[EnvInject] - Variables injected successfully.
[jenkins] $ cmd.exe /C "ant.bat -file Jenkins-build.xml -DproductVersion=20180219.100722 -DTargetHost=http://localhost:8081 -DTargetPassword=rules -DproductName=Test -DTargetUser=admin@Test exportprops && exit %%ERRORLEVEL%%"
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\samples\jenkins\Jenkins-build.xml
exportprops:
[propertyfile] Creating new property file: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\jenkins-PegaExport-5_export.properties
BUILD SUCCESSFUL
Total time: 0 seconds
[PegaExport] $ cmd /c call C:\windows\TEMP\jenkins8252834108445935091.bat
C:\TaskJenkins\Jenkins\workspace\PegaExport>C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcServiceUtils.bat export --connPropFile
Invoke our ant script, passing in the arguments as collected
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml
[echo] *** JVM Arguments -XX:MaxHeapSize=1280m -XX:MaxMetaspaceSize=512m ***
-init:
[echo] ******************************************************************
[echo] Build date : ${pegaBuildDate.value}
[echo] Pega7 platform version : ${specificationVersion.value}
[echo] ******************************************************************
[delete] Deleting directory C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\generated
[mkdir] Created dir: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\generated
[pega:propertyparser] Reading Properties from: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils/prpcServiceUtils.properties
[pega:propertyparser] getstatus.jobID=
[pega:propertyparser] hotfix.async=true
[pega:propertyparser] expose.includeDescendents=true
[pega:propertyparser] export.async=true
[pega:propertyparser] expose.async=true
[pega:propertyparser] expose.excludedClasses=
[pega:propertyparser] import.commitRate=100
[pega:propertyparser] export.productName=
[pega:propertyparser] export.branchAppContext=
[pega:propertyparser] expose.commitRate=100
[pega:propertyparser] import.existingInstances=skip
[pega:propertyparser] user.temp.dir=C:/pega_temp
[pega:propertyparser] expose.reindex=true
[pega:propertyparser] hotfix.operation=
[pega:propertyparser] expose.excludeDescendents=true
[pega:propertyparser] updateAccessGroup.applicationName=
[pega:propertyparser] import.nofailonerror=false
[pega:propertyparser] pega.rest.proxy.password=*****
[pega:propertyparser] import.codesetVersion=06-01-01
[pega:propertyparser] export.applicationVersion=
[pega:propertyparser] pega.rest.proxy.username=
[pega:propertyparser] expose.includedClasses=
[pega:propertyparser] rollback.action=SystemRollback
[pega:propertyparser] pega.rest.server.url=http://<host name>:<port number>/<context>/PRRestService/<tenant url hash>
[pega:propertyparser] updateAccessGroup.applicationVersion=
[pega:propertyparser] expose.startKey=
[pega:propertyparser] expose.reindexType=nonpega
[pega:propertyparser] import.codesetName=Customer
[pega:propertyparser] manageRestorePoints.restorePointLabel=
[pega:propertyparser] import.async=true
[pega:propertyparser] pega.rest.password=*****
[pega:propertyparser] hotfix.force=false
[pega:propertyparser] import.compileLibraries=true
[pega:propertyparser] rollback.restorePointName=
[pega:propertyparser] import.allowImportWithMissingDependencies=false
[pega:propertyparser] export.productVersion=
[pega:propertyparser] pega.rest.username=
[pega:propertyparser] rollback.async=true
[pega:propertyparser] export.branchName=
[pega:propertyparser] getstatus.operationName=
[pega:propertyparser] expose.endDate=
[pega:propertyparser] import.preserveOrder=true
[pega:propertyparser] rollback.downloadLogToFile=true
[pega:propertyparser] pega.rest.proxy.port=
[pega:propertyparser] pega.rest.proxy.workstation=
[pega:propertyparser] expose.endKey=
[pega:propertyparser] hotfix.dlFilePath=
[pega:propertyparser] import.archive.path=
[pega:propertyparser] updateAccessGroup.groupList=
[pega:propertyparser] manageRestorePoints.restorePointName=
[pega:propertyparser] export.archiveName=
[pega:propertyparser] import.mode=import
[pega:propertyparser] expose.startDate=
[pega:propertyparser] hotfix.bypassSchema=false
[pega:propertyparser] manageTrackedData.operation=
[pega:propertyparser] expose.numOfThreads=1
[pega:propertyparser] hotfix.catalogPath=
[pega:propertyparser] manageRestorePoints.action=
[pega:propertyparser] import.skipBackup=false
[pega:propertyparser] pega.rest.proxy.domain=
[pega:propertyparser] export.applicationName=
[pega:propertyparser] pega.rest.response.type=json
[pega:propertyparser] pega.rest.proxy.host=
[mkdir] Created dir: C:\windows\TEMP\PegaInstallTemp-21-February-2018-09.55.20
[pega:hasenoughspace] Found 267187844KB of free space on 'C:\windows\TEMP\'
-processInstances:
[echo] Performing ${prpc.service.util.action} on multiple instance(s)
[pega:echoargline] arg line : -action ${prpc.service.util.action} -propFileDir C:\TaskJenkins\prpcServiceUtils_73\scripts\utils/generated -poolSize ${prpcserviceutils.pool.size} -requestTimeOut ${prpcserviceutils.request.timeout} -tempDir C:\windows\TEMP\/PegaInstallTemp-21-February-2018-09.55.20 -artifactsDir logs
[echo] Reading connection information from -Dprpc.service.util.action=export
[pega:propertyfilegenerator] pega.rest.server.url=http://<host name>:<port number>/<context>/PRRestService/<tenant url hash>
[pega:propertyfilegenerator] pega.rest.username=
[pega:propertyfilegenerator] pega.rest.password=*****
[pega:propertyfilegenerator] pega.rest.proxy.host=
[pega:propertyfilegenerator] pega.rest.proxy.port=
[pega:propertyfilegenerator] pega.rest.proxy.username=
[pega:propertyfilegenerator] pega.rest.proxy.password=*****
[pega:propertyfilegenerator] pega.rest.proxy.domain=
[pega:propertyfilegenerator] pega.rest.proxy.workstation=
[pega:propertyfilegenerator] pega.rest.response.type=json
[pega:propertyfilegenerator] user.temp.dir=C:/pega_temp
[pega:propertyfilegenerator] export.archiveName=
[pega:propertyfilegenerator] export.productName=
[pega:propertyfilegenerator] export.productVersion=
[pega:propertyfilegenerator] export.applicationVersion=
[pega:propertyfilegenerator] export.applicationName=
[pega:propertyfilegenerator] export.branchName=
[pega:propertyfilegenerator] export.branchAppContext=
[pega:propertyfilegenerator] export.async=true
[pega:propertyfilegenerator] expose.includedClasses=
[pega:propertyfilegenerator] expose.includeDescendents=true
[pega:propertyfilegenerator] expose.excludedClasses=
[pega:propertyfilegenerator] expose.excludeDescendents=true
[pega:propertyfilegenerator] expose.startKey=
[pega:propertyfilegenerator] expose.endKey=
[pega:propertyfilegenerator] expose.startDate=
[pega:propertyfilegenerator] expose.endDate=
[pega:propertyfilegenerator] expose.reindex=true
[pega:propertyfilegenerator] expose.reindexType=nonpega
[pega:propertyfilegenerator] expose.commitRate=100
[pega:propertyfilegenerator] expose.numOfThreads=1
[pega:propertyfilegenerator] expose.async=true
[pega:propertyfilegenerator] import.archive.path=
[pega:propertyfilegenerator] import.mode=import
[pega:propertyfilegenerator] import.existingInstances=skip
[pega:propertyfilegenerator] import.nofailonerror=false
[pega:propertyfilegenerator] import.commitRate=100
[pega:propertyfilegenerator] import.compileLibraries=true
[pega:propertyfilegenerator] import.allowImportWithMissingDependencies=false
[pega:propertyfilegenerator] import.preserveOrder=true
[pega:propertyfilegenerator] import.codesetName=Customer
[pega:propertyfilegenerator] import.codesetVersion=06-01-01
[pega:propertyfilegenerator] import.async=true
[pega:propertyfilegenerator] import.skipBackup=false
[pega:propertyfilegenerator] manageTrackedData.operation=
[pega:propertyfilegenerator] hotfix.operation=
[pega:propertyfilegenerator] hotfix.dlFilePath=
[pega:propertyfilegenerator] hotfix.catalogPath=
[pega:propertyfilegenerator] hotfix.bypassSchema=false
[pega:propertyfilegenerator] hotfix.force=false
[pega:propertyfilegenerator] hotfix.async=true
[pega:propertyfilegenerator] getstatus.jobID=
[pega:propertyfilegenerator] getstatus.operationName=
[pega:propertyfilegenerator] manageRestorePoints.action=
[pega:propertyfilegenerator] manageRestorePoints.restorePointName=
[pega:propertyfilegenerator] manageRestorePoints.restorePointLabel=
[pega:propertyfilegenerator] rollback.restorePointName=
[pega:propertyfilegenerator] rollback.action=SystemRollback
[pega:propertyfilegenerator] rollback.async=true
[pega:propertyfilegenerator] rollback.downloadLogToFile=true
[pega:propertyfilegenerator] updateAccessGroup.applicationName=
[pega:propertyfilegenerator] updateAccessGroup.applicationVersion=
[pega:propertyfilegenerator] updateAccessGroup.groupList=
BUILD FAILED
C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml:179: Connection Property file -Dprpc.service.util.action=export is not a valid file
Total time: 0 seconds
Exiting with Error
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE
some updated info on the build run with the --connProp and a pega screenshot
Pegasystems Inc.
US
In your updatedScreen1.PNG, i see %WORKSPACE%\%SystemName%_import.properties but it should be %WORKSPACE%\%SystemName%_export.properties
TalkTalk
GB
Started by user admin
[EnvInject] - Loading node environment variables.
[EnvInject] - Preparing an environment for the build.
[EnvInject] - Keeping Jenkins system variables.
[EnvInject] - Keeping Jenkins build variables.
[EnvInject] - Injecting as environment variables the properties content
SystemName=$BUILD_TAG
SourcePassword=rules
SourceHost=http://localhost:8081
SourceUser=admin@Test
[EnvInject] - Variables injected successfully.
[EnvInject] - Injecting contributions.
Building in workspace C:\TaskJenkins\Jenkins\workspace\PegaExport
[EnvInject] - Unset unresolved 'USERNAME' variable.
[EnvInject] - Executing scripts and injecting environment variables after the SCM step.
[EnvInject] - Injecting as environment variables the properties content
ImportExistingInstance=skip
ARTIFACTS_DIR=C:TaskJenkinsJenkins
[EnvInject] - Variables injected successfully.
[jenkins] $ cmd.exe /C "ant.bat -file Jenkins-build.xml -DproductVersion=20180219.100722 -DTargetHost=http://localhost:8081 -DTargetPassword=rules -DproductName=Test -DTargetUser=admin@Test exportprops && exit %%ERRORLEVEL%%"
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\samples\jenkins\Jenkins-build.xml
exportprops:
[propertyfile] Creating new property file: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\jenkins-PegaExport-8_export.properties
BUILD SUCCESSFUL
Total time: 0 seconds
[PegaExport] $ cmd /c call C:\windows\TEMP
Started by user admin
[EnvInject] - Loading node environment variables.
[EnvInject] - Preparing an environment for the build.
[EnvInject] - Keeping Jenkins system variables.
[EnvInject] - Keeping Jenkins build variables.
[EnvInject] - Injecting as environment variables the properties content
SystemName=$BUILD_TAG
SourcePassword=rules
SourceHost=http://localhost:8081
SourceUser=admin@Test
[EnvInject] - Variables injected successfully.
[EnvInject] - Injecting contributions.
Building in workspace C:\TaskJenkins\Jenkins\workspace\PegaExport
[EnvInject] - Unset unresolved 'USERNAME' variable.
[EnvInject] - Executing scripts and injecting environment variables after the SCM step.
[EnvInject] - Injecting as environment variables the properties content
ImportExistingInstance=skip
ARTIFACTS_DIR=C:TaskJenkinsJenkins
[EnvInject] - Variables injected successfully.
[jenkins] $ cmd.exe /C "ant.bat -file Jenkins-build.xml -DproductVersion=20180219.100722 -DTargetHost=http://localhost:8081 -DTargetPassword=rules -DproductName=Test -DTargetUser=admin@Test exportprops && exit %%ERRORLEVEL%%"
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\samples\jenkins\Jenkins-build.xml
exportprops:
[propertyfile] Creating new property file: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\jenkins-PegaExport-8_export.properties
BUILD SUCCESSFUL
Total time: 0 seconds
[PegaExport] $ cmd /c call C:\windows\TEMP\jenkins6543768415595602001.bat
C:\TaskJenkins\Jenkins\workspace\PegaExport>C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcServiceUtils.bat export --connPropFile
Invoke our ant script, passing in the arguments as collected
Buildfile: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml
[echo] *** JVM Arguments -XX:MaxHeapSize=1280m -XX:MaxMetaspaceSize=512m ***
-init:
[echo] ******************************************************************
[echo] Build date : ${pegaBuildDate.value}
[echo] Pega7 platform version : ${specificationVersion.value}
[echo] ******************************************************************
[delete] Deleting directory C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\generated
[mkdir] Created dir: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\generated
[pega:propertyparser] Reading Properties from: C:\TaskJenkins\prpcServiceUtils_73\scripts\utils/prpcServiceUtils.properties
[pega:propertyparser] getstatus.jobID=
[pega:propertyparser] hotfix.async=true
[pega:propertyparser] expose.includeDescendents=true
[pega:propertyparser] export.async=true
[pega:propertyparser] expose.async=true
[pega:propertyparser] expose.excludedClasses=
[pega:propertyparser] import.commitRate=100
[pega:propertyparser] export.productName=
[pega:propertyparser] export.branchAppContext=
[pega:propertyparser] expose.commitRate=100
[pega:propertyparser] import.existingInstances=skip
[pega:propertyparser] user.temp.dir=C:/pega_temp
[pega:propertyparser] expose.reindex=true
[pega:propertyparser] hotfix.operation=
[pega:propertyparser] expose.excludeDescendents=true
[pega:propertyparser] updateAccessGroup.applicationName=
[pega:propertyparser] import.nofailonerror=false
[pega:propertyparser] pega.rest.proxy.password=*****
[pega:propertyparser] import.codesetVersion=06-01-01
[pega:propertyparser] export.applicationVersion=
[pega:propertyparser] pega.rest.proxy.username=
[pega:propertyparser] expose.includedClasses=
[pega:propertyparser] rollback.action=SystemRollback
[pega:propertyparser] pega.rest.server.url=http://<host name>:<port number>/<context>/PRRestService/<tenant url hash>
[pega:propertyparser] updateAccessGroup.applicationVersion=
[pega:propertyparser] expose.startKey=
[pega:propertyparser] expose.reindexType=nonpega
[pega:propertyparser] import.codesetName=Customer
[pega:propertyparser] manageRestorePoints.restorePointLabel=
[pega:propertyparser] import.async=true
[pega:propertyparser] pega.rest.password=*****
[pega:propertyparser] hotfix.force=false
[pega:propertyparser] import.compileLibraries=true
[pega:propertyparser] rollback.restorePointName=
[pega:propertyparser] import.allowImportWithMissingDependencies=false
[pega:propertyparser] export.productVersion=
[pega:propertyparser] pega.rest.username=
[pega:propertyparser] rollback.async=true
[pega:propertyparser] export.branchName=
[pega:propertyparser] getstatus.operationName=
[pega:propertyparser] expose.endDate=
[pega:propertyparser] import.preserveOrder=true
[pega:propertyparser] rollback.downloadLogToFile=true
[pega:propertyparser] pega.rest.proxy.port=
[pega:propertyparser] pega.rest.proxy.workstation=
[pega:propertyparser] expose.endKey=
[pega:propertyparser] hotfix.dlFilePath=
[pega:propertyparser] import.archive.path=
[pega:propertyparser] updateAccessGroup.groupList=
[pega:propertyparser] manageRestorePoints.restorePointName=
[pega:propertyparser] export.archiveName=
[pega:propertyparser] import.mode=import
[pega:propertyparser] expose.startDate=
[pega:propertyparser] hotfix.bypassSchema=false
[pega:propertyparser] manageTrackedData.operation=
[pega:propertyparser] expose.numOfThreads=1
[pega:propertyparser] hotfix.catalogPath=
[pega:propertyparser] manageRestorePoints.action=
[pega:propertyparser] import.skipBackup=false
[pega:propertyparser] pega.rest.proxy.domain=
[pega:propertyparser] export.applicationName=
[pega:propertyparser] pega.rest.response.type=json
[pega:propertyparser] pega.rest.proxy.host=
[mkdir] Created dir: C:\windows\TEMP\PegaInstallTemp-21-February-2018-10.37.12
[pega:hasenoughspace] Found 267141560KB of free space on 'C:\windows\TEMP\'
-processInstances:
[echo] Performing ${prpc.service.util.action} on multiple instance(s)
[pega:echoargline] arg line : -action ${prpc.service.util.action} -propFileDir C:\TaskJenkins\prpcServiceUtils_73\scripts\utils/generated -poolSize ${prpcserviceutils.pool.size} -requestTimeOut ${prpcserviceutils.request.timeout} -tempDir C:\windows\TEMP\/PegaInstallTemp-21-February-2018-10.37.12 -artifactsDir logs
[echo] Reading connection information from -Dprpc.service.util.action=export
[pega:propertyfilegenerator] pega.rest.server.url=http://<host name>:<port number>/<context>/PRRestService/<tenant url hash>
[pega:propertyfilegenerator] pega.rest.username=
[pega:propertyfilegenerator] pega.rest.password=*****
[pega:propertyfilegenerator] pega.rest.proxy.host=
[pega:propertyfilegenerator] pega.rest.proxy.port=
[pega:propertyfilegenerator] pega.rest.proxy.username=
[pega:propertyfilegenerator] pega.rest.proxy.password=*****
[pega:propertyfilegenerator] pega.rest.proxy.domain=
[pega:propertyfilegenerator] pega.rest.proxy.workstation=
[pega:propertyfilegenerator] pega.rest.response.type=json
[pega:propertyfilegenerator] user.temp.dir=C:/pega_temp
[pega:propertyfilegenerator] export.archiveName=
[pega:propertyfilegenerator] export.productName=
[pega:propertyfilegenerator] export.productVersion=
[pega:propertyfilegenerator] export.applicationVersion=
[pega:propertyfilegenerator] export.applicationName=
[pega:propertyfilegenerator] export.branchName=
[pega:propertyfilegenerator] export.branchAppContext=
[pega:propertyfilegenerator] export.async=true
[pega:propertyfilegenerator] expose.includedClasses=
[pega:propertyfilegenerator] expose.includeDescendents=true
[pega:propertyfilegenerator] expose.excludedClasses=
[pega:propertyfilegenerator] expose.excludeDescendents=true
[pega:propertyfilegenerator] expose.startKey=
[pega:propertyfilegenerator] expose.endKey=
[pega:propertyfilegenerator] expose.startDate=
[pega:propertyfilegenerator] expose.endDate=
[pega:propertyfilegenerator] expose.reindex=true
[pega:propertyfilegenerator] expose.reindexType=nonpega
[pega:propertyfilegenerator] expose.commitRate=100
[pega:propertyfilegenerator] expose.numOfThreads=1
[pega:propertyfilegenerator] expose.async=true
[pega:propertyfilegenerator] import.archive.path=
[pega:propertyfilegenerator] import.mode=import
[pega:propertyfilegenerator] import.existingInstances=skip
[pega:propertyfilegenerator] import.nofailonerror=false
[pega:propertyfilegenerator] import.commitRate=100
[pega:propertyfilegenerator] import.compileLibraries=true
[pega:propertyfilegenerator] import.allowImportWithMissingDependencies=false
[pega:propertyfilegenerator] import.preserveOrder=true
[pega:propertyfilegenerator] import.codesetName=Customer
[pega:propertyfilegenerator] import.codesetVersion=06-01-01
[pega:propertyfilegenerator] import.async=true
[pega:propertyfilegenerator] import.skipBackup=false
[pega:propertyfilegenerator] manageTrackedData.operation=
[pega:propertyfilegenerator] hotfix.operation=
[pega:propertyfilegenerator] hotfix.dlFilePath=
[pega:propertyfilegenerator] hotfix.catalogPath=
[pega:propertyfilegenerator] hotfix.bypassSchema=false
[pega:propertyfilegenerator] hotfix.force=false
[pega:propertyfilegenerator] hotfix.async=true
[pega:propertyfilegenerator] getstatus.jobID=
[pega:propertyfilegenerator] getstatus.operationName=
[pega:propertyfilegenerator] manageRestorePoints.action=
[pega:propertyfilegenerator] manageRestorePoints.restorePointName=
[pega:propertyfilegenerator] manageRestorePoints.restorePointLabel=
[pega:propertyfilegenerator] rollback.restorePointName=
[pega:propertyfilegenerator] rollback.action=SystemRollback
[pega:propertyfilegenerator] rollback.async=true
[pega:propertyfilegenerator] rollback.downloadLogToFile=true
[pega:propertyfilegenerator] updateAccessGroup.applicationName=
[pega:propertyfilegenerator] updateAccessGroup.applicationVersion=
[pega:propertyfilegenerator] updateAccessGroup.groupList=
BUILD FAILED
C:\TaskJenkins\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml:179: Connection Property file -Dprpc.service.util.action=export is not a valid file
Total time: 0 seconds
Exiting with Error
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE
updated to say export in the mentioned string with same error report
Pegasystems Inc.
US
Hi Aaron,
After our analysis in the screenshare the issue seems to be related to the personal edition which might not be supported for the prpcserviceutils using jenkins as we don't see prpcServiceUtils.bat/.sh file in distribution image. So you will perform the similar test with your development environment and update the status to us.
Regards
Mahesh
TalkTalk
GB
i have a dev environment running, with the same issue occuring. when free to help let me know please.
Pegasystems Inc.
US
Will try to perform the export in my local Pega 7.3 environment and let you know how it behaves in my environment.
Pegasystems Inc.
US
Just now i had tested the export/import functionality in Pega 7.3 environment and its working as expected.
Accepted Solution
Pegasystems Inc.
US
Had a screenshare with Aaron and performed the jenkins integration with a new Jenkins Job. The functionality is working as expected after using the latest downloaded prpcServiceUtils_73 utility. So the issue might be coming from the changes done in the prpcServiceUtils utility.
ING Nederland N.V.
NL
Hi @Mahesh_Midthuru,
I've tried to setup Jenkins-Pega integration just to import RAP file from one environment [Pega Personal Edition V7.3]. But the build fails with the error, "Connection Property file -Dprpc.service.util.action=export is not a valid file".
I've followed all your posts and tried to re-run the build by changing various settings. But no luck. I've attached my Jenkins configuration, JenkinsBuild.xml, console output, prpcServiceUtilsProperties & prpcServiceUtilsWrapper files.
Kindly go through and let me know if you need additional details
FYI, when I run the prpcserviceutils.bat from command line, it generates product file as expected. Facing issues only with Jenkins integration.
TalkTalk
GB
if you can also send the file it generates in the job folder, will be something like : jenkins-Pega73Job-144_export.properties
this is the file it uses for it's properties file. inside this should have all the values with actual information, not the placeholder mappings. if a placeholder is still there in a key field, it would cause the issue you had
ING Nederland N.V.
NL
Thanks Aaron for your response. I'll share the file later today.
In case if there is still placeholder mapping, where do I have to change to get the actual values which I pass from Jenkins job?
Pegasystems Inc.
US
Meanwhile i can see that the SourceUser is defined in the String Parameters which needs to be removed and also remove the spaces which you have in SourceHost, SourceUser and SourcePassword from Property Content section.
ING Nederland N.V.
NL
Thanks Mahesh for your response. I'll remove the spaces and let you know the outcome.
-
Infant Jesus
Pegasystems Inc.
US
Also noticed some more issues in your configuration as follows:
- ARTIFACTS_DIR=C:/MyInstalls/Jenkins (Jenkins installation directory) -> in your case path contains both forward and backward slashes.
- ImportExistingInstances property -> in your case it is ImportExistingInstance
- In exportprops target advanced configuration you need to specify the jenkins-build.xml file for example: $PEGA_HOME\scripts\samples\jenkins\Jenkins-build.xml
- Command should be %PEGA_HOME%\scripts\utils\prpcServiceUtils.bat export --connPropFile %WORKSPACE%\%SystemName%_export.properties --artifactsDir %WORKSPACE% but in your case it is %PEGA_HOME%\scripts\utils\prpcServiceUtils.bat export --connPropFile %PEGA_HOME%\scripts\utils\%SystemName%_export.properties --artifactsDir %WORKSPACE%
These are the noticed issues in your shared document and i would suggest you to cross check your configuration with the documents available in my blog, until unless your configuration is correct the build wont be successful and its hard to find the root cause also.
ING Nederland N.V.
NL
Hi Mahesh,
I have created the whole set up from scratch by following your blog. I'm still getting the following error. I've attached all the configuration details.
C:\MyInstalls\prpcServiceUtils_73\scripts\utils\prpcserviceutilsWrapper.xml:179: Connection Property file -Dprpc.service.util.action=export is not a valid file
Kindly check and let me know how to fix this issue.
Thanks,
Prakash
Pegasystems Inc.
US
ImportExistingInstances property -> in your case it is ImportExistingInstance still.
Have you downloaded the prpcserviceutils 7.3 version from the specified location in my blog or you are using the utility available in pega media.
ING Nederland N.V.
NL
I've tried both ImportExistingInstances & ImportExistingInstance options = skip. But still it was failing.
I downloaded the prpcserviceutils 7.3 version from the following path
Pegasystems Inc.
US
Then the last thing that i would need to know is whether your Product rule has any unlocked rulesets? If so then kindly check the "Allow unlocked ruleset versions?" checkbox in your product rule and have a try. If still it doesn't work then open the source environment then go to App explorer > Open the instances of Log-PegaRemoteManagement-Export class(it will contain list of instances of your export builds, in that you can open the most recent instance and check its XML content which might have the exact root cause error of your failure).
TalkTalk
GB
the placeholders are mapped from the build params and the properties content section inside jenkins, it uses the build file to know where to map to/from
ING Nederland N.V.
NL
Hi Aaron,
I could see the below parameter values in my export properties file. all values looks fine to me. Rest server URL also looked fine in the output console. If you see any wrong entries, please highlight.
jenkins-PegaRAPExport-4.pega.rest.server.url=http\://localhost\:8180/prweb/PRRestService/
jenkins-PegaRAPExport-4.pega.rest.username=prakash
jenkins-PegaRAPExport-4.pega.rest.password=rules
jenkins-PegaRAPExport-4.export.archiveName=NewDMSampleData01.01.01
jenkins-PegaRAPExport-4.export.productName=NewDMSampleData
jenkins-PegaRAPExport-4.export.productVersion=01.01.01
jenkins-PegaRAPExport-4.export.applicationName=DMSample
jenkins-PegaRAPExport-4.export.applicationVersion=01.01.01
jenkins-PegaRAPExport-4.export.async=false
TalkTalk
GB
jenkins-Pega73Job-157.pega.rest.server.url=http\://localhost\:8081/prweb/PRRestService/
jenkins-Pega73Job-157.pega.rest.username=admin.Test
jenkins-Pega73Job-157.pega.rest.password=rules
jenkins-Pega73Job-157.export.archiveName=Test20180223.101345
jenkins-Pega73Job-157.export.productName=Test
jenkins-Pega73Job-157.export.productVersion=20180223.101345
jenkins-Pega73Job-157.export.applicationName=${applicationName}
jenkins-Pega73Job-157.export.applicationVersion=${applicationVersion}
jenkins-Pega73Job-157.export.async=false
this is an example of mine, it is based off a product rule and not an application. this is the minimum you need to specify when using prpcUtils. your options seem fine to me, i havn't tested it with the applicationName/Version info also being set at the same time ensure that this property file is being read back in by jenkins this should be from inside the jenkins-build.xml file, you might need to change the directory it is looking for this file at
Pegasystems Inc.
US
@AaronK5068 by the way had you succeeded the import/export in personal edition?
TalkTalk
GB
yes i have
Pegasystems Inc.
US
So could you able to figure out the root cause of failure in the personal edition or you just performed the configuration from scratch?
TalkTalk
GB
not sure what the cause was, maybe the jenkins build file has an issue in it