Getting source code from SVN, Git, or VSS

You can configure the exported build file to download source code from SVN, Git, or VSS before the build process starts.

Step 1: Make a copy of the exported build file and place it to a location near your PowerBuilder application target, so that you could manage the file path (especially the relative file path) easily.

Note: the relative path will be relative to the build file.

Step 2: Open the build file in a text editor, locate the "BuildPlan" block and then configure the corresponding part, for example, "Git" as shown below.

If the computer connects to Internet through a proxy server, make sure to configure the proxy server settings in the "Proxy" part.

    "BuildPlan": {
        "SourceControl": {
            "PreCommand": "",
            "SVN": [
                {"SrcPath": "","User": "","Password": "","DestPath": "","Proxy": {"Ip": "","Port": 0,"Username": "","Password": ""}}
            ],
            "Git": [
                {"SrcPath": "https://github.com/Appeon/PowerBuilder-AutoBuild-Sales-SourceCode", "User": "tester@appeon.com", "Password": "YGRrYjc6OzU=", "DestPath": ".\\Build", "Proxy": {"Ip": "","Port": 0,"Username": "","Password": ""}}
            ],

Note: The password must be an encrypted value which is generated from the original password by executing "PBAutoBuild210.exe /p", as shown below.


Step 3: If the source code downloaded from SVN, Git, or VSS is not the PBL file but objects in ws_objects, then you will need to merge the objects to the PBL file. Locate the "Merging" block in the build file and then configure as below:

Setting "RefreshPbl" to true if you want to refresh the PBL files by deleting and then generating the PBL files again.

            "Merging": [
                {"Target": ".\\Build\\salesdemo.pbt", "LocalProjectPath": ".\\Build", "RefreshPbl": false}
            ],

At the same time, make sure to double check the target location is set correctly in the "Projects" block, for example,

        "BuildJob": {
            "PreCommand": "",
            "Projects": [
                {"Target": ".\\Build\\salesdemo.pbt", "Name": "ps_salesdemo"}
            ],
            "PostCommand": ""
        }

When the PBAutoBuild210.exe command is executed later, it will first download the source code from the Git server and then merge the source code, as shown below.