Hello All,
I have implemented an automated compile process for our application using the PBAutoBuild220.exe. The question I have is in the "Merging" portion of the compiling process. We are currently using TFS for source control in PB. Before I am calling the command to run PBAutoBuild, I am issuing a TF get command to get the latest version of software, and then calling the PBAutobuild220.exe. This works fine and the application is deployed and working as expected. The issue I have is that it appears that PBAutoBuild is importing ALL of the objects in the source directory and refreshing ALL of the PBLs, instead of just the objects that were updated with the TF get latest. Is this expected behavior? Is there a way to only import and update objects that changed (as if you were to right-click and "get latest version" on the target in the IDE)? The issue is that the compile takes a lot longer this way, than if I were to do it manually in the IDE (30mins compared to over an hour with PBAutoBuild). Thanks in advance. Any help would be appreciated.
When RefreshPBL = true in AutoBuild, it will delete all existing PBLs and rebuild them from scratch, then import all objects. This ensures that all changes are updated. When RefreshPBL = false, existing PBL objects will not be deleted. Instead, it will only compare the objects in the PBL for updates and insertions (deletions cannot be performed in this case). This is the difference between the two settings.
Regards,
Kitty
I understand how the RefreshPBL setting works. I have RefreshPBL = false in my JSON file. The issue I am having is that it is importing all nine thousand some objects instead of just the ones that are new or that have changed. The compile takes over twice as long than if I were to run it from the IDE. Is this because I am using TFS for source control, and getting latest outside of the PBAutoBuild.exe?
There are some differences in the logic between AutoBuild and the IDE. The difference you observed is expected.
Regards,
Kitty