Continua CI agent virtualising graphics adapters

Our build servers have graphic adapters with active monitors or parrots (hardware emulators) connected. We can remote into them with AnyDesk/TeamViewer and start openGL/DirectX applications, and execute associated Google Tests (via mstest adapter) correctly in visual studio, vstest console and Final Builder.

When the same final builder project is executed through the Ci agent, we see the same tests failing. Further investigation showed the openGL context initialization was failing, with a openGL version 1.1.0 being retrieved from the adapter. We retrieve 4.4.X via final builder using AnyDesk, and could only reproduce an openGL version 1.1.0 through remote desktop, which we know has virtualisation.

We have tried executing unit tests on the ci via user accounts, running unit tests through a final builder action and command console action without success.

Can you confirm whether the ci does any virtualisation. Any help would be much appreciated.

final builder version: 7.0.0.3254
Ci version: Continua 1.8.1.58

Hi Luke,

The Continua CI agents do not do any virtualisation. They run as a Windows service which continues to run when no user is logged in. This means that they so not run in an interactive session and cannot display a user interface. See Window Station and Desktop Creation. This is most likely to be the reason for your issue.

Try running the agent as a console application. Stop any running ContinuaCI Agent Service, then open a command prompt and run:

"C:\Program Files\VSoft Technologies\ContinuaCI Agent\Continua.Agent.Service.exe" --console

Note that this will run under the account of the logged-in user. The user needs to stay logged in - logging out will exit the agent console application.

Fantastic, the results are looking promising. It gives us something to consider.

Thanks for your time.