Synit: deploy into /run/etc/syndicate/services
This commit is contained in:
parent
8e5b6624b3
commit
72dc3c41cc
|
@ -2,8 +2,13 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
syndicate-server = pkgs.syndicate-server or (let
|
syndicate-server = pkgs.syndicate-server or (let
|
||||||
repo = builtins.fetchTarball
|
repo = pkgs.fetchFromGitea {
|
||||||
"https://git.syndicate-lang.org/ehmry/syndicate-flake/archive/trunk.tar.gz";
|
domain = "git.syndicate-lang.org";
|
||||||
|
owner = "ehmry";
|
||||||
|
repo = "syndicate-flake";
|
||||||
|
rev = "e28f71ba8878478cc160bd901da2f7b9bee29a5f";
|
||||||
|
hash = "sha256-YaHKplVpnaL95Xwv7SYUKvNssiulLQmIAF/G78g9KZc=";
|
||||||
|
};
|
||||||
pkgs' = import repo { inherit pkgs; };
|
pkgs' = import repo { inherit pkgs; };
|
||||||
in pkgs'.syndicate-server);
|
in pkgs'.syndicate-server);
|
||||||
|
|
||||||
|
@ -16,11 +21,21 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
in {
|
in {
|
||||||
|
networking.localCommands = ''
|
||||||
|
echo '<run-service <milestone network>>' > \
|
||||||
|
/run/etc/syndicate/core/milestone-network.pr
|
||||||
|
'';
|
||||||
|
|
||||||
systemd.services.syndicate-server = {
|
systemd.services.syndicate-server = {
|
||||||
description = "Syndicate dataspace server";
|
description = "Syndicate dataspace server";
|
||||||
wantedBy = [ "basic.target" ];
|
wantedBy = [ "basic.target" ];
|
||||||
|
before = [ "network.target" ];
|
||||||
preStart = ''
|
preStart = ''
|
||||||
mkdir -p "/etc/syndicate/services"
|
mkdir -p \
|
||||||
|
"/etc/syndicate/services" \
|
||||||
|
"/run/etc/syndicate/core" \
|
||||||
|
"/run/etc/syndicate/services" \
|
||||||
|
|
||||||
${lib.getExe pkgs.rsync} -r \
|
${lib.getExe pkgs.rsync} -r \
|
||||||
--exclude 001-console-getty.pr \
|
--exclude 001-console-getty.pr \
|
||||||
--exclude configdirs.pr \
|
--exclude configdirs.pr \
|
||||||
|
@ -29,6 +44,10 @@ in {
|
||||||
--exclude services \
|
--exclude services \
|
||||||
"${synit}/packaging/packages/synit-config/files/etc/syndicate/" \
|
"${synit}/packaging/packages/synit-config/files/etc/syndicate/" \
|
||||||
"/etc/syndicate"
|
"/etc/syndicate"
|
||||||
|
echo '<require-service <config-watcher "/run/etc/syndicate/core" $.>>' > \
|
||||||
|
/etc/syndicate/core/configdirs.pr
|
||||||
|
echo '<require-service <config-watcher "/run/etc/syndicate/services" $.>>' > \
|
||||||
|
/etc/syndicate/services/configdirs.pr
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart =
|
ExecStart =
|
||||||
|
|
|
@ -136,7 +136,15 @@ nixproc-init-state $stateDirArg $runtimeDirArg $logDirArg $tmpDirArg $cacheDirAr
|
||||||
createNewGroups
|
createNewGroups
|
||||||
createNewUsers
|
createNewUsers
|
||||||
|
|
||||||
cp -v $profilePath /etc/syndicate/services/processes.pr
|
dest_file=/run/etc/syndicate/services/processes.pr
|
||||||
|
|
||||||
|
if [ -e "$dest_file"] && [ ! -L "$dest_file" ]
|
||||||
|
then
|
||||||
|
echo "$dest_file exists but is not a symlink, refusing to overwrite"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
ln -sf $profilePath /etc/syndicate/services/processes.pr
|
||||||
|
|
||||||
# Delete obsolete users and groups
|
# Delete obsolete users and groups
|
||||||
deleteObsoleteUsers
|
deleteObsoleteUsers
|
||||||
|
|
Loading…
Reference in New Issue