[qubes-users] Management of salt configs: Syncing from dom0 to a git-repository harboring vm?

Hi,
I urgently need to backup (and version control) my by now relative elaborate salt config.

The plan is to manage it in a git repo in a dedicated Vm (whether I push it to some private online repo still needs some contemplation).
A shell script will
a) copy/sync the salt dir to the git vm
b) execute git add/commit(and possibly push) there

From this proposition the need arises to sync an entire directory from dom0 to the git vm. I found https://www.qubes-os.org/doc/copy-from-dom0/ and consequently qvm-copy-to-vm <target_vm> <file>
I can see a workflow of packing the salt dir to a *.zip or some such, copying that, unpacking it on the git vm through qrexec and preoceeding with git operations … somewhat inelegant.
Is there any other means of syncing an entire directory tree from dom0 to a vm?

Thanks for any pointers.

Sincerely, Joh

qvm-copy-to-vm will take a directory as an argument.
You will have to then sync the files from QubesIncoming/dom0 to your git
repo, but that is trivial.

I see. that seems straight forward then … how time consuming is such a move?

Sincerely, Joh

Not at all time consuming.
A simple script in dom0 to :
qvm-copy-to-vm
copy in the qube
git push in the qube

I have something you could look at - I'll post it in the morning.

Something like:

#!/usr/bin/bash
qvm-copy-to-vm $1 $2
qvm-run $2 'mv /home/user/QubesIncoming/dom0/$1/* <path-to-git-repo>'
qvm-run $2 'rm -rf /home/user/QubesIncoming/dom0/$1 '

in dom0.

Depending on how you have configured git access you may also be able to
commit and push as part of the same script. Without knowing your
configuration I suspect that the rest wont be helpful.
(Hint - just try at the coommand line in dom0 - get it working and then
add to the script.)