Use nix option for yate config reload #21
1 changed files with 12 additions and 9 deletions
|
@ -45,11 +45,6 @@
|
||||||
};
|
};
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = "${pkgs.yate}/bin/yate -c /etc/yate -e /etc/yate/share";
|
ExecStart = "${pkgs.yate}/bin/yate -c /etc/yate -e /etc/yate/share";
|
||||||
ExecReload= ''
|
|
||||||
${pkgs.git}/bin/git config --global --add safe.directory /var/lib/yate
|
|
||||||
/usr/bin/env GIT_SSH_COMMAND=\\"${pkgs.openssh}/bin/ssh -i /run/secrets/git_clone_key\\" ${pkgs.git}/bin/git -C /var/lib/yate fetch --all
|
|
||||||
/usr/bin/env GIT_SSH_COMMAND=\\"${pkgs.openssh}/bin/ssh -i /run/secrets/git_clone_key\\" ${pkgs.git}/bin/git -C /var/lib/yate reset --hard origin/main
|
|
||||||
'';
|
|
||||||
Type="simple";
|
Type="simple";
|
||||||
Restart="always";
|
Restart="always";
|
||||||
User="yate";
|
User="yate";
|
||||||
|
@ -60,16 +55,24 @@
|
||||||
wantedBy = [ "default.target" ];
|
wantedBy = [ "default.target" ];
|
||||||
requires = [ "network-online.target" ];
|
requires = [ "network-online.target" ];
|
||||||
preStart = ''
|
preStart = ''
|
||||||
echo \"\n\" >> /run/secrets/git_clone_key
|
echo "\n" >> /run/secrets/git_clone_key
|
||||||
sleep 5
|
sleep 5
|
||||||
|
id
|
||||||
|
echo "$(stat -c '%U' /var/lib/yate/.git) owns /var/lib/yate/.git"
|
||||||
SSH_SUCCESS=1
|
SSH_SUCCESS=1
|
||||||
${pkgs.openssh}/bin/ssh -q -i /run/secrets/git_clone_key forgejo@git.hamburg.ccc.de 2> /var/lib/yate/SSH_CHECK_LOG || SSH_SUCCESS=0
|
${pkgs.openssh}/bin/ssh -q -i /run/secrets/git_clone_key forgejo@git.hamburg.ccc.de 2> /var/lib/yate/SSH_CHECK_LOG || SSH_SUCCESS=0
|
||||||
if [ $SSH_SUCCESS = 1 ]; then
|
if [[ $SSH_SUCCESS = 1 && $(stat -c '%U' /var/lib/yate/.git) == *yate* ]]; then
|
||||||
rm -rf /var/lib/yate/*
|
rm -rf /var/lib/yate/*
|
||||||
rm -rf /var/lib/yate/.*
|
rm -rf /var/lib/yate/.*
|
||||||
env GIT_SSH_COMMAND=\"${pkgs.openssh}/bin/ssh -i /run/secrets/git_clone_key\" ${pkgs.git}/bin/git clone forgejo@git.hamburg.ccc.de:CCCHH/yate-config.git /var/lib/yate
|
env GIT_SSH_COMMAND="${pkgs.openssh}/bin/ssh -i /run/secrets/git_clone_key" ${pkgs.git}/bin/git clone forgejo@git.hamburg.ccc.de:CCCHH/yate-config.git /var/lib/yate
|
||||||
${pkgs.git}/bin/git -C /var/lib/yate config --add safe.directory \"/var/lib/yate\"
|
${pkgs.git}/bin/git -C /var/lib/yate config --add safe.directory "/var/lib/yate"
|
||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
|
reload= ''
|
||||||
|
id
|
||||||
|
${pkgs.git}/bin/git config --global --add safe.directory /var/lib/yate
|
||||||
|
/usr/bin/env GIT_SSH_COMMAND="${pkgs.openssh}/bin/ssh -i /run/secrets/git_clone_key" ${pkgs.git}/bin/git -C /var/lib/yate fetch --all
|
||||||
|
/usr/bin/env GIT_SSH_COMMAND="${pkgs.openssh}/bin/ssh -i /run/secrets/git_clone_key" ${pkgs.git}/bin/git -C /var/lib/yate reset --hard origin/master
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue