This document describes some useful details on the built-in continuous integration in GeneXus and GeneXus Server 17 and common issues that may arise.
Once the provider configuration is saved from the GeneXus Server console, the configurations made are stored in the jenkins.config file located at <GXserver installation directory>\VDir\BinGenexus\Packages\ContinuousIntegration
<jenkinsdefaultselements>
<jenkinsdefaults url="http://localhost:8081/" serverurl="http://localhost/GeneXusServer17/"
folder="GeneXusServer17" credentials="GXserverLogin" genexus="GX17" forcerebuild="false"
msbuild="MSBuild17" sqlserver="SCRATCHSRV2019\SQLEXPRESS"
runtests="true" deploytocloud="true" />
</jenkinsdefaultselements>
Please refer the following document: How to add a GeneXus version to use on the Continuos Integration server
To change the default value of the "Populate Data" property for the execution of CI pipelines, the file resources\CIscripts\KBSettings\DeployToCloud.settings in Jenkins Integration repository must be modified (for example, “C:\GXJenkins\resources\CIscripts\KBSettings).
The configuration should look like the following:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<GeneratorProperty Include="deploy to cloud">
<Datastore>Default</Datastore>
<PropertyName>deploy to cloud</PropertyName>
<PropertyValue>Yes</PropertyValue>
</GeneratorProperty>
<EnvironmentProperty Include="Populate Data">
<Name>Populate Data</Name>
<Value>True</Value>
</EnvironmentProperty>
</ItemGroup>
</Project>
Pipeline run show an error simitar to:
Build started 10/26/2020 9:48:48 AM.
Project "c:\gxtrunk\TeamDev.msbuild" on node 1 (Checkout target(s)).
CreateKB:
CreateKBfromServer Directory=C:\gc\KBs\GeneXusServer\MyKB
========== Create Knowledge Base from GeneXus Server started ==========
========== Get versions started ==========
Contacting GeneXus Server at 'https://myserver/GeneXusServer/'...
c:\gxtrunk\TeamDev.msbuild(55,3): error : Could not retrieve versions: 'GeneXus Server at 'https://myserver/GeneXusServer/' requires user credentials.'
c:\gxtrunk\TeamDev.msbuild(55,3): error : > Get versions Failed
========== Get versions finished ==========
Check How to configure credentials to work with CI pipelines and consider that if local user is used you must define the user as "local\userName" or "GeneXus Account\userName"
This message means that jenkins.config file was modified after GeneXus Server had been started. Recycle application pool or restart IIS at IIS Manager.
Genexus installation version is included in log pipeline as:
-----------------------------------------------------------------
-- Genexus Installation
-----------------------------------------------------------------
Name : GX17 Release
Path : C:\Program Files (x86)\GeneXus\GeneXus17
GeneXus 17
17.0.146071
Copyright c 1988-2020 GeneXus. All rights reserved.