feat(jobs): add new job qglobal-config-manager for qgis_global_settings.ini copy - #781
feat(jobs): add new job qglobal-config-manager for qgis_global_settings.ini copy#781jmkerloch wants to merge 30 commits into
qglobal-config-manager for qgis_global_settings.ini copy#781Conversation
Codecov Report❌ Patch coverage is @@ Coverage Diff @@
## main #781 +/- ##
==========================================
+ Coverage 73.24% 73.89% +0.65%
==========================================
Files 50 51 +1
Lines 3509 3620 +111
Branches 621 640 +19
==========================================
+ Hits 2570 2675 +105
- Misses 707 709 +2
- Partials 232 236 +4
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 1 file with indirect coverage changes 🚀 New features to boost your workflow:
|
qglobal-config-manager for qgis_global_settings.ini copy
703c4f5 to
1bb727d
Compare
|
@Guts |
|
@jmkerloch can you add the corresponding JSON schema into https://github.com/qgis-deployment/qgis-deployment-toolbelt-cli/tree/feat/qglobal_config_manager/docs/schemas/scenario/jobs please? |
aa60943 to
cfac0c7
Compare
For sure 🕶️ I added a commit. |
cfac0c7 to
5334868
Compare
09c52e7 to
e2be9ce
Compare
Guts
left a comment
There was a problem hiding this comment.
First review mainly reading documentation and code.
Next: try locally.
b59969e to
dd24ebd
Compare
- from qdt local working dir - from qdt downloaded repository
…rectory for copy fail
Co-authored-by: Julien <1596222+Guts@users.noreply.github.com> Signed-off-by: Julien <1596222+Guts@users.noreply.github.com>
…ation for QGIS global settings file
Util has been introduced in #830 Funded by Oslandia <!-- osl:grant-oss-2026 -->
…ts depending on current operating system Util has been introduced in #833 Funded by ANFSI
b817216 to
03864bc
Compare
|
|
| environ.pop("QGIS_CUSTOM_CONFIG_PATH") | ||
| unsetenv("QGIS_CUSTOM_CONFIG_PATH") | ||
|
|
||
| def test_get_qgis_global_settings_file(self): |
| Path(expandvars("%APPDATA%/QGIS/QGIS3/qgis_global_setting.ini")), | ||
| ) | ||
|
|
||
| def test_get_qgis_global_settings_file_custom(self): |
| environment variable for file use in QGIS.""" | ||
|
|
||
| # Define source file | ||
| src_path = self.get_src_ini_file(self.options.get("src", None)) |



QGIS global config manager
qgis_global_settings.inifile contains global settings for all QGIS profile.This PR introduces a new job
qglobal-config-managerthat can be added to a scenario to use a custom file during deployment :The job handles:
srcanddstfor environment variable usesrc.ini file if the input is an urlsrc.ini file to thedst.ini filesrc.iniQGIS_GLOBAL_SETTINGS_FILEuser environment variable withdst.ini file pathDefault values
If no value defined in jobs, default values are used. The value is defined with the same behavior as QGIS :
QGIS_GLOBAL_SETTINGS_FILE$HOME/.local/share/QGIS/QGIS3/C:\Users\<username>\%AppData%\Roaming\QGIS\QGIS3\$HOME/Library/Application Support/QGIS/QGIS3/your_QGIS_package_path/resources/qgis_global_settings.iniQDT_QGIS_EXE_PATHenvironment variableRelative
srcoptionsrccan be a relative path. In this case we check for .ini file related to:qprofiles-synchronizeris run, all profiles repository are stored in a local repositories folder :<qdt_working_folder>/respositories/<scenario_id>src:./myprofile/qgis_global_settings.iniQDT_LOCAL_WORK_DIRenvironment variableFunded by ANFSI (cc @Niarolf ).