retry sudo and fix workflow
Some checks failed
Activate NixOS Homelab Configuration On Push / build-and-activate (push) Failing after 0s
Some checks failed
Activate NixOS Homelab Configuration On Push / build-and-activate (push) Failing after 0s
This commit is contained in:
parent
c0f955598f
commit
afc2575c4d
2 changed files with 52 additions and 25 deletions
|
|
@ -5,7 +5,7 @@ on:
|
|||
- main
|
||||
|
||||
env:
|
||||
PATH: /run/current-system/sw/bin:/run/wrappers/bin
|
||||
PATH: /run/current-system/sw/bin:/run/wrappers/bin:/nix/var/nix/profiles/default/bin
|
||||
|
||||
jobs:
|
||||
build-and-activate:
|
||||
|
|
@ -15,10 +15,18 @@ jobs:
|
|||
shell: /bin/sh -e {0}
|
||||
steps:
|
||||
- name: Clone
|
||||
run: git clone http://localhost:5080/satr14/nix-flake.git src
|
||||
- name: Build
|
||||
run: nixos-rebuild build --flake ./src#homelab -L --show-trace
|
||||
run: git clone --depth 1 http://localhost:5080/satr14/nix-flake.git src
|
||||
|
||||
- name: Activate
|
||||
run: nixos-rebuild switch --flake ./src#homelab -L --show-trace
|
||||
- name: Clean
|
||||
run: rm -rfv src
|
||||
run: sudo nixos-rebuild switch --flake ./src#homelab -L
|
||||
|
||||
- name: Rollback on failure
|
||||
if: failure()
|
||||
run: sudo nixos-rebuild --rollback
|
||||
|
||||
- name: Show generation
|
||||
run: nixos-version
|
||||
|
||||
- name: Clean up
|
||||
if: always()
|
||||
run: rm -rf src
|
||||
|
|
@ -1,11 +1,4 @@
|
|||
{ lib, pkgs, homelab, ... }: {
|
||||
security.sudo.extraRules = [{
|
||||
users = [ "gitea-runner" ];
|
||||
commands = [{
|
||||
command = "/run/current-system/sw/bin/nixos-rebuild";
|
||||
options = [ "NOPASSWD" ];
|
||||
}];
|
||||
}];
|
||||
services = {
|
||||
forgejo = {
|
||||
enable = true;
|
||||
|
|
@ -55,14 +48,40 @@
|
|||
hostPackages = with pkgs; [ bash coreutils git nix ];
|
||||
};
|
||||
};
|
||||
systemd.services."gitea-runner-nixos-deploy".serviceConfig = {
|
||||
systemd.services."gitea-runner-nixos-deploy" = {
|
||||
restartIfChanged = true;
|
||||
serviceConfig = {
|
||||
# User = lib.mkForce "root";
|
||||
# Group = lib.mkForce "root";
|
||||
|
||||
NoNewPrivileges = lib.mkForce false;
|
||||
RestrictSUIDSGID = lib.mkForce false;
|
||||
PrivateUsers = lib.mkForce false;
|
||||
User = lib.mkForce "root";
|
||||
ProtectSystem = lib.mkForce false;
|
||||
ProtectHome = lib.mkForce false;
|
||||
ReadWritePaths = lib.mkForce [ "/" ];
|
||||
# PrivateTmp = lib.mkForce false;
|
||||
# PrivateDevices = lib.mkForce false;
|
||||
# ProtectSystem = lib.mkForce false;
|
||||
# ProtectHome = lib.mkForce false;
|
||||
# ProtectKernelTunables = lib.mkForce false;
|
||||
# ProtectKernelModules = lib.mkForce false;
|
||||
# ProtectKernelLogs = lib.mkForce false;
|
||||
# ProtectControlGroups = lib.mkForce false;
|
||||
# RestrictNamespaces = lib.mkForce false;
|
||||
# RestrictRealtime = lib.mkForce false;
|
||||
# LockPersonality = lib.mkForce false;
|
||||
# MemoryDenyWriteExecute = lib.mkForce false;
|
||||
# ProtectProc = lib.mkForce "default";
|
||||
# SystemCallArchitectures = lib.mkForce "";
|
||||
# SystemCallFilter = lib.mkForce [];
|
||||
# ReadWritePaths = lib.mkForce [];
|
||||
# ReadOnlyPaths = lib.mkForce [];
|
||||
# InaccessiblePaths = lib.mkForce [];
|
||||
};
|
||||
systemd.services."gitea-runner-nixos-deploy".restartIfChanged = false;
|
||||
};
|
||||
security.sudo.extraRules = [{
|
||||
users = [ "gitea-runner" ];
|
||||
commands = [{
|
||||
command = "/run/current-system/sw/bin/nixos-rebuild";
|
||||
options = [ "NOPASSWD" ];
|
||||
}];
|
||||
}];
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue