When creating shortcuts, QDT needs to know the location of the QGIS executable to point to.
Currently, this is done by defining the QDT_QGIS_EXE_PATH environment variable, then fallbacking to searching with which or then a hard-coded value corresponding to the default path of the latest LTR official msi installer.
Description
Add a new job to find a QGIS installed version to use:
Expected logic
retrieve published versions of QGIS with dates and type (LTR, normal...) calling the Github API to list tags on qgis/qgis
integrate this in the form of a sub-command (qdt check-installed-qgis) for example, which outputs a structured file (with associated JSON schema)
this file is embedded into the packaging during the CI (for offline use)
this file is published in the documentation (this may be useful to others)
if not, dynamic calls can be made from the internal code
the sub-command compares the published and installed versions:
predefined environment variable (to allow admins to specify the version officially supported by the IS)
registry (winreg) for Windows
known paths: C:\OSGeo4W64, etc.
:warning: manage access rights errors, in particular the listing on %PROGRAMFILES%: execution in non-admin mode by default
for linux, there's less effort to be made a priori, which is sufficient in most cases
Context
When creating shortcuts, QDT needs to know the location of the QGIS executable to point to.
Currently, this is done by defining the
QDT_QGIS_EXE_PATH
environment variable, then fallbacking to searching withwhich
or then a hard-coded value corresponding to the default path of the latest LTR official msi installer.Description
Add a new job to find a QGIS installed version to use:
Expected logic
qdt check-installed-qgis
) for example, which outputs a structured file (with associated JSON schema)C:\OSGeo4W64
, etc.%PROGRAMFILES%
: execution in non-admin mode by defaultwhich
is sufficient in most casesSample job configuration:
Not contractual.
Sample structured list
Not contractual.
Related links
Use Cases
In Windows, there are often multiple versions installed. It could help to avoid requiring an environment variable to be set
Impacted jobs:
Visuals
No response
Before submitting