tribuchet: building on jamie Machine state will be reset. To keep it, pass --keep-machine-state start all VLans (finished: start all VLans, in 0.00 seconds) Initializing machine ID from random generator. Test will time out and terminate in 3600.0 seconds run the VM test script start all VMs agent: systemd-nspawn running (pid 51) agent: Waiting for journal at /build/vm-state-agent/var/log/journal... client: systemd-nspawn running (pid 53) client: Waiting for journal at /build/vm-state-client/var/log/journal... relay: systemd-nspawn running (pid 56) relay: Waiting for journal at /build/vm-state-relay/var/log/journal... (finished: start all VMs, in 0.01 seconds) relay: waiting for unit flakelet-relay.service nixos-nspawn(agent): TAP vde-tap1 not found; container will be isolated from VDE nixos-nspawn(agent): A common reason for this is that /dev/net is not available in the Nix sandbox. Try adding /dev/net to extra-sandbox-paths. nixos-nspawn(client): TAP vde-tap1 not found; container will be isolated from VDE nixos-nspawn(client): A common reason for this is that /dev/net is not available in the Nix sandbox. Try adding /dev/net to extra-sandbox-paths. nixos-nspawn(relay): TAP vde-tap1 not found; container will be isolated from VDE nixos-nspawn(relay): A common reason for this is that /dev/net is not available in the Nix sandbox. Try adding /dev/net to extra-sandbox-paths. Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. ░ Spawning container agent on /build/vm-state-agent. Note: in a future version of systemd-nspawn the default set of permitted socket address families will be restricted to AF_INET, AF_INET6 and AF_UNIX. Use --restrict-address-families= to configure the set of permitted socket address families, or set RestrictAddressFamilies= in a .nspawn file. ░ Spawning container client on /build/vm-state-client. ░ Spawning container relay on /build/vm-state-relay. agent # No journal files were found. agent # No journal boot entry found for the specified boot (+0). client # No journal files were found. client # No journal boot entry found for the specified boot (+0). relay # No journal files were found. relay # No journal boot entry found for the specified boot (+0). agent # [27629.207368] agent systemd-journald[57]: Journal started agent # [27629.207410] agent systemd-journald[57]: Runtime Journal (/run/log/journal/21402f983f394ab1b237b4896e2f7b31) is 8M, max 4G, 3.9G free. agent # [27629.218161] agent systemd[1]: Finished Apply Kernel Variables. agent # [27629.230092] agent systemd[1]: Finished Create Static Device Nodes in /dev gracefully. agent # [27629.244315] agent systemd[1]: Starting Flush Journal to Persistent Storage... agent # [27629.245135] agent systemd[1]: Starting Create Static Device Nodes in /dev... agent # [27629.279849] agent systemd-journald[57]: Time spent on flushing to /var/log/journal/21402f983f394ab1b237b4896e2f7b31 is 1.443ms for 6 entries. agent # [27629.279849] agent systemd-journald[57]: System Journal (/var/log/journal/21402f983f394ab1b237b4896e2f7b31) is 512B, max 4G, 3.9G free. agent # [27629.288098] agent systemd[1]: Finished Create Static Device Nodes in /dev. agent # [27629.288776] agent systemd[1]: Reached target Preparation for Local File Systems. agent # [27629.288887] agent systemd[1]: Rule-based Manager for Device Events and Files skipped, unmet condition check ConditionPathIsReadWrite=/sys agent # [27629.302296] agent systemd[1]: Finished Flush Journal to Persistent Storage. agent # [27629.364603] agent systemd[1]: Finished Firewall. agent # [27630.231684] agent systemd[1]: Mounting /run/wrappers... client # [27629.214129] client systemd-journald[57]: Journal started client # [27629.214169] client systemd-journald[57]: Runtime Journal (/run/log/journal/f927ae23ba7e4d48981f14110d0bf1b4) is 8M, max 4G, 3.9G free. client # [27629.222346] client systemd[1]: Finished Apply Kernel Variables. client # [27629.233642] client systemd[1]: Finished Create Static Device Nodes in /dev gracefully. client # [27629.247299] client systemd[1]: Starting Flush Journal to Persistent Storage... client # [27629.273497] client systemd[1]: Starting Create Static Device Nodes in /dev... client # [27629.279791] client systemd-journald[57]: Time spent on flushing to /var/log/journal/f927ae23ba7e4d48981f14110d0bf1b4 is 1.411ms for 6 entries. client # [27629.279791] client systemd-journald[57]: System Journal (/var/log/journal/f927ae23ba7e4d48981f14110d0bf1b4) is 512B, max 4G, 3.9G free. client # [27629.290295] client systemd[1]: Finished Create Static Device Nodes in /dev. relay # [27629.205998] relay systemd-journald[57]: Journal started client # [27629.291009] client systemd[1]: Reached target Preparation for Local File Systems. relay # [27629.206046] relay systemd-journald[57]: Runtime Journal (/run/log/journal/17cff2848207481ca7773216086770ce) is 8M, max 4G, 3.9G free. client # [27629.291126] client systemd[1]: Rule-based Manager for Device Events and Files skipped, unmet condition check ConditionPathIsReadWrite=/sys relay # [27629.217794] relay systemd[1]: Finished Apply Kernel Variables. client # [27629.305644] client systemd[1]: Finished Flush Journal to Persistent Storage. relay # [27629.229878] relay systemd[1]: Finished Create Static Device Nodes in /dev gracefully. client # [27629.362151] client systemd[1]: Finished Firewall. relay # [27629.244361] relay systemd[1]: Starting Flush Journal to Persistent Storage... client # [27630.231732] client systemd[1]: Mounting /run/wrappers... relay # [27629.245118] relay systemd[1]: Starting Create Static Device Nodes in /dev... relay # [27629.279427] relay systemd-journald[57]: Time spent on flushing to /var/log/journal/17cff2848207481ca7773216086770ce is 1.470ms for 6 entries. relay # [27629.279427] relay systemd-journald[57]: System Journal (/var/log/journal/17cff2848207481ca7773216086770ce) is 512B, max 4G, 3.9G free. relay # [27629.288028] relay systemd[1]: Finished Create Static Device Nodes in /dev. relay # [27629.288774] relay systemd[1]: Reached target Preparation for Local File Systems. relay # [27629.288891] relay systemd[1]: Rule-based Manager for Device Events and Files skipped, unmet condition check ConditionPathIsReadWrite=/sys relay # [27629.307780] relay systemd[1]: Finished Flush Journal to Persistent Storage. relay # [27629.383277] relay systemd[1]: Finished Firewall. relay # [27630.205822] relay systemd[1]: Mounting /run/wrappers... relay # [27630.262699] relay systemd[1]: Mounted /run/wrappers. relay # [27630.263779] relay systemd[1]: Reached target Local File Systems. relay # [27630.265034] relay systemd[1]: Listening on Boot Loader Control Service Socket. relay # [27630.266614] relay systemd[1]: Starting Create SUID/SGID Wrappers... relay # [27630.266658] relay systemd[1]: Update Boot Loader Random Seed skipped, unmet condition check ConditionVirtualization=!container relay # [27630.268051] relay systemd[1]: Starting Save Transient machine-id to Disk... relay # [27630.269360] relay systemd[1]: Starting Create System Files and Directories... relay # [27630.287774] relay systemd-tmpfiles[169]: Cannot set file attributes for '/var/empty', value=0x00000010, mask=0x00000010, ignoring: Operation not permitted relay # [27630.288226] relay systemd-tmpfiles[169]: fchmod() of /var/log/journal failed: Operation not permitted client # [27630.262899] client systemd[1]: Mounted /run/wrappers. agent # [27630.262750] agent systemd[1]: Mounted /run/wrappers. client # [27630.263888] client systemd[1]: Reached target Local File Systems. agent # [27630.263791] agent systemd[1]: Reached target Local File Systems. client # [27630.265075] client systemd[1]: Listening on Boot Loader Control Service Socket. agent # [27630.265111] agent systemd[1]: Listening on Boot Loader Control Service Socket. relay # [27630.288541] relay systemd-tmpfiles[169]: fchmod() of /var/log/journal/17cff2848207481ca7773216086770ce failed: Operation not permitted client # [27630.266564] client systemd[1]: Starting Create SUID/SGID Wrappers... relay # [27630.288892] relay systemd-tmpfiles[169]: fchmod() of /run/log/journal failed: Operation not permitted agent # [27630.266613] agent systemd[1]: Starting Create SUID/SGID Wrappers... client # [27630.266608] client systemd[1]: Update Boot Loader Random Seed skipped, unmet condition check ConditionVirtualization=!container agent # [27630.266661] agent systemd[1]: Update Boot Loader Random Seed skipped, unmet condition check ConditionVirtualization=!container client # [27630.267968] client systemd[1]: Starting Save Transient machine-id to Disk... agent # [27630.268063] agent systemd[1]: Starting Save Transient machine-id to Disk... client # [27630.269482] client systemd[1]: Starting Create System Files and Directories... agent # [27630.269411] agent systemd[1]: Starting Create System Files and Directories... client # [27630.288350] client systemd-tmpfiles[161]: Cannot set file attributes for '/var/empty', value=0x00000010, mask=0x00000010, ignoring: Operation not permitted agent # [27630.288361] agent systemd-tmpfiles[161]: Cannot set file attributes for '/var/empty', value=0x00000010, mask=0x00000010, ignoring: Operation not permitted client # [27630.288805] client systemd-tmpfiles[161]: fchmod() of /var/log/journal failed: Operation not permitted agent # [27630.288782] agent systemd-tmpfiles[161]: fchmod() of /var/log/journal failed: Operation not permitted client # [27630.289143] client systemd-tmpfiles[161]: fchmod() of /var/log/journal/f927ae23ba7e4d48981f14110d0bf1b4 failed: Operation not permitted agent # [27630.289108] agent systemd-tmpfiles[161]: fchmod() of /var/log/journal/21402f983f394ab1b237b4896e2f7b31 failed: Operation not permitted client # [27630.289491] client systemd-tmpfiles[161]: fchmod() of /run/log/journal failed: Operation not permitted agent # [27630.289438] agent systemd-tmpfiles[161]: fchmod() of /run/log/journal failed: Operation not permitted relay # [27630.292541] relay suid-sgid-wrappers-start[176]: chmod: changing permissions of '/run/wrappers/wrappers.GZZ1KIYLNr/chsh': Operation not permitted relay # [27630.294513] relay systemd[1]: suid-sgid-wrappers.service: Main process exited, code=exited, status=1/FAILURE relay # [27630.294558] relay systemd[1]: suid-sgid-wrappers.service: Failed with result 'exit-code'. relay # [27630.294610] relay systemd[1]: Failed to start Create SUID/SGID Wrappers. relay # [27630.326597] relay systemd[1]: Finished Create System Files and Directories. relay # [27630.354532] relay systemd[1]: etc-machine\x2did.mount: Deactivated successfully. relay # [27630.367371] relay systemd[1]: Finished Save Transient machine-id to Disk. relay # [27630.370275] relay systemd[1]: Starting Rebuild Journal Catalog... relay # [27630.371450] relay systemd[1]: Starting Record System Boot/Shutdown in UTMP... relay # [27630.412361] relay systemd[1]: Finished Record System Boot/Shutdown in UTMP. relay # [27630.420081] relay systemd[1]: Finished Rebuild Journal Catalog. relay # [27630.421015] relay systemd[1]: Starting Update is Completed... relay # [27630.429824] relay systemd[1]: Finished Update is Completed. relay # [27630.429893] relay systemd[1]: Reached target System Initialization. relay # [27630.429955] relay systemd[1]: Discard unused filesystem blocks once a week skipped, unmet condition check ConditionVirtualization=!container relay # [27630.429976] relay systemd[1]: Started Daily Cleanup of Temporary Directories. relay # [27630.429990] relay systemd[1]: Reached target Timer Units. relay # [27630.430093] relay systemd[1]: Listening on D-Bus System Message Bus Socket. relay # [27630.430286] relay systemd[1]: Listening on Nix Daemon Socket. relay # [27630.430377] relay systemd[1]: Listening on Virtual Machine and Container Registration Service Socket. relay # [27630.430393] relay systemd[1]: Reached target Socket Units. relay # [27630.430419] relay systemd[1]: Reached target Basic System. relay # [27630.431673] relay systemd[1]: Started device-mock.service. relay # [27630.432359] relay systemd[1]: Starting Re-link flakelet services at boot... relay # [27630.433257] relay systemd[1]: Starting Import lastlog data into lastlog2 database... relay # [27630.434413] relay systemd[1]: Starting Name Service Cache Daemon (nsncd)... relay # [27630.435180] relay systemd[1]: Starting resolvconf update... relay # [27630.442944] relay systemd[1]: Finished Re-link flakelet services at boot. relay # [27630.445216] relay systemd[1]: Starting Reconcile flakelet services with the host configuration... relay # [27630.453132] relay systemd[1]: Finished Import lastlog data into lastlog2 database. client # [27630.290337] client suid-sgid-wrappers-start[168]: chmod: changing permissions of '/run/wrappers/wrappers.hZ2L2oad3O/chsh': Operation not permitted client # [27630.294479] client systemd[1]: suid-sgid-wrappers.service: Main process exited, code=exited, status=1/FAILURE client # [27630.294519] client systemd[1]: suid-sgid-wrappers.service: Failed with result 'exit-code'. client # [27630.294573] client systemd[1]: Failed to start Create SUID/SGID Wrappers. client # [27630.327051] client systemd[1]: Finished Create System Files and Directories. client # [27630.354695] client systemd[1]: etc-machine\x2did.mount: Deactivated successfully. client # [27630.367416] client systemd[1]: Finished Save Transient machine-id to Disk. client # [27630.370541] client systemd[1]: Starting Rebuild Journal Catalog... client # [27630.371272] client systemd[1]: Starting Record System Boot/Shutdown in UTMP... client # [27630.412348] client systemd[1]: Finished Record System Boot/Shutdown in UTMP. client # [27630.419942] client systemd[1]: Finished Rebuild Journal Catalog. client # [27630.421136] client systemd[1]: Starting Update is Completed... client # [27630.431967] client systemd[1]: Finished Update is Completed. client # [27630.432105] client systemd[1]: Reached target System Initialization. client # [27630.432170] client systemd[1]: Discard unused filesystem blocks once a week skipped, unmet condition check ConditionVirtualization=!container client # [27630.432192] client systemd[1]: Started Daily Cleanup of Temporary Directories. client # [27630.432205] client systemd[1]: Reached target Timer Units. client # [27630.432301] client systemd[1]: Listening on D-Bus System Message Bus Socket. client # [27630.432478] client systemd[1]: Listening on Nix Daemon Socket. client # [27630.432574] client systemd[1]: Listening on Virtual Machine and Container Registration Service Socket. client # [27630.432586] client systemd[1]: Reached target Socket Units. client # [27630.432612] client systemd[1]: Reached target Basic System. client # [27630.433624] client systemd[1]: Starting Import lastlog data into lastlog2 database... client # [27630.434624] client systemd[1]: Starting Name Service Cache Daemon (nsncd)... client # [27630.435212] client systemd[1]: Starting resolvconf update... client # [27630.453404] client systemd[1]: Finished Import lastlog data into lastlog2 database. agent # [27630.290236] agent suid-sgid-wrappers-start[168]: chmod: changing permissions of '/run/wrappers/wrappers.gOCFwuouWn/chsh': Operation not permitted agent # [27630.293848] agent systemd[1]: suid-sgid-wrappers.service: Main process exited, code=exited, status=1/FAILURE agent # [27630.293947] agent systemd[1]: suid-sgid-wrappers.service: Failed with result 'exit-code'. agent # [27630.294150] agent systemd[1]: Failed to start Create SUID/SGID Wrappers. agent # [27630.326171] agent systemd[1]: Finished Create System Files and Directories. agent # [27630.354646] agent systemd[1]: etc-machine\x2did.mount: Deactivated successfully. agent # [27630.367376] agent systemd[1]: Finished Save Transient machine-id to Disk. agent # [27630.370540] agent systemd[1]: Starting Rebuild Journal Catalog... agent # [27630.371544] agent systemd[1]: Starting Record System Boot/Shutdown in UTMP... agent # [27630.412456] agent systemd[1]: Finished Record System Boot/Shutdown in UTMP. agent # [27630.418278] agent systemd[1]: Finished Rebuild Journal Catalog. agent # [27630.419461] agent systemd[1]: Starting Update is Completed... agent # [27630.430058] agent systemd[1]: Finished Update is Completed. agent # [27630.430154] agent systemd[1]: Reached target System Initialization. agent # [27630.430225] agent systemd[1]: Discard unused filesystem blocks once a week skipped, unmet condition check ConditionVirtualization=!container agent # [27630.430246] agent systemd[1]: Started Daily Cleanup of Temporary Directories. agent # [27630.430261] agent systemd[1]: Reached target Timer Units. agent # [27630.430351] agent systemd[1]: Listening on D-Bus System Message Bus Socket. agent # [27630.430556] agent systemd[1]: Listening on Nix Daemon Socket. agent # [27630.430646] agent systemd[1]: Listening on Virtual Machine and Container Registration Service Socket. agent # [27630.430658] agent systemd[1]: Reached target Socket Units. agent # [27630.430685] agent systemd[1]: Reached target Basic System. agent # [27630.431815] agent systemd[1]: Starting Re-link flakelet services at boot... agent # [27630.432590] agent systemd[1]: Starting Import lastlog data into lastlog2 database... agent # [27630.433576] agent systemd[1]: Starting Name Service Cache Daemon (nsncd)... agent # [27630.434261] agent systemd[1]: Starting resolvconf update... agent # [27630.441797] agent systemd[1]: Finished Re-link flakelet services at boot. agent # [27630.443412] agent systemd[1]: Starting Reconcile flakelet services with the host configuration... agent # [27630.448957] agent systemd[1]: Finished Import lastlog data into lastlog2 database. agent # [27630.455978] agent systemd[1]: Finished Reconcile flakelet services with the host configuration. relay # [27630.458160] relay systemd[1]: Finished Reconcile flakelet services with the host configuration. relay # [27630.528206] relay systemd[1]: Finished resolvconf update. relay # [27630.528344] relay systemd[1]: Reached target Preparation for Network. relay # [27630.529390] relay systemd[1]: Starting Address configuration of eth1... relay # [27630.530208] relay systemd[1]: Starting Extra networking commands.... relay # [27630.533589] relay systemd[1]: nscd.service: Deactivated successfully. relay # [27630.563375] relay systemd[1]: Stopped Name Service Cache Daemon (nsncd). relay # [27630.566093] relay systemd[1]: Starting Name Service Cache Daemon (nsncd)... relay # [27630.581306] relay network-addresses-eth1-start[246]: adding address 192.168.1.3/24... done relay # [27630.584620] relay network-addresses-eth1-start[246]: adding address 2001:db8:1::3/64... done relay # [27630.589543] relay systemd[1]: Finished Address configuration of eth1. relay # [27630.623847] relay systemd[1]: Finished Extra networking commands.. relay # [27630.623932] relay systemd[1]: Reached target Network. relay # [27630.625121] relay systemd[1]: Starting Dnsmasq Daemon... relay # [27630.626024] relay systemd[1]: Starting Nginx Web Server... relay # [27630.626886] relay systemd[1]: Starting Update flakelet service flakelet-relay... relay # [27630.637966] relay flakelet[311]: flakelet-relay: using prebuilt artifact /nix/store/ynvpap92m8j3nmlrzjj55187cns75bsq-flakelet-flakelet-relay relay # [27630.638625] relay flakelet[311]: flakelet-relay: activating generation 1 relay # [27630.642274] relay systemd[1]: Reload requested from client PID 314 ('systemctl') (unit flakelet-flakelet-relay.service)... relay # [27630.642307] relay systemd[1]: Reloading... agent # [27630.523912] agent systemd[1]: nscd.service: Deactivated successfully. agent # [27630.524077] agent systemd[1]: Stopped Name Service Cache Daemon (nsncd). agent # [27630.525450] agent systemd[1]: Finished resolvconf update. agent # [27630.526197] agent systemd[1]: Reached target Preparation for Network. agent # [27630.527399] agent systemd[1]: Starting Address configuration of eth1... agent # [27630.528266] agent systemd[1]: Starting Extra networking commands.... agent # [27630.529182] agent systemd[1]: Starting Name Service Cache Daemon (nsncd)... agent # [27630.581972] agent network-addresses-eth1-start[240]: adding address 192.168.1.1/24... done agent # [27630.584785] agent network-addresses-eth1-start[240]: adding address 2001:db8:1::1/64... done agent # [27630.588799] agent systemd[1]: Finished Address configuration of eth1. agent # [27630.633891] agent systemd[1]: Finished Extra networking commands.. agent # [27630.634017] agent systemd[1]: Reached target Network. agent # [27630.635094] agent systemd[1]: Starting Update flakelet service app... agent # [27630.635739] agent systemd[1]: Starting Update flakelet service flakelet-agent... agent # [27630.636392] agent systemd[1]: Starting Update flakelet service other... agent # [27630.646719] agent flakelet[304]: app: using prebuilt artifact /nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1 agent # [27630.646987] agent flakelet[305]: flakelet-agent: using prebuilt artifact /nix/store/k2sr4knq2a859ssiy9hw0pqcsszsc7r9-flakelet-flakelet-agent agent # [27630.647201] agent flakelet[306]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27630.647376] agent flakelet[304]: app: activating generation 1 agent # [27630.647434] agent flakelet[305]: flakelet-agent: activating generation 1 agent # [27630.647530] agent flakelet[306]: other: activating generation 1 agent # [27630.652886] agent systemd[1]: Reload requested from client PID 307 ('systemctl') (unit flakelet-app.service)... agent # [27630.652917] agent systemd[1]: Reloading... client # [27630.524181] client systemd[1]: nscd.service: Deactivated successfully. client # [27630.524301] client systemd[1]: Stopped Name Service Cache Daemon (nsncd). client # [27630.525703] client systemd[1]: Finished resolvconf update. client # [27630.526621] client systemd[1]: Reached target Preparation for Network. client # [27630.527642] client systemd[1]: Starting Address configuration of eth1... client # [27630.528322] client systemd[1]: Starting Extra networking commands.... client # [27630.529342] client systemd[1]: Starting Name Service Cache Daemon (nsncd)... client # [27630.584054] client network-addresses-eth1-start[236]: adding address 192.168.1.2/24... done client # [27630.587702] client network-addresses-eth1-start[236]: adding address 2001:db8:1::2/64... done client # [27630.592642] client systemd[1]: Finished Address configuration of eth1. client # [27630.631360] client systemd[1]: Finished Extra networking commands.. client # [27630.631922] client systemd[1]: Reached target Network. client # [27630.680585] client systemd[1]: nscd.service: Deactivated successfully. client # [27630.680728] client systemd[1]: Stopped Name Service Cache Daemon (nsncd). client # [27630.683144] client systemd[1]: Starting Name Service Cache Daemon (nsncd)... relay # [27630.967120] relay nsncd[251]: Sep 06 14:45:08.928 INFO started, config: Config { ignored_request_types: {}, worker_count: 8, handoff_timeout: 10s }, path: "/var/run/nscd/socket" relay # [27631.077906] relay systemd[1]: Reloading finished in 435 ms. client # [27630.973539] client nsncd[303]: Sep 06 14:45:08.935 INFO started, config: Config { ignored_request_types: {}, worker_count: 8, handoff_timeout: 10s }, path: "/var/run/nscd/socket" client # [27630.973432] client systemd[1]: Started Name Service Cache Daemon (nsncd). client # [27630.973522] client systemd[1]: Reached target Host and Network Name Lookups. client # [27630.973623] client systemd[1]: Reached target User and Group Name Lookups. client # [27630.975865] client systemd[1]: Starting User Login Management... client # [27630.977222] client systemd[1]: Starting Permit User Sessions... client # [27631.002868] client systemd[1]: Finished Permit User Sessions. client # [27631.004691] client systemd[1]: Started Console Getty. client # [27631.004745] client systemd[1]: Getty on tty1 skipped, unmet condition check ConditionPathExists=/dev/tty0 client # [27631.004772] client systemd[1]: Reached target Login Prompts. agent # [27631.074049] agent systemd[1]: Reloading finished in 420 ms. agent # [27631.249893] agent systemd[1]: nscd.service: Deactivated successfully. agent # [27631.250176] agent systemd[1]: Stopped Name Service Cache Daemon (nsncd). agent # [27631.257995] agent systemd[1]: Reload requested from client PID 308 ('systemctl') (unit flakelet-flakelet-agent.service)... agent # [27631.258067] agent systemd[1]: Reloading... relay # [27631.218052] relay systemd[1]: Started Name Service Cache Daemon (nsncd). relay # [27631.218526] relay systemd[1]: Reached target Host and Network Name Lookups. relay # [27631.218606] relay systemd[1]: Reached target User and Group Name Lookups. relay # [27631.219921] relay systemd[1]: Starting User Login Management... relay # [27631.220980] relay systemd[1]: Starting Permit User Sessions... relay # [27631.240769] relay systemd[1]: Reload requested from client PID 357 ('systemctl') (unit flakelet-flakelet-relay.service)... relay # [27631.240833] relay systemd[1]: Reloading... relay # [27631.271374] relay dnsmasq-pre-start[366]: dnsmasq: syntax check OK. agent # [27631.595140] agent systemd[1]: Reloading finished in 336 ms. agent # [27631.727616] agent systemd[1]: Reload requested from client PID 309 ('systemctl') (unit flakelet-other.service)... agent # [27631.727667] agent systemd[1]: Reloading... relay # [27631.591230] relay systemd[1]: Reloading finished in 349 ms. relay # [27631.724555] relay systemd[1]: Finished Permit User Sessions. relay # [27631.756764] relay systemd[1]: Started Console Getty. relay # [27631.756843] relay systemd[1]: Getty on tty1 skipped, unmet condition check ConditionPathExists=/dev/tty0 relay # [27631.756915] relay systemd[1]: Reached target Login Prompts. relay # [27631.760337] relay systemd[1]: Starting flakelet-relay... agent # [27632.095581] agent systemd[1]: Reloading finished in 367 ms. agent # [27632.172170] agent systemd[1]: Starting Name Service Cache Daemon (nsncd)... agent # [27632.178268] agent systemd[1]: Reload requested from client PID 392 ('systemctl') (unit flakelet-flakelet-agent.service)... agent # [27632.178306] agent systemd[1]: Reloading... relay # [27632.271091] relay nginx-pre-start[402]: nginx: the configuration file /nix/store/01avjj26wcihp926xgasszcj5s0k7cbs-nginx.conf syntax is ok relay # [27632.278385] relay nginx-pre-start[402]: nginx: configuration file /nix/store/01avjj26wcihp926xgasszcj5s0k7cbs-nginx.conf test is successful relay # [27632.292602] relay systemd[1]: Started Nginx Web Server. relay # [27632.385966] relay systemd[1]: Starting D-Bus System Message Bus... client # [27632.382882] client systemd-logind[315]: New seat seat0. client # [27632.384941] client systemd[1]: Starting D-Bus System Message Bus... client # [27632.385126] client systemd[1]: Started User Login Management. client # [27632.386579] client systemd[1]: Starting linger-users.service... client # [27632.429457] client systemd[1]: linger-users.service: Deactivated successfully. client # [27632.429827] client systemd[1]: Finished linger-users.service. client # [27632.430179] client systemd[1]: Reached target Multi-User System. agent # [27632.524531] agent nsncd[391]: Sep 06 14:45:10.486 INFO started, config: Config { ignored_request_types: {}, worker_count: 8, handoff_timeout: 10s }, path: "/var/run/nscd/socket" agent # [27632.569593] agent systemd[1]: Reloading finished in 390 ms. agent # [27632.655097] agent systemd[1]: Started Name Service Cache Daemon (nsncd). agent # [27632.655703] agent systemd[1]: Reload requested from client PID 393 ('systemctl') (unit flakelet-app.service)... agent # [27632.655754] agent systemd[1]: Reloading... relay # [27632.690690] relay systemd-logind[354]: New seat seat0. relay # [27632.691091] relay systemd[1]: Started User Login Management. relay # [27632.693612] relay systemd[1]: Starting linger-users.service... relay # [27632.735070] relay systemd[1]: linger-users.service: Deactivated successfully. relay # [27632.735410] relay systemd[1]: Finished linger-users.service. relay # [27632.931693] relay dbus-broker-launch[408]: Looking up NSS user entry for 'systemd-timesync'... relay # [27632.933154] relay dbus-broker-launch[408]: NSS returned no entry for 'systemd-timesync' relay # [27632.933154] relay dbus-broker-launch[408]: Invalid user-name in /nix/store/jc4z11b21x1n6xiiply0x9mfc84afs4d-system-path/share/dbus-1/system.d/org.freedesktop.timesync1.conf +16: user="systemd-timesync" relay # [27632.934285] relay systemd[1]: Started D-Bus System Message Bus. relay # [27632.941200] relay dbus-broker-launch[408]: Ready relay # [27632.944893] relay systemd[1]: Started Dnsmasq Daemon. relay # [27632.947031] relay dnsmasq[394]: started, version 2.93 cachesize 150 relay # [27632.947040] relay dnsmasq[394]: compile time options: IPv6 GNU-getopt DBus no-UBus no-i18n IDN2 DHCP DHCPv6 no-Lua TFTP conntrack ipset nftset auth DNSSEC loop-detect inotify dumpfile relay # [27632.947045] relay dnsmasq[394]: DBus support enabled: connected to system bus relay # [27632.947052] relay dnsmasq[394]: no upstream servers configured - please set them from DBus relay # [27632.947143] relay dnsmasq[394]: read /etc/hosts - 9 names client # [27632.912283] client dbus-broker-launch[325]: Looking up NSS user entry for 'systemd-timesync'... client # [27632.913449] client dbus-broker-launch[325]: NSS returned no entry for 'systemd-timesync' client # [27632.913449] client dbus-broker-launch[325]: Invalid user-name in /nix/store/hkgrcri3409spq969gf2kf873v4l58b2-system-path/share/dbus-1/system.d/org.freedesktop.timesync1.conf +16: user="systemd-timesync" client # [27632.914323] client systemd[1]: Started D-Bus System Message Bus. client # [27632.914565] client systemd[1]: Startup finished in 4.157s. client # [27632.926264] client dbus-broker-launch[325]: Ready agent # [27632.990630] agent systemd[1]: Reloading finished in 334 ms. agent # [27633.065845] agent systemd[1]: Reached target Host and Network Name Lookups. agent # [27633.065955] agent systemd[1]: Reached target User and Group Name Lookups. agent # [27633.067437] agent systemd[1]: Starting User Login Management... agent # [27633.068537] agent systemd[1]: Starting Permit User Sessions... agent # [27633.072781] agent systemd[1]: Starting app v1... agent # [27633.104265] agent systemd[1]: Starting flakelet-agent... agent # [27633.105962] agent systemd[1]: Reload requested from client PID 459 ('systemctl') (unit flakelet-other.service)... agent # [27633.106029] agent systemd[1]: Reloading... agent # [27633.151708] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:11.113349Z","level":"WARN","message":"connect failed: connect relay:7443: Connection refused (os error 111)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} agent # [27633.438565] agent systemd[1]: Reloading finished in 332 ms. agent # [27633.535969] agent systemd[1]: Started app v1. agent # [27633.536256] agent systemd[1]: Started flakelet-agent. agent # [27633.536732] agent systemd[1]: Finished Permit User Sessions. agent # [27633.544232] agent flakelet[304]: app: updated to generation 1 agent # [27633.544859] agent flakelet[305]: flakelet-agent: updated to generation 1 agent # [27633.545288] agent systemd[1]: Started Console Getty. agent # [27633.545349] agent systemd[1]: Getty on tty1 skipped, unmet condition check ConditionPathExists=/dev/tty0 agent # [27633.545417] agent systemd[1]: Reached target Login Prompts. agent # [27633.546259] agent systemd[1]: Starting other v1... agent # [27633.546623] agent systemd[1]: Finished Update flakelet service app. agent # [27633.546899] agent systemd[1]: Finished Update flakelet service flakelet-agent. agent # [27633.581194] agent systemd[1]: Started other v1. agent # [27633.586781] agent flakelet[306]: other: updated to generation 1 agent # [27633.588726] agent systemd[1]: Finished Update flakelet service other. agent # [27633.588850] agent systemd[1]: Reached target flakelet managed services. relay # [27633.694399] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:11.656029Z","level":"INFO","message":"listening on 127.0.0.1:7400","target":"flakelet_relay::relay::server"} relay # [27633.695163] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:11.656591Z","level":"INFO","message":"listening on [::]:7443","target":"flakelet_relay::relay::server"} relay # [27633.695048] relay systemd[1]: Started flakelet-relay. relay # [27633.705063] relay systemd[1]: Starting health for flakelet-relay... relay # [27633.971789] relay systemd[1]: flakelet-relay-health.service: Deactivated successfully. relay # [27633.972173] relay systemd[1]: Finished health for flakelet-relay. relay # [27633.980908] relay flakelet[311]: flakelet-relay: updated to generation 1 relay # [27633.983709] relay systemd[1]: Finished Update flakelet service flakelet-relay. relay # [27633.984274] relay systemd[1]: Reached target flakelet managed services. relay # [27633.984460] relay systemd[1]: Reached target Multi-User System. relay # [27633.984721] relay systemd[1]: Startup finished in 5.224s. relay: (finished: waiting for unit flakelet-relay.service, in 6.17 seconds) relay: waiting for unit nginx.service relay: (finished: waiting for unit nginx.service, in 0.02 seconds) agent: waiting for unit flakelet.target agent # [27634.210405] agent systemd-logind[460]: New seat seat0. agent # [27634.210970] agent systemd[1]: Started User Login Management. agent # [27634.213169] agent systemd[1]: Starting D-Bus System Message Bus... agent # [27634.214870] agent systemd[1]: Starting linger-users.service... agent # [27634.254118] agent systemd[1]: linger-users.service: Deactivated successfully. agent # [27634.254458] agent systemd[1]: Finished linger-users.service. agent # [27634.254806] agent systemd[1]: Reached target Multi-User System. agent: (finished: waiting for unit flakelet.target, in 0.33 seconds) agent: waiting for unit flakelet-agent.service agent: (finished: waiting for unit flakelet-agent.service, in 0.02 seconds) client: waiting for unit multi-user.target client: (finished: waiting for unit multi-user.target, in 0.02 seconds) relay: waiting for success: curl -sf http://127.0.0.1:7400/metrics | grep -q 'agent_up{host="agent"} 1' agent # [27634.586192] agent dbus-broker-launch[897]: Looking up NSS user entry for 'systemd-timesync'... agent # [27634.587779] agent dbus-broker-launch[897]: NSS returned no entry for 'systemd-timesync' agent # [27634.587779] agent dbus-broker-launch[897]: Invalid user-name in /nix/store/9jm4z4kmif1yf3786ghlinqlwra7q4q4-system-path/share/dbus-1/system.d/org.freedesktop.timesync1.conf +16: user="systemd-timesync" agent # [27634.588625] agent systemd[1]: Started D-Bus System Message Bus. agent # [27634.589173] agent systemd[1]: Startup finished in 5.832s. agent # [27634.595280] agent dbus-broker-launch[897]: Ready relay # [27635.172106] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:13.133810Z","level":"INFO","message":"agent connected","host":"agent","version":"0.1.0","flakelets":"[Named { name: \"app\", generation: None, revision: None }, Named { name: \"flakelet-agent\", generation: None, revision: None }, Named { name: \"other\", generation: None, revision: None }]","target":"flakelet_relay::relay::agent_conn"} agent # [27635.171748] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:13.133468Z","level":"INFO","message":"connected","relay":"https://relay:7443","relay_name":"relay","relay_version":"0.1.0","host":"agent","target":"flakelet_relay::agent::conn"} agent # [27635.176196] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:13.137998Z","level":"INFO","message":"local change","flakelet":"app","generation":1,"by":"host activation","target":"flakelet_relay::agent::jobs"} agent # [27635.176640] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:13.138463Z","level":"INFO","message":"local change","flakelet":"flakelet-agent","generation":1,"by":"host activation","target":"flakelet_relay::agent::jobs"} agent # [27635.176839] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:13.138666Z","level":"INFO","message":"local change","flakelet":"other","generation":1,"by":"host activation","target":"flakelet_relay::agent::jobs"} relay: (finished: waiting for success: curl -sf http://127.0.0.1:7400/metrics | grep -q 'agent_up{host="agent"} 1', in 1.04 seconds) agent: must succeed: systemctl is-active app.service other.service agent: (finished: must succeed: systemctl is-active app.service other.service, in 0.01 seconds) subtest: deploy with client certificate, relay found via SRV agent: must succeed: jq '.services.app.prebuilt="/nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) client: must succeed: push --relay-srv test --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app 2>&1 relay # [27635.874978] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:13.836716Z","level":"INFO","message":"deploy accepted","job":"5456821da1042cccee1ed1f4fb122101","caller":"admin@example.org","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27635.875662] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:13.837378Z","level":"INFO","message":"start","id":"e8724d406ab8ba5ed7403f9842844552","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27635.876351] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:13.838148Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"e8724d406ab8ba5ed7403f9842844552\"]","target":"flakelet_relay::agent::jobs"} agent # [27635.917542] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27635.956112] agent systemd[1]: Started flakelet update app (via relay). agent # [27635.960750] agent flakelet[919]: app: using prebuilt artifact /nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2 agent # [27635.961432] agent flakelet[919]: app: activating generation 2 agent # [27635.980328] agent systemd[1]: Stopping app v1... agent # [27635.980780] agent systemd[1]: app.service: Deactivated successfully. agent # [27635.981062] agent systemd[1]: Stopped app v1. agent # [27635.997386] agent systemd[1]: Reload requested from client PID 926 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27635.997451] agent systemd[1]: Reloading... agent # [27636.330090] agent systemd[1]: Reloading finished in 331 ms. agent # [27636.397459] agent systemd[1]: Reload requested from client PID 956 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27636.397497] agent systemd[1]: Reloading... agent # [27636.716830] agent systemd[1]: Reloading finished in 318 ms. agent # [27636.790114] agent systemd[1]: Reload requested from client PID 985 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27636.790151] agent systemd[1]: Reloading... agent # [27637.107558] agent systemd[1]: Reloading finished in 316 ms. agent # [27637.172921] agent systemd[1]: Reload requested from client PID 1020 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27637.172950] agent systemd[1]: Reloading... agent # [27637.490869] agent systemd[1]: Reloading finished in 317 ms. agent # [27637.555050] agent systemd[1]: Starting app v2... agent # [27637.590971] agent systemd[1]: Started app v2. agent # [27637.598374] agent flakelet[919]: app: updated to generation 2 agent # [27637.600730] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. client: (finished: must succeed: push --relay-srv test --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app 2>&1, in 2.86 seconds) agent: must succeed: systemctl show app.service -p Description | grep -q 'app v2' agent: (finished: must succeed: systemctl show app.service -p Description | grep -q 'app v2', in 0.02 seconds) agent: must succeed: journalctl -u flakelet-relay-job-app.service | grep -q 'generation 2' agent: (finished: must succeed: journalctl -u flakelet-relay-job-app.service | grep -q 'generation 2', in 0.01 seconds) agent: must succeed: flakelet status --json app | jq -c '.[0].changed.by' agent: (finished: must succeed: flakelet status --json app | jq -c '.[0].changed.by', in 0.03 seconds) (finished: subtest: deploy with client certificate, relay found via SRV, in 2.94 seconds) subtest: deploy with OIDC token, sub principal agent: must succeed: jq '.services.app.prebuilt="/nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) client: must succeed: echo '{"groups": []}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'repo:github:example/app:ref:refs/heads/main' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32) client: (finished: must succeed: echo '{"groups": []}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'repo:github:example/app:ref:refs/heads/main' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32), in 0.05 seconds) client: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjIxNiwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTE2LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJNNlM0UU0yNlEzSFkyPT09IiwibmJmIjoxNzg4NzA1OTE2LCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.059bmyUhE4CFZeNtAJgWF4MQNr6DG9LGnUyP_DkQ-uS7WBf14y105fx1HKACj_IUfcUWa78bB8sxTDjqvUe4CA' push --relay https://relay:7443 deploy agent/app 2>&1 agent # [27638.705703] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:16.667439Z","level":"INFO","message":"update finished","flakelet":"app","status":"Updated","generation":"Some(2)","target":"flakelet_relay::agent::jobs"} agent # [27638.872530] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:16.834289Z","level":"INFO","message":"start","id":"4396c16b57992100d51344ff9ff4a746","flakelet":"app","rule":"ci","relay":"relay","caller_name":"\"repo:github:example/app:ref:refs/heads/main\"","target":"flakelet_relay::agent::conn"} agent # [27638.873239] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:16.835058Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"4396c16b57992100d51344ff9ff4a746\"]","target":"flakelet_relay::agent::jobs"} agent # [27638.906143] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27638.943034] agent systemd[1]: Started flakelet update app (via relay). agent # [27638.947669] agent flakelet[1085]: app: using prebuilt artifact /nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1 agent # [27638.948330] agent flakelet[1085]: app: activating generation 3 agent # [27638.957126] agent systemd[1]: Stopping app v2... relay # [27638.707464] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:16.669201Z","level":"INFO","message":"deploy finished","job":"5456821da1042cccee1ed1f4fb122101","ok":true,"target":"flakelet_relay::relay::api"} relay # [27638.872196] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:16.833990Z","level":"INFO","message":"deploy accepted","job":"659b29e6cc475aad9d672e77d83ddbfe","caller":"repo:github:example/app:ref:refs/heads/main","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27638.957816] agent systemd[1]: app.service: Deactivated successfully. agent # [27638.957943] agent systemd[1]: Stopped app v2. agent # [27638.967757] agent systemd[1]: Reload requested from client PID 1092 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27638.967790] agent systemd[1]: Reloading... agent # [27639.287464] agent systemd[1]: Reloading finished in 319 ms. agent # [27639.358303] agent systemd[1]: Reload requested from client PID 1125 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27639.358336] agent systemd[1]: Reloading... agent # [27639.677823] agent systemd[1]: Reloading finished in 319 ms. agent # [27639.742299] agent systemd[1]: Reload requested from client PID 1155 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27639.742329] agent systemd[1]: Reloading... agent # [27640.059514] agent systemd[1]: Reloading finished in 316 ms. agent # [27640.133489] agent systemd[1]: Reload requested from client PID 1186 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27640.133522] agent systemd[1]: Reloading... agent # [27640.456318] agent systemd[1]: Reloading finished in 322 ms. agent # [27640.518583] agent systemd[1]: Starting app v1... agent # [27640.555179] agent systemd[1]: Started app v1. agent # [27640.562376] agent flakelet[1085]: app: updated to generation 3 agent # [27640.564747] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. client: (finished: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjIxNiwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTE2LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJNNlM0UU0yNlEzSFkyPT09IiwibmJmIjoxNzg4NzA1OTE2LCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.059bmyUhE4CFZeNtAJgWF4MQNr6DG9LGnUyP_DkQ-uS7WBf14y105fx1HKACj_IUfcUWa78bB8sxTDjqvUe4CA' push --relay https://relay:7443 deploy agent/app 2>&1, in 2.83 seconds) (finished: subtest: deploy with OIDC token, sub principal, in 2.90 seconds) subtest: policy denies uncovered target client: must fail: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjIxNiwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTE2LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJNNlM0UU0yNlEzSFkyPT09IiwibmJmIjoxNzg4NzA1OTE2LCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.059bmyUhE4CFZeNtAJgWF4MQNr6DG9LGnUyP_DkQ-uS7WBf14y105fx1HKACj_IUfcUWa78bB8sxTDjqvUe4CA' push --relay https://relay:7443 deploy agent/other 2>&1 client: (finished: must fail: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjIxNiwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTE2LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJNNlM0UU0yNlEzSFkyPT09IiwibmJmIjoxNzg4NzA1OTE2LCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.059bmyUhE4CFZeNtAJgWF4MQNr6DG9LGnUyP_DkQ-uS7WBf14y105fx1HKACj_IUfcUWa78bB8sxTDjqvUe4CA' push --relay https://relay:7443 deploy agent/other 2>&1, in 0.02 seconds) (finished: subtest: policy denies uncovered target, in 0.02 seconds) subtest: claim principal from groups, unchanged counts as success client: must succeed: echo '{"groups": ["wheel"]}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'someone' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32) client: (finished: must succeed: echo '{"groups": ["wheel"]}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'someone' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32), in 0.06 seconds) client: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjIxOSwiZ3JvdXBzIjpbIndoZWVsIl0sImlhdCI6MTc4ODcwNTkxOSwiaXNzIjoiaHR0cHM6Ly9yZWxheTo4NDQzIiwianRpIjoiQUpPTFJSSzdTT1c2Sz09PSIsIm5iZiI6MTc4ODcwNTkxOSwic3ViIjoic29tZW9uZSJ9.kAJbUCGU_m4bTFyeWqOEwlwR7MuxRyYP9TOkRnMX1rHB9S6YAHXdyDaIjNAWaB0GjIN2Tg6m0Blso8Mh3ai1Bg' push --relay https://relay:7443 deploy agent/other 2>&1 relay # [27641.670299] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:19.632031Z","level":"INFO","message":"deploy finished","job":"659b29e6cc475aad9d672e77d83ddbfe","ok":true,"target":"flakelet_relay::relay::api"} relay # [27641.773645] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:19.735433Z","level":"INFO","message":"deploy accepted","job":"9a09b7c0c32ba2a6db4997bac4617a52","caller":"someone","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27641.668685] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:19.630468Z","level":"INFO","message":"update finished","flakelet":"app","status":"Updated","generation":"Some(3)","target":"flakelet_relay::agent::jobs"} agent # [27641.773992] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:19.735789Z","level":"INFO","message":"start","id":"d7c37f112e8deda110506331ddc3e10a","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"someone\"","target":"flakelet_relay::agent::conn"} agent # [27641.774394] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:19.736225Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"d7c37f112e8deda110506331ddc3e10a\"]","target":"flakelet_relay::agent::jobs"} agent # [27641.815324] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27641.852133] agent systemd[1]: Started flakelet update other (via relay). agent # [27641.856214] agent flakelet[1240]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27641.856749] agent flakelet[1240]: other: up to date agent # [27641.859711] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. client: (finished: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjIxOSwiZ3JvdXBzIjpbIndoZWVsIl0sImlhdCI6MTc4ODcwNTkxOSwiaXNzIjoiaHR0cHM6Ly9yZWxheTo4NDQzIiwianRpIjoiQUpPTFJSSzdTT1c2Sz09PSIsIm5iZiI6MTc4ODcwNTkxOSwic3ViIjoic29tZW9uZSJ9.kAJbUCGU_m4bTFyeWqOEwlwR7MuxRyYP9TOkRnMX1rHB9S6YAHXdyDaIjNAWaB0GjIN2Tg6m0Blso8Mh3ai1Bg' push --relay https://relay:7443 deploy agent/other 2>&1, in 0.65 seconds) (finished: subtest: claim principal from groups, unchanged counts as success, in 0.71 seconds) subtest: push login via device flow, cached token used afterwards client: must succeed: push login --issuer https://relay:8443 --client-id flakelet-relay 2>&1 relay # [27642.401995] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:20.363730Z","level":"INFO","message":"deploy finished","job":"9a09b7c0c32ba2a6db4997bac4617a52","ok":true,"target":"flakelet_relay::relay::api"} relay # [27642.426741] relay 93sn3sv24fj26ksccpppzwg6kbf10s4w-device-mock[186]: 127.0.0.1 - - [06/Sep/2026 14:45:20] "POST /device HTTP/1.1" 200 - agent # [27642.400342] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:20.362085Z","level":"INFO","message":"update finished","flakelet":"other","status":"Unchanged","generation":"Some(1)","target":"flakelet_relay::agent::jobs"} relay # [27643.431899] relay 93sn3sv24fj26ksccpppzwg6kbf10s4w-device-mock[186]: 127.0.0.1 - - [06/Sep/2026 14:45:21] "POST /token HTTP/1.1" 400 - client: (finished: must succeed: push login --issuer https://relay:8443 --client-id flakelet-relay 2>&1, in 2.08 seconds) client: must succeed: test "$(stat -c %a /root/.local/state/flakelet-push/token.json)" = 600 client: (finished: must succeed: test "$(stat -c %a /root/.local/state/flakelet-push/token.json)" = 600, in 0.01 seconds) client: must succeed: push --relay https://relay:7443 deploy agent/other 2>&1 relay # [27644.480549] relay 93sn3sv24fj26ksccpppzwg6kbf10s4w-device-mock[186]: 127.0.0.1 - - [06/Sep/2026 14:45:22] "POST /token HTTP/1.1" 200 - relay # [27644.512772] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:22.474522Z","level":"INFO","message":"deploy accepted","job":"4da44aaa678c298164bfe3687152f8f8","caller":"dev@example.org","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27644.513262] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:22.475012Z","level":"INFO","message":"start","id":"c23396783f5ca07cd1fe26ffb83c1f08","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"dev@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27644.514085] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:22.475726Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"c23396783f5ca07cd1fe26ffb83c1f08\"]","target":"flakelet_relay::agent::jobs"} agent # [27644.552878] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27644.580145] agent systemd[1]: Started flakelet update other (via relay). agent # [27644.584933] agent flakelet[1264]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27644.585531] agent flakelet[1264]: other: up to date agent # [27644.587256] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. client: (finished: must succeed: push --relay https://relay:7443 deploy agent/other 2>&1, in 0.64 seconds) client: must succeed: push --relay https://relay:7443 deploy agent/other 2>&1 relay # [27645.128077] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:23.089798Z","level":"INFO","message":"deploy finished","job":"4da44aaa678c298164bfe3687152f8f8","ok":true,"target":"flakelet_relay::relay::api"} relay # [27645.147898] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:23.109667Z","level":"INFO","message":"deploy accepted","job":"269618a381cbf8d07e63459fe0cfdd91","caller":"dev@example.org","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27645.126377] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:23.088115Z","level":"INFO","message":"update finished","flakelet":"other","status":"Unchanged","generation":"Some(1)","target":"flakelet_relay::agent::jobs"} agent # [27645.148215] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:23.109990Z","level":"INFO","message":"start","id":"116c7aacca24ecd9c22c25fb4a45fd12","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"dev@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27645.148556] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:23.110376Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"116c7aacca24ecd9c22c25fb4a45fd12\"]","target":"flakelet_relay::agent::jobs"} agent # [27645.191351] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27645.223107] agent systemd[1]: Started flakelet update other (via relay). agent # [27645.226988] agent flakelet[1288]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27645.227563] agent flakelet[1288]: other: up to date agent # [27645.230602] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. client: (finished: must succeed: push --relay https://relay:7443 deploy agent/other 2>&1, in 0.65 seconds) (finished: subtest: push login via device flow, cached token used afterwards, in 3.37 seconds) subtest: waves: failing first wave skips the second agent: must succeed: jq '.services.app.prebuilt="/nix/store/8282rnbvyk847q4l4zby3zwcq3jpzrvw-flakelet-app-broken"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/8282rnbvyk847q4l4zby3zwcq3jpzrvw-flakelet-app-broken"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) client: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app --wave agent/other 2>&1 agent # [27645.772938] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:23.734680Z","level":"INFO","message":"update finished","flakelet":"other","status":"Unchanged","generation":"Some(1)","target":"flakelet_relay::agent::jobs"} agent # [27645.810749] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:23.772544Z","level":"INFO","message":"start","id":"2d5f67374b0e3ff181f5d6dcbfb66943","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27645.811213] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:23.773032Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"2d5f67374b0e3ff181f5d6dcbfb66943\"]","target":"flakelet_relay::agent::jobs"} agent # [27645.852376] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27645.883091] agent systemd[1]: Started flakelet update app (via relay). agent # [27645.887622] agent flakelet[1311]: app: using prebuilt artifact /nix/store/8282rnbvyk847q4l4zby3zwcq3jpzrvw-flakelet-app-broken agent # [27645.888324] agent flakelet[1311]: app: activating generation 4 agent # [27645.906682] agent systemd[1]: Stopping app v1... agent # [27645.907148] agent systemd[1]: app.service: Deactivated successfully. agent # [27645.907412] agent systemd[1]: Stopped app v1. agent # [27645.923766] agent systemd[1]: Reload requested from client PID 1318 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27645.923833] agent systemd[1]: Reloading... relay # [27645.774623] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:23.736342Z","level":"INFO","message":"deploy finished","job":"269618a381cbf8d07e63459fe0cfdd91","ok":true,"target":"flakelet_relay::relay::api"} relay # [27645.810461] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:23.772209Z","level":"INFO","message":"deploy accepted","job":"e54ed59426c2ec51335fb6b227d9ef00","caller":"admin@example.org","targets":"[\"agent/app\", \"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27646.254618] agent systemd[1]: Reloading finished in 330 ms. agent # [27646.331556] agent systemd[1]: Reload requested from client PID 1348 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27646.331592] agent systemd[1]: Reloading... agent # [27646.648325] agent systemd[1]: Reloading finished in 316 ms. agent # [27646.719868] agent systemd[1]: Reload requested from client PID 1377 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27646.719911] agent systemd[1]: Reloading... agent # [27647.039961] agent systemd[1]: Reloading finished in 319 ms. agent # [27647.110693] agent systemd[1]: Reload requested from client PID 1408 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27647.110737] agent systemd[1]: Reloading... agent # [27647.429217] agent systemd[1]: Reloading finished in 318 ms. agent # [27647.500116] agent systemd[1]: Starting app broken... agent # [27647.538322] agent (nonexistent)[1442]: app.service: Unable to locate executable '/nonexistent': No such file or directory agent # [27647.538344] agent (nonexistent)[1442]: app.service: Failed at step EXEC spawning /nonexistent: No such file or directory agent # [27647.540201] agent systemd[1]: app.service: Main process exited, code=exited, status=203/EXEC agent # [27647.540300] agent systemd[1]: app.service: Failed with result 'exit-code'. agent # [27647.540540] agent systemd[1]: Failed to start app broken. agent # [27647.565289] agent systemd[1]: Reload requested from client PID 1448 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27647.565325] agent systemd[1]: Reloading... agent # [27647.885832] agent systemd[1]: Reloading finished in 320 ms. agent # [27647.950255] agent systemd[1]: Reload requested from client PID 1478 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27647.950290] agent systemd[1]: Reloading... agent # [27648.269990] agent systemd[1]: Reloading finished in 319 ms. agent # [27648.332810] agent systemd[1]: Reload requested from client PID 1508 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27648.332840] agent systemd[1]: Reloading... agent # [27648.651633] agent systemd[1]: Reloading finished in 318 ms. agent # [27648.720301] agent systemd[1]: Reload requested from client PID 1538 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27648.720334] agent systemd[1]: Reloading... agent # [27649.039534] agent systemd[1]: Reloading finished in 318 ms. agent # [27649.098527] agent systemd[1]: Starting app v1... agent # [27649.126997] agent systemd[1]: Started app v1. agent # [27649.127985] agent flakelet[1311]: app: deploy failed, rolled back: systemctl start app.service failed: agent # [27649.127985] agent flakelet[1311]: failed units: app.service. See journalctl -u app.service agent # [27649.129962] agent systemd[1]: flakelet-relay-job-app.service: Main process exited, code=exited, status=1/FAILURE agent # [27649.130065] agent systemd[1]: flakelet-relay-job-app.service: Failed with result 'exit-code'. client: (finished: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app --wave agent/other 2>&1, in 4.08 seconds) agent: must succeed: systemctl show app.service -p Description | grep -q 'app v1' agent: (finished: must succeed: systemctl show app.service -p Description | grep -q 'app v1', in 0.02 seconds) (finished: subtest: waves: failing first wave skips the second, in 4.12 seconds) subtest: host patterns expand on the relay agent: must succeed: jq '.services.app.prebuilt="/nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy '@all/app' 2>&1 relay # [27649.873264] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:27.834955Z","level":"INFO","message":"deploy finished","job":"e54ed59426c2ec51335fb6b227d9ef00","ok":false,"target":"flakelet_relay::relay::api"} relay # [27649.926590] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:27.888341Z","level":"INFO","message":"deploy accepted","job":"71081c8b416c35fb921579ddd77de351","caller":"admin@example.org","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27649.871526] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:27.833300Z","level":"INFO","message":"update finished","flakelet":"app","status":"RolledBack","generation":"Some(3)","target":"flakelet_relay::agent::jobs"} agent # [27649.926934] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:27.888669Z","level":"INFO","message":"start","id":"1a1e933c72840d5c89b6a14d62bc9f1b","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27649.927474] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:27.889291Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"1a1e933c72840d5c89b6a14d62bc9f1b\"]","target":"flakelet_relay::agent::jobs"} agent # [27649.957384] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27649.985941] agent systemd[1]: Started flakelet update app (via relay). agent # [27649.990763] agent flakelet[1598]: app: using prebuilt artifact /nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1 agent # [27649.991327] agent flakelet[1598]: app: up to date agent # [27649.992134] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy '@all/app' 2>&1, in 0.62 seconds) client: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy '*/app' 2>&1 agent # [27650.526352] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:28.488057Z","level":"INFO","message":"update finished","flakelet":"app","status":"Unchanged","generation":"Some(3)","target":"flakelet_relay::agent::jobs"} agent # [27650.552832] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:28.514595Z","level":"INFO","message":"start","id":"8ce2f3ebaedf49d89705fa9438e42335","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27650.553286] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:28.515103Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"8ce2f3ebaedf49d89705fa9438e42335\"]","target":"flakelet_relay::agent::jobs"} agent # [27650.587409] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27650.617041] agent systemd[1]: Started flakelet update app (via relay). agent # [27650.621484] agent flakelet[1618]: app: using prebuilt artifact /nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1 agent # [27650.622070] agent flakelet[1618]: app: up to date agent # [27650.624956] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. relay # [27650.528195] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:28.489927Z","level":"INFO","message":"deploy finished","job":"71081c8b416c35fb921579ddd77de351","ok":true,"target":"flakelet_relay::relay::api"} relay # [27650.552514] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:28.514284Z","level":"INFO","message":"deploy accepted","job":"ae2b165edba54e63375e0779d119dfc8","caller":"admin@example.org","targets":"[\"agent/app\", \"ghost/app\"]","target":"flakelet_relay::relay::api"} client: (finished: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy '*/app' 2>&1, in 0.64 seconds) client: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app --wave '*/app' 2>&1 relay # [27651.172202] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:29.133843Z","level":"INFO","message":"deploy finished","job":"ae2b165edba54e63375e0779d119dfc8","ok":false,"target":"flakelet_relay::relay::api"} relay # [27651.197064] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:29.158841Z","level":"INFO","message":"deploy accepted","job":"b414312d16485f18cdbaff56e7f9ec22","caller":"admin@example.org","targets":"[\"agent/app\", \"ghost/app\"]","target":"flakelet_relay::relay::api"} agent # [27651.170672] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:29.132409Z","level":"INFO","message":"update finished","flakelet":"app","status":"Unchanged","generation":"Some(3)","target":"flakelet_relay::agent::jobs"} agent # [27651.197343] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:29.159142Z","level":"INFO","message":"start","id":"356cf0ac3021276cc30f54bf4f4a8ec7","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27651.197808] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:29.159628Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"356cf0ac3021276cc30f54bf4f4a8ec7\"]","target":"flakelet_relay::agent::jobs"} agent # [27651.230481] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27651.263993] agent systemd[1]: Started flakelet update app (via relay). agent # [27651.268582] agent flakelet[1642]: app: using prebuilt artifact /nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1 agent # [27651.269153] agent flakelet[1642]: app: up to date agent # [27651.269846] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. client: (finished: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app --wave '*/app' 2>&1, in 0.63 seconds) client: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy '@all/nope' 2>&1 client: (finished: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy '@all/nope' 2>&1, in 0.02 seconds) (finished: subtest: host patterns expand on the relay, in 1.93 seconds) subtest: detach returns once the job is accepted agent: must succeed: jq '.services.app.prebuilt="/nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) client: must succeed: timeout 20 push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy --detach agent/app 2>&1 client: (finished: must succeed: timeout 20 push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy --detach agent/app 2>&1, in 0.02 seconds) agent: waiting for success: systemctl is-active flakelet-relay-job-app.service agent # [27651.800843] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:29.762576Z","level":"INFO","message":"update finished","flakelet":"app","status":"Unchanged","generation":"Some(3)","target":"flakelet_relay::agent::jobs"} agent # [27651.859156] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:29.820899Z","level":"INFO","message":"start","id":"58d41fa6333c96e60353fe4f6225f85d","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27651.859702] agent flakelet-agent[463]: {"timestamp":"2026-09-06T14:45:29.821520Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"58d41fa6333c96e60353fe4f6225f85d\"]","target":"flakelet_relay::agent::jobs"} agent # [27651.890371] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27651.917980] agent systemd[1]: Started flakelet update app (via relay). agent # [27651.922502] agent flakelet[1666]: app: using prebuilt artifact /nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2 agent # [27651.923206] agent flakelet[1666]: app: activating generation 4 agent # [27651.933572] agent systemd[1]: Stopping app v1... agent # [27651.934290] agent systemd[1]: app.service: Deactivated successfully. agent # [27651.934417] agent systemd[1]: Stopped app v1. agent # [27651.944895] agent systemd[1]: Reload requested from client PID 1673 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27651.944929] agent systemd[1]: Reloading... relay # [27651.802573] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:29.764307Z","level":"INFO","message":"deploy finished","job":"b414312d16485f18cdbaff56e7f9ec22","ok":false,"target":"flakelet_relay::relay::api"} relay # [27651.858743] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:29.820509Z","level":"INFO","message":"deploy accepted","job":"ae301e1e497b32575f91340c6a8ae4cc","caller":"admin@example.org","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27652.265560] agent systemd[1]: Reloading finished in 320 ms. agent # [27652.337932] agent systemd[1]: Reload requested from client PID 1703 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27652.337967] agent systemd[1]: Reloading... agent # [27652.660157] agent systemd[1]: Reloading finished in 321 ms. agent # [27652.724580] agent systemd[1]: Reload requested from client PID 1732 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27652.724622] agent systemd[1]: Reloading... agent # [27653.051023] agent systemd[1]: Reloading finished in 325 ms. agent: (finished: waiting for success: systemctl is-active flakelet-relay-job-app.service, in 1.26 seconds) ??? Warning (UserWarning): wait_until_fails(): passing a bare int/float as a duration is deprecated. Use datetime.timedelta instead. File "/nix/store/fv4yr9c0f9kyrfc00100i4rlshiiidbd-nixos-test-driver-1.1/lib/python3.14/site-packages/test_driver/duration.py", line 39 agent: waiting for failure: systemctl is-active flakelet-relay-job-app.service ??? Warning (UserWarning): execute(): passing a bare int/float as a duration is deprecated. Use datetime.timedelta instead. File "/nix/store/fv4yr9c0f9kyrfc00100i4rlshiiidbd-nixos-test-driver-1.1/lib/python3.14/site-packages/test_driver/duration.py", line 39 agent # [27653.124634] agent systemd[1]: Reload requested from client PID 1765 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27653.124676] agent systemd[1]: Reloading... agent # [27653.449312] agent systemd[1]: Reloading finished in 324 ms. agent # [27653.518812] agent systemd[1]: Starting app slow2... agent # [27659.586132] agent systemd[1]: Started app slow2. agent # [27659.596232] agent flakelet[1666]: app: updated to generation 4 agent # [27659.599372] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. agent: (finished: waiting for failure: systemctl is-active flakelet-relay-job-app.service, in 7.49 seconds) (finished: subtest: detach returns once the job is accepted, in 8.79 seconds) subtest: unknown host is final, missing agent is retried, agents listing client: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy nope/app 2>&1 client: (finished: must fail: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy nope/app 2>&1, in 0.02 seconds) agent: must succeed: systemctl stop flakelet-agent agent: (finished: must succeed: systemctl stop flakelet-agent, in 0.06 seconds) relay: waiting for success: curl -sf http://127.0.0.1:7400/metrics | grep -q 'agent_up{host="agent"} 0' relay: (finished: waiting for success: curl -sf http://127.0.0.1:7400/metrics | grep -q 'agent_up{host="agent"} 0', in 0.02 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/other > /tmp/retry.out 2>&1 & client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/other > /tmp/retry.out 2>&1 &, in 0.01 seconds) client: waiting for success: grep -q 'agent_unavailable.*retrying' /tmp/retry.out relay # [27660.646995] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:38.608766Z","level":"INFO","message":"agent disconnected: IO error: peer closed connection without sending TLS close_notify: https://docs.rs/rustls/latest/rustls/manual/_03_howto/index.html#unexpected-eof","host":"agent","target":"flakelet_relay::relay::agent_conn"} agent # [27660.647048] agent systemd[1]: Stopping flakelet-agent... agent # [27660.677692] agent systemd[1]: flakelet-agent.service: Deactivated successfully. agent # [27660.677981] agent systemd[1]: Stopped flakelet-agent. agent # [27660.678375] agent systemd[1]: flakelet-agent.service: Consumed 2.140s CPU time over 27.573s wall clock time. client: (finished: waiting for success: grep -q 'agent_unavailable.*retrying' /tmp/retry.out, in 1.02 seconds) agent: must succeed: systemctl start flakelet-agent agent: (finished: must succeed: systemctl start flakelet-agent, in 0.11 seconds) ??? Warning (UserWarning): wait_until_succeeds(): passing a bare int/float as a duration is deprecated. Use datetime.timedelta instead. File "/nix/store/fv4yr9c0f9kyrfc00100i4rlshiiidbd-nixos-test-driver-1.1/lib/python3.14/site-packages/test_driver/duration.py", line 39 client: waiting for success: grep -q 'agent/other: unchanged' /tmp/retry.out agent # [27661.754440] agent systemd[1]: Starting flakelet-agent... agent # [27661.817695] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:39.779481Z","level":"INFO","message":"reattaching to running unit","flakelet":"app","ids":"[\"58d41fa6333c96e60353fe4f6225f85d\"]","target":"flakelet_relay::agent::jobs"} agent # [27661.843984] agent systemd[1]: Started flakelet-agent. agent # [27661.854011] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:39.815809Z","level":"INFO","message":"connected","relay":"https://relay:7443","relay_name":"relay","relay_version":"0.1.0","host":"agent","target":"flakelet_relay::agent::conn"} relay # [27661.854072] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:39.815825Z","level":"INFO","message":"agent connected","host":"agent","version":"0.1.0","flakelets":"[Named { name: \"app\", generation: Some(4), revision: Some(\"prebuilt:app\") }, Named { name: \"flakelet-agent\", generation: Some(1), revision: Some(\"prebuilt:flakelet-agent\") }, Named { name: \"other\", generation: Some(1), revision: Some(\"prebuilt:other\") }]","target":"flakelet_relay::relay::agent_conn"} agent # [27662.365492] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:40.327223Z","level":"INFO","message":"update finished","flakelet":"app","status":"Updated","generation":"Some(4)","target":"flakelet_relay::agent::jobs"} agent # [27663.738239] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:41.699964Z","level":"INFO","message":"start","id":"62d74c83fad0dab8ae673e5c58b733b5","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27663.738807] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:41.700631Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"62d74c83fad0dab8ae673e5c58b733b5\"]","target":"flakelet_relay::agent::jobs"} agent # [27663.782425] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27663.815056] agent systemd[1]: Started flakelet update other (via relay). agent # [27663.819481] agent flakelet[2247]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27663.820032] agent flakelet[2247]: other: up to date agent # [27663.822810] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. relay # [27663.737737] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:41.699462Z","level":"INFO","message":"deploy accepted","job":"ed49c0313cb5f0594eac8b87e92137b4","caller":"admin@example.org","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27664.364451] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:42.326194Z","level":"INFO","message":"update finished","flakelet":"other","status":"Unchanged","generation":"Some(1)","target":"flakelet_relay::agent::jobs"} relay # [27664.365850] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:42.327581Z","level":"INFO","message":"deploy finished","job":"ed49c0313cb5f0594eac8b87e92137b4","ok":true,"target":"flakelet_relay::relay::api"} client: (finished: waiting for success: grep -q 'agent/other: unchanged' /tmp/retry.out, in 3.04 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem agents client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem agents, in 0.02 seconds) client: must succeed: echo '{"groups": []}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'repo:github:example/app:ref:refs/heads/main' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32) client: (finished: must succeed: echo '{"groups": []}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'repo:github:example/app:ref:refs/heads/main' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32), in 0.06 seconds) client: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjI0MiwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTQyLCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJJUkkzT1ZTWEtJSExRPT09IiwibmJmIjoxNzg4NzA1OTQyLCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.kIwgta4x3EGRPGbiTmK5UA_hN9GlZ2lJyaKbEo6drmmyLgiqXKD7KKlDFevrDkr_f0fY8TEwtvAi3fM42rhrAQ' push --relay https://relay:7443 agents client: (finished: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjI0MiwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTQyLCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJJUkkzT1ZTWEtJSExRPT09IiwibmJmIjoxNzg4NzA1OTQyLCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.kIwgta4x3EGRPGbiTmK5UA_hN9GlZ2lJyaKbEo6drmmyLgiqXKD7KKlDFevrDkr_f0fY8TEwtvAi3fM42rhrAQ' push --relay https://relay:7443 agents, in 0.02 seconds) (finished: subtest: unknown host is final, missing agent is retried, agents listing, in 4.37 seconds) subtest: out-of-band flakelet update reaches the relay without reconnect agent: must succeed: flakelet status --json app | jq '.[0].generation' agent: (finished: must succeed: flakelet status --json app | jq '.[0].generation', in 0.03 seconds) agent: must succeed: journalctl -u flakelet-agent -o cat | grep -c '"connected"' || true agent: (finished: must succeed: journalctl -u flakelet-agent -o cat | grep -c '"connected"' || true, in 0.01 seconds) agent: must succeed: jq '.services.app.prebuilt="/nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) agent: must succeed: flakelet update app app: using prebuilt artifact /nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2 app: activating generation 5 agent # [27665.068360] agent systemd[1]: Stopping app slow2... agent # [27665.068868] agent systemd[1]: app.service: Deactivated successfully. agent # [27665.069147] agent systemd[1]: Stopped app slow2. agent # [27665.085428] agent systemd[1]: Reload requested from client PID 2281 ('systemctl')... agent # [27665.085498] agent systemd[1]: Reloading... agent # [27665.425043] agent systemd[1]: Reloading finished in 338 ms. agent # [27665.499346] agent systemd[1]: Reload requested from client PID 2310 ('systemctl')... agent # [27665.499389] agent systemd[1]: Reloading... agent # [27665.821023] agent systemd[1]: Reloading finished in 321 ms. agent # [27665.905845] agent systemd[1]: Reload requested from client PID 2341 ('systemctl')... agent # [27665.905885] agent systemd[1]: Reloading... agent # [27666.230723] agent systemd[1]: Reloading finished in 324 ms. agent # [27666.301407] agent systemd[1]: Reload requested from client PID 2371 ('systemctl')... agent # [27666.301447] agent systemd[1]: Reloading... agent: (finished: must succeed: flakelet update app, in 1.68 seconds) client: waiting for success: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem agents | grep -q 'app@5' agent # [27666.624584] agent systemd[1]: Reloading finished in 322 ms. agent # [27666.685997] agent systemd[1]: Starting app v2... agent # [27666.710017] agent systemd[1]: Started app v2. agent # [27667.869274] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:45.831015Z","level":"INFO","message":"local change","flakelet":"app","generation":5,"by":"root (shell)","target":"flakelet_relay::agent::jobs"} client: (finished: waiting for success: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem agents | grep -q 'app@5', in 2.07 seconds) agent: must succeed: journalctl -u flakelet-agent -o cat | grep -c '"connected"' || true agent: (finished: must succeed: journalctl -u flakelet-agent -o cat | grep -c '"connected"' || true, in 0.01 seconds) client: waiting for success: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem jobs | grep local-app-5- client: (finished: waiting for success: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem jobs | grep local-app-5-, in 0.02 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem jobs | grep local-app- client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem jobs | grep local-app-, in 0.02 seconds) agent: must succeed: jq '.services.app.prebuilt="/nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) agent: must succeed: flakelet update app app: using prebuilt artifact /nix/store/hysydfr96ds875vr0jgw5rjxi4p39h2j-flakelet-app-v1 app: activating generation 6 agent # [27668.884832] agent systemd[1]: Stopping app v2... agent # [27668.885320] agent systemd[1]: app.service: Deactivated successfully. agent # [27668.885585] agent systemd[1]: Stopped app v2. agent # [27668.904770] agent systemd[1]: Reload requested from client PID 2417 ('systemctl')... agent # [27668.904841] agent systemd[1]: Reloading... agent # [27669.249549] agent systemd[1]: Reloading finished in 343 ms. agent # [27669.321847] agent systemd[1]: Reload requested from client PID 2446 ('systemctl')... agent # [27669.321888] agent systemd[1]: Reloading... agent # [27669.645027] agent systemd[1]: Reloading finished in 322 ms. agent # [27669.710292] agent systemd[1]: Reload requested from client PID 2474 ('systemctl')... agent # [27669.710332] agent systemd[1]: Reloading... agent # [27670.033196] agent systemd[1]: Reloading finished in 322 ms. agent # [27670.097901] agent systemd[1]: Reload requested from client PID 2506 ('systemctl')... agent # [27670.097940] agent systemd[1]: Reloading... agent: (finished: must succeed: flakelet update app, in 1.68 seconds) client: waiting for success: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem agents | grep -q 'app@6' agent # [27670.421042] agent systemd[1]: Reloading finished in 322 ms. agent # [27670.491273] agent systemd[1]: Starting app v1... agent # [27670.528094] agent systemd[1]: Started app v1. agent # [27671.868365] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:49.830107Z","level":"INFO","message":"local change","flakelet":"app","generation":6,"by":"root (shell)","target":"flakelet_relay::agent::jobs"} client: (finished: waiting for success: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem agents | grep -q 'app@6', in 2.07 seconds) (finished: subtest: out-of-band flakelet update reaches the relay without reconnect, in 7.62 seconds) subtest: certificate not listed under agents cannot connect as agent client: must succeed: curl -s -o /dev/null -w '%{http_code}' --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/mallory/cert.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/mallory/key.pem -H 'Upgrade: websocket' -H 'Connection: Upgrade' -H 'Sec-WebSocket-Version: 13' -H 'Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==' https://relay:7443/v1/agent client: (finished: must succeed: curl -s -o /dev/null -w '%{http_code}' --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/mallory/cert.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/mallory/key.pem -H 'Upgrade: websocket' -H 'Connection: Upgrade' -H 'Sec-WebSocket-Version: 13' -H 'Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==' https://relay:7443/v1/agent, in 0.03 seconds) (finished: subtest: certificate not listed under agents cannot connect as agent, in 0.03 seconds) subtest: metrics relay: must succeed: curl -sf http://127.0.0.1:7400/metrics relay: (finished: must succeed: curl -sf http://127.0.0.1:7400/metrics, in 0.02 seconds) (finished: subtest: metrics, in 0.02 seconds) subtest: agent link drop mid-run replays missed lines once agent: must succeed: jq '.services.app.prebuilt="/nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) agent: must succeed: date +%s agent: (finished: must succeed: date +%s, in 0.01 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app > /tmp/slow.out 2>&1 & client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app > /tmp/slow.out 2>&1 &, in 0.01 seconds) agent: waiting for success: journalctl -u flakelet-relay-job-app.service --since=@1788705950 | grep -q 'app-slow' relay # [27672.630876] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:50.592619Z","level":"INFO","message":"agent rejected: no agents entry matches","principals":"[\"x509:dns:mallory\"]","target":"flakelet_relay::relay::agent_conn"} relay # [27672.692975] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:50.654727Z","level":"INFO","message":"deploy accepted","job":"d92dc4cf49b7e4fb61858e890649094f","caller":"admin@example.org","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27672.693422] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:50.655175Z","level":"INFO","message":"start","id":"2996dfc9c2327f3b3ab2d05cf925e668","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27672.693930] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:50.655753Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"2996dfc9c2327f3b3ab2d05cf925e668\"]","target":"flakelet_relay::agent::jobs"} agent # [27672.733991] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27672.769129] agent systemd[1]: Started flakelet update app (via relay). agent # [27672.773638] agent flakelet[2556]: app: using prebuilt artifact /nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow agent # [27672.774291] agent flakelet[2556]: app: activating generation 7 agent # [27672.791587] agent systemd[1]: Stopping app v1... agent # [27672.792091] agent systemd[1]: app.service: Deactivated successfully. agent # [27672.792351] agent systemd[1]: Stopped app v1. agent # [27672.812494] agent systemd[1]: Reload requested from client PID 2563 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27672.812562] agent systemd[1]: Reloading... agent # [27673.148863] agent systemd[1]: Reloading finished in 335 ms. agent # [27673.216373] agent systemd[1]: Reload requested from client PID 2593 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27673.216414] agent systemd[1]: Reloading... agent # [27673.535257] agent systemd[1]: Reloading finished in 318 ms. agent: (finished: waiting for success: journalctl -u flakelet-relay-job-app.service --since=@1788705950 | grep -q 'app-slow', in 1.03 seconds) agent: must succeed: for a in $(getent ahosts relay | cut -d' ' -f1 | sort -u); do ip route add unreachable $a; done agent: (finished: must succeed: for a in $(getent ahosts relay | cut -d' ' -f1 | sort -u); do ip route add unreachable $a; done, in 0.02 seconds) relay: must succeed: for a in $(getent ahosts agent | cut -d' ' -f1 | sort -u); do ss -K dst "[$a]"; done relay: (finished: must succeed: for a in $(getent ahosts agent | cut -d' ' -f1 | sort -u); do ss -K dst "[$a]"; done, in 0.06 seconds) agent: must succeed: ss -K dport = 7443 agent # [27673.597818] agent systemd[1]: Reload requested from client PID 2622 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27673.597860] agent systemd[1]: Reloading... agent: (finished: must succeed: ss -K dport = 7443, in 0.03 seconds) agent: waiting for success: journalctl -u flakelet-relay-job-app.service --since=@1788705950 | grep -q 'updated to generation' agent # [27673.812785] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:51.774347Z","level":"INFO","message":"disconnected: IO error: Software caused connection abort (os error 103)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} agent # [27673.921418] agent systemd[1]: Reloading finished in 323 ms. agent # [27673.987745] agent systemd[1]: Reload requested from client PID 2670 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27673.987785] agent systemd[1]: Reloading... relay # [27673.779331] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:45:51.741062Z","level":"INFO","message":"agent disconnected: IO error: Software caused connection abort (os error 103)","host":"agent","target":"flakelet_relay::relay::agent_conn"} agent # [27674.312058] agent systemd[1]: Reloading finished in 323 ms. agent # [27674.384724] agent systemd[1]: Starting app slow... agent # [27674.816090] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:52.777869Z","level":"WARN","message":"connect failed: connect relay:7443: No route to host (os error 113)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} agent # [27676.818511] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:54.780254Z","level":"WARN","message":"connect failed: connect relay:7443: No route to host (os error 113)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} agent # [27680.460140] agent systemd[1]: Started app slow. agent # [27680.469584] agent flakelet[2556]: app: updated to generation 7 agent # [27680.472722] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. agent: (finished: waiting for success: journalctl -u flakelet-relay-job-app.service --since=@1788705950 | grep -q 'updated to generation', in 7.11 seconds) agent: must succeed: for a in $(getent ahosts relay | cut -d' ' -f1 | sort -u); do ip route del unreachable $a; done agent: (finished: must succeed: for a in $(getent ahosts relay | cut -d' ' -f1 | sort -u); do ip route del unreachable $a; done, in 0.02 seconds) client: waiting for success: grep -q 'agent/app: updated' /tmp/slow.out agent # [27680.822081] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:58.783667Z","level":"WARN","message":"connect failed: connect relay:7443: No route to host (os error 113)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} agent # [27681.574048] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:45:59.535790Z","level":"INFO","message":"update finished","flakelet":"app","status":"Updated","generation":"Some(7)","target":"flakelet_relay::agent::jobs"} client: (finished: waiting for success: grep -q 'agent/app: updated' /tmp/slow.out, in 8.09 seconds) client: must succeed: cat /tmp/slow.out client: (finished: must succeed: cat /tmp/slow.out, in 0.01 seconds) (finished: subtest: agent link drop mid-run replays missed lines once, in 16.39 seconds) subtest: agent restart mid-run reattaches to the unit agent: must succeed: jq '.services.app.prebuilt="/nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app > /tmp/restart.out 2>&1 & client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app > /tmp/restart.out 2>&1 &, in 0.01 seconds) agent: waiting for success: journalctl -u flakelet-relay-job-app.service --since -20s | grep -q 'app-slow2' relay # [27688.826887] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:06.788606Z","level":"INFO","message":"agent connected","host":"agent","version":"0.1.0","flakelets":"[Named { name: \"app\", generation: Some(7), revision: Some(\"prebuilt:app\") }, Named { name: \"flakelet-agent\", generation: Some(1), revision: Some(\"prebuilt:flakelet-agent\") }, Named { name: \"other\", generation: Some(1), revision: Some(\"prebuilt:other\") }]","target":"flakelet_relay::relay::agent_conn"} relay # [27688.828523] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:06.790321Z","level":"INFO","message":"deploy finished","job":"d92dc4cf49b7e4fb61858e890649094f","ok":true,"target":"flakelet_relay::relay::api"} agent # [27688.826758] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:46:06.788494Z","level":"INFO","message":"connected","relay":"https://relay:7443","relay_name":"relay","relay_version":"0.1.0","host":"agent","target":"flakelet_relay::agent::conn"} relay # [27689.078307] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:07.039937Z","level":"INFO","message":"deploy accepted","job":"d7f87318e9b6750d0069228ddf27fc8e","caller":"admin@example.org","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27688.827988] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:46:06.789804Z","level":"INFO","message":"start","id":"2996dfc9c2327f3b3ab2d05cf925e668","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27689.078750] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:46:07.040370Z","level":"INFO","message":"start","id":"493751a951edf2810d99fad65760493c","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27689.079358] agent flakelet-agent[1834]: {"timestamp":"2026-09-06T14:46:07.041174Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"493751a951edf2810d99fad65760493c\"]","target":"flakelet_relay::agent::jobs"} agent # [27689.119152] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27689.152123] agent systemd[1]: Started flakelet update app (via relay). agent # [27689.156886] agent flakelet[2792]: app: using prebuilt artifact /nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2 agent # [27689.157594] agent flakelet[2792]: app: activating generation 8 agent # [27689.175989] agent systemd[1]: Stopping app slow... agent # [27689.177813] agent systemd[1]: app.service: Deactivated successfully. agent # [27689.178151] agent systemd[1]: Stopped app slow. agent # [27689.193349] agent systemd[1]: Reload requested from client PID 2799 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27689.193420] agent systemd[1]: Reloading... agent # [27689.525641] agent systemd[1]: Reloading finished in 331 ms. agent # [27689.597708] agent systemd[1]: Reload requested from client PID 2829 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27689.597750] agent systemd[1]: Reloading... agent: (finished: waiting for success: journalctl -u flakelet-relay-job-app.service --since -20s | grep -q 'app-slow2', in 1.03 seconds) agent: must succeed: systemctl restart flakelet-agent agent # [27689.921729] agent systemd[1]: Reloading finished in 323 ms. agent # [27689.984577] agent systemd[1]: Reload requested from client PID 2861 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27689.984620] agent systemd[1]: Reloading... agent # [27690.305607] agent systemd[1]: Reloading finished in 320 ms. agent # [27690.373493] agent systemd[1]: Stopping flakelet-agent... agent # [27690.379071] agent systemd[1]: Reload requested from client PID 2897 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27690.379117] agent systemd[1]: Reloading... relay # [27690.373748] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:08.335482Z","level":"INFO","message":"agent disconnected: IO error: peer closed connection without sending TLS close_notify: https://docs.rs/rustls/latest/rustls/manual/_03_howto/index.html#unexpected-eof","host":"agent","target":"flakelet_relay::relay::agent_conn"} agent: (finished: must succeed: systemctl restart flakelet-agent, in 0.77 seconds) agent: must succeed: test -n "$(ls /var/lib/flakelet-agent/jobs)" agent: (finished: must succeed: test -n "$(ls /var/lib/flakelet-agent/jobs)", in 0.01 seconds) client: waiting for success: grep -q 'agent/app: updated' /tmp/restart.out agent # [27690.709614] agent systemd[1]: Reloading finished in 330 ms. agent # [27690.765429] agent systemd[1]: flakelet-agent.service: Deactivated successfully. agent # [27690.765631] agent systemd[1]: Stopped flakelet-agent. agent # [27690.765646] agent systemd[1]: flakelet-agent.service: Consumed 1.975s CPU time over 29.011s wall clock time. agent # [27690.783815] agent systemd[1]: Starting app slow2... agent # [27690.784911] agent systemd[1]: Starting flakelet-agent... agent # [27690.846628] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:08.808416Z","level":"INFO","message":"reattaching to running unit","flakelet":"app","ids":"[\"493751a951edf2810d99fad65760493c\"]","target":"flakelet_relay::agent::jobs"} agent # [27690.863591] agent systemd[1]: Started flakelet-agent. agent # [27690.873895] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:08.835707Z","level":"INFO","message":"connected","relay":"https://relay:7443","relay_name":"relay","relay_version":"0.1.0","host":"agent","target":"flakelet_relay::agent::conn"} agent # [27690.875179] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:08.837011Z","level":"INFO","message":"start","id":"493751a951edf2810d99fad65760493c","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} relay # [27690.874126] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:08.835828Z","level":"INFO","message":"agent connected","host":"agent","version":"0.1.0","flakelets":"[Named { name: \"app\", generation: Some(7), revision: Some(\"prebuilt:app\") }, Named { name: \"flakelet-agent\", generation: Some(1), revision: Some(\"prebuilt:flakelet-agent\") }, Named { name: \"other\", generation: Some(1), revision: Some(\"prebuilt:other\") }]","target":"flakelet_relay::relay::agent_conn"} agent # [27696.858044] agent systemd[1]: Started app slow2. agent # [27696.867226] agent flakelet[2792]: app: updated to generation 8 agent # [27696.870538] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. relay # [27697.428608] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:15.390327Z","level":"INFO","message":"deploy finished","job":"d7f87318e9b6750d0069228ddf27fc8e","ok":true,"target":"flakelet_relay::relay::api"} agent # [27697.426802] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:15.388511Z","level":"INFO","message":"update finished","flakelet":"app","status":"Updated","generation":"Some(8)","target":"flakelet_relay::agent::jobs"} client: (finished: waiting for success: grep -q 'agent/app: updated' /tmp/restart.out, in 7.09 seconds) client: must succeed: cat /tmp/restart.out client: (finished: must succeed: cat /tmp/restart.out, in 0.01 seconds) agent: must succeed: systemctl is-active app.service agent: (finished: must succeed: systemctl is-active app.service, in 0.01 seconds) (finished: subtest: agent restart mid-run reattaches to the unit, in 8.94 seconds) subtest: relay restart mid-run, push resumes via /v1/jobs agent: must succeed: jq '.services.app.prebuilt="/nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json agent: (finished: must succeed: jq '.services.app.prebuilt="/nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow"' /etc/flakelet/config.json > /tmp/config.json && cp --remove-destination /tmp/config.json /etc/flakelet/config.json, in 0.01 seconds) agent: must succeed: date +%s agent: (finished: must succeed: date +%s, in 0.01 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app > /tmp/resume.out 2>&1 & client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy agent/app > /tmp/resume.out 2>&1 &, in 0.01 seconds) agent: waiting for success: journalctl -u flakelet-relay-job-app.service --since=@1788705975 | grep -q 'app-slow' agent # [27698.031787] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:15.993568Z","level":"INFO","message":"start","id":"391bb0e7768af5047ed0ac6215bdef88","flakelet":"app","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27698.032496] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:15.994319Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"391bb0e7768af5047ed0ac6215bdef88\"]","target":"flakelet_relay::agent::jobs"} agent # [27698.069954] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27698.099188] agent systemd[1]: Started flakelet update app (via relay). agent # [27698.103944] agent flakelet[3374]: app: using prebuilt artifact /nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow agent # [27698.104584] agent flakelet[3374]: app: activating generation 9 agent # [27698.122198] agent systemd[1]: Stopping app slow2... agent # [27698.122655] agent systemd[1]: app.service: Deactivated successfully. agent # [27698.122914] agent systemd[1]: Stopped app slow2. agent # [27698.139581] agent systemd[1]: Reload requested from client PID 3381 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27698.139651] agent systemd[1]: Reloading... relay # [27698.031384] relay flakelet-relay[400]: {"timestamp":"2026-09-06T14:46:15.993109Z","level":"INFO","message":"deploy accepted","job":"2f704c90a1610c283a0d64e108af9eb5","caller":"admin@example.org","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27698.479401] agent systemd[1]: Reloading finished in 339 ms. agent # [27698.560049] agent systemd[1]: Reload requested from client PID 3411 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27698.560092] agent systemd[1]: Reloading... agent: (finished: waiting for success: journalctl -u flakelet-relay-job-app.service --since=@1788705975 | grep -q 'app-slow', in 1.03 seconds) relay: must succeed: systemctl restart flakelet-relay agent # [27698.884953] agent systemd[1]: Reloading finished in 324 ms. agent # [27698.959962] agent systemd[1]: Reload requested from client PID 3442 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27698.960006] agent systemd[1]: Reloading... agent # [27699.057516] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:17.019262Z","level":"INFO","message":"disconnected: IO error: peer closed connection without sending TLS close_notify: https://docs.rs/rustls/latest/rustls/manual/_03_howto/index.html#unexpected-eof","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} relay # [27699.057294] relay systemd[1]: Stopping flakelet-relay... relay # [27699.090531] relay systemd[1]: flakelet-relay.service: Deactivated successfully. relay # [27699.090971] relay systemd[1]: Stopped flakelet-relay. relay # [27699.091029] relay systemd[1]: flakelet-relay.service: Consumed 3.116s CPU time over 1min 7.330s wall clock time. relay # [27699.127123] relay systemd[1]: Starting flakelet-relay... agent # [27699.289772] agent systemd[1]: Reloading finished in 329 ms. agent # [27699.377128] agent systemd[1]: Reload requested from client PID 3478 ('systemctl') (unit flakelet-relay-job-app.service)... agent # [27699.377168] agent systemd[1]: Reloading... agent # [27699.703058] agent systemd[1]: Reloading finished in 325 ms. agent # [27699.784898] agent systemd[1]: Starting app slow... agent # [27700.059814] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:18.021382Z","level":"WARN","message":"connect failed: connect relay:7443: Connection refused (os error 111)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} relay: (finished: must succeed: systemctl restart flakelet-relay, in 1.50 seconds) client: waiting for success: grep -q '» ok' /tmp/resume.out relay # [27700.541321] relay flakelet-relay[930]: {"timestamp":"2026-09-06T14:46:18.503075Z","level":"INFO","message":"listening on 127.0.0.1:7400","target":"flakelet_relay::relay::server"} relay # [27700.542177] relay flakelet-relay[930]: {"timestamp":"2026-09-06T14:46:18.503458Z","level":"INFO","message":"listening on [::]:7443","target":"flakelet_relay::relay::server"} relay # [27700.541885] relay systemd[1]: Started flakelet-relay. agent # [27702.070987] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:20.032706Z","level":"INFO","message":"connected","relay":"https://relay:7443","relay_name":"relay","relay_version":"0.1.0","host":"agent","target":"flakelet_relay::agent::conn"} relay # [27702.070999] relay flakelet-relay[930]: {"timestamp":"2026-09-06T14:46:20.032760Z","level":"INFO","message":"agent connected","host":"agent","version":"0.1.0","flakelets":"[Named { name: \"app\", generation: Some(8), revision: Some(\"prebuilt:app\") }, Named { name: \"flakelet-agent\", generation: Some(1), revision: Some(\"prebuilt:flakelet-agent\") }, Named { name: \"other\", generation: Some(1), revision: Some(\"prebuilt:other\") }]","target":"flakelet_relay::relay::agent_conn"} relay # [27702.079155] relay flakelet-relay[930]: {"timestamp":"2026-09-06T14:46:20.040923Z","level":"INFO","message":"job reattached","job":"2f704c90a1610c283a0d64e108af9eb5","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27705.852072] agent systemd[1]: Started app slow. agent # [27705.860956] agent flakelet[3374]: app: updated to generation 9 agent # [27705.864369] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. agent # [27706.958721] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:24.920413Z","level":"INFO","message":"update finished","flakelet":"app","status":"Updated","generation":"Some(9)","target":"flakelet_relay::agent::jobs"} client: (finished: waiting for success: grep -q '» ok' /tmp/resume.out, in 7.08 seconds) client: must succeed: cat /tmp/resume.out client: (finished: must succeed: cat /tmp/resume.out, in 0.01 seconds) (finished: subtest: relay restart mid-run, push resumes via /v1/jobs, in 9.65 seconds) subtest: job history comes from the agents and survives a relay restart client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy --id hist1 agent/other 2>&1 relay # [27707.659725] relay flakelet-relay[930]: {"timestamp":"2026-09-06T14:46:25.621470Z","level":"INFO","message":"deploy accepted","job":"188b06c4636b65849b3ba8daac22dc7c","caller":"admin@example.org","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27707.660246] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:25.621980Z","level":"INFO","message":"start","id":"5be20c693e5c0b60e3f85779794dfb86","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27707.660865] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:25.622682Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"5be20c693e5c0b60e3f85779794dfb86\"]","target":"flakelet_relay::agent::jobs"} agent # [27707.701996] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27707.737177] agent systemd[1]: Started flakelet update other (via relay). agent # [27707.742540] agent flakelet[3552]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27707.743241] agent flakelet[3552]: other: up to date agent # [27707.744558] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy --id hist1 agent/other 2>&1, in 0.65 seconds) relay: must succeed: systemctl restart flakelet-relay agent # [27708.282166] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:26.243895Z","level":"INFO","message":"update finished","flakelet":"other","status":"Unchanged","generation":"Some(1)","target":"flakelet_relay::agent::jobs"} agent # [27708.300642] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:26.262439Z","level":"INFO","message":"disconnected: IO error: peer closed connection without sending TLS close_notify: https://docs.rs/rustls/latest/rustls/manual/_03_howto/index.html#unexpected-eof","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} relay # [27708.283537] relay flakelet-relay[930]: {"timestamp":"2026-09-06T14:46:26.245263Z","level":"INFO","message":"deploy finished","job":"188b06c4636b65849b3ba8daac22dc7c","ok":true,"target":"flakelet_relay::relay::api"} relay # [27708.300368] relay systemd[1]: Stopping flakelet-relay... relay # [27708.335101] relay systemd[1]: flakelet-relay.service: Deactivated successfully. relay # [27708.335596] relay systemd[1]: Stopped flakelet-relay. relay # [27708.335634] relay systemd[1]: flakelet-relay.service: Consumed 2.995s CPU time over 9.208s wall clock time. relay # [27708.372120] relay systemd[1]: Starting flakelet-relay... agent # [27709.303819] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:27.265546Z","level":"WARN","message":"connect failed: connect relay:7443: Connection refused (os error 111)","relay":"https://relay:7443","target":"flakelet_relay::agent::conn"} relay: (finished: must succeed: systemctl restart flakelet-relay, in 1.49 seconds) relay: waiting for success: curl -sf http://127.0.0.1:7400/metrics | grep -q 'agent_up{host="agent"} 1' relay # [27709.773744] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:27.735514Z","level":"INFO","message":"listening on 127.0.0.1:7400","target":"flakelet_relay::relay::server"} relay # [27709.774674] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:27.736017Z","level":"INFO","message":"listening on [::]:7443","target":"flakelet_relay::relay::server"} relay # [27709.774202] relay systemd[1]: Started flakelet-relay. agent # [27711.318458] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:29.280193Z","level":"INFO","message":"connected","relay":"https://relay:7443","relay_name":"relay","relay_version":"0.1.0","host":"agent","target":"flakelet_relay::agent::conn"} relay # [27711.318603] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:29.280329Z","level":"INFO","message":"agent connected","host":"agent","version":"0.1.0","flakelets":"[Named { name: \"app\", generation: Some(9), revision: Some(\"prebuilt:app\") }, Named { name: \"flakelet-agent\", generation: Some(1), revision: Some(\"prebuilt:flakelet-agent\") }, Named { name: \"other\", generation: Some(1), revision: Some(\"prebuilt:other\") }]","target":"flakelet_relay::relay::agent_conn"} relay: (finished: waiting for success: curl -sf http://127.0.0.1:7400/metrics | grep -q 'agent_up{host="agent"} 1', in 2.06 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem jobs client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem jobs, in 0.02 seconds) client: must succeed: echo '{"groups": [], "repository": "example/app"}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'repo:github:example/app:ref:refs/heads/main' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32) client: (finished: must succeed: echo '{"groups": [], "repository": "example/app"}' | step crypto jwt sign --key /nix/store/r7sclamg09v434w8zjlfnrcrn1w79wh6-flakelet-relay-test-issuer/jwk.json --iss https://relay:8443 --aud flakelet-relay --sub 'repo:github:example/app:ref:refs/heads/main' --exp $(( $(date +%s) + 300 )) --jti $(head -c8 /dev/urandom | base32), in 0.06 seconds) client: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjI4OSwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTg5LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJVQ0IzR0tGSFlJQVlFPT09IiwibmJmIjoxNzg4NzA1OTg5LCJyZXBvc2l0b3J5IjoiZXhhbXBsZS9hcHAiLCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.ATo7O4NKpybV2Ad-tMt3fN-WkOLDm8wqpKU1O6Bofhi-sJQkk1aiiELkqQxlO0Ozllly3Ktr7Au0b4dGEP3IAw' push --relay https://relay:7443 deploy --id hist2 agent/app » job 6a239dbf87cfec796e49404c351d787f via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | Starting flakelet update app (via relay)... agent/app | Started flakelet update app (via relay). agent/app | app: using prebuilt artifact /nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow agent/app | app: up to date relay # [27711.933732] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:29.895494Z","level":"INFO","message":"deploy accepted","job":"6a239dbf87cfec796e49404c351d787f","caller":"example/app","targets":"[\"agent/app\"]","target":"flakelet_relay::relay::api"} agent # [27711.934237] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:29.896013Z","level":"INFO","message":"start","id":"dce6faec8455f85321e72ee634888126","flakelet":"app","rule":"ci","relay":"relay","caller_name":"\"example/app\"","target":"flakelet_relay::agent::conn"} agent # [27711.934754] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:29.896574Z","level":"INFO","message":"update starting","flakelet":"app","ids":"[\"dce6faec8455f85321e72ee634888126\"]","target":"flakelet_relay::agent::jobs"} agent # [27711.973444] agent systemd[1]: Starting flakelet update app (via relay)... agent # [27712.000028] agent systemd[1]: Started flakelet update app (via relay). agent # [27712.003756] agent flakelet[3580]: app: using prebuilt artifact /nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow agent # [27712.004288] agent flakelet[3580]: app: up to date agent # [27712.007665] agent systemd[1]: flakelet-relay-job-app.service: Deactivated successfully. agent/app | flakelet-relay-job-app.service: Deactivated successfully. » agent/app: unchanged (generation 9) » ok client: (finished: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjI4OSwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTg5LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJVQ0IzR0tGSFlJQVlFPT09IiwibmJmIjoxNzg4NzA1OTg5LCJyZXBvc2l0b3J5IjoiZXhhbXBsZS9hcHAiLCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.ATo7O4NKpybV2Ad-tMt3fN-WkOLDm8wqpKU1O6Bofhi-sJQkk1aiiELkqQxlO0Ozllly3Ktr7Au0b4dGEP3IAw' push --relay https://relay:7443 deploy --id hist2 agent/app, in 0.63 seconds) client: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjI4OSwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTg5LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJVQ0IzR0tGSFlJQVlFPT09IiwibmJmIjoxNzg4NzA1OTg5LCJyZXBvc2l0b3J5IjoiZXhhbXBsZS9hcHAiLCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.ATo7O4NKpybV2Ad-tMt3fN-WkOLDm8wqpKU1O6Bofhi-sJQkk1aiiELkqQxlO0Ozllly3Ktr7Au0b4dGEP3IAw' push --relay https://relay:7443 jobs client: (finished: must succeed: FLAKELET_RELAY_TOKEN_COMMAND='echo eyJhbGciOiJFZERTQSIsImtpZCI6ImsxIiwidHlwIjoiSldUIn0.eyJhdWQiOiJmbGFrZWxldC1yZWxheSIsImV4cCI6MTc4ODcwNjI4OSwiZ3JvdXBzIjpbXSwiaWF0IjoxNzg4NzA1OTg5LCJpc3MiOiJodHRwczovL3JlbGF5Ojg0NDMiLCJqdGkiOiJVQ0IzR0tGSFlJQVlFPT09IiwibmJmIjoxNzg4NzA1OTg5LCJyZXBvc2l0b3J5IjoiZXhhbXBsZS9hcHAiLCJzdWIiOiJyZXBvOmdpdGh1YjpleGFtcGxlL2FwcDpyZWY6cmVmcy9oZWFkcy9tYWluIn0.ATo7O4NKpybV2Ad-tMt3fN-WkOLDm8wqpKU1O6Bofhi-sJQkk1aiiELkqQxlO0Ozllly3Ktr7Au0b4dGEP3IAw' push --relay https://relay:7443 jobs, in 0.02 seconds) (finished: subtest: job history comes from the agents and survives a relay restart, in 4.93 seconds) subtest: dashboard login via authorization code flow client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code} %{redirect_url}' https://relay:7443/ui/ | grep -q '303 https://relay:7443/ui/login' client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code} %{redirect_url}' https://relay:7443/ui/ | grep -q '303 https://relay:7443/ui/login', in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -L https://relay:7443/ui/login client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -L https://relay:7443/ui/login, in 0.08 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar https://relay:7443/ui/jobs client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar https://relay:7443/ui/jobs, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -f https://relay:7443/v1/jobs | grep -q hist1 client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -f https://relay:7443/v1/jobs | grep -q hist1, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -N --max-time 10 https://relay:7443/ui/jobs/hist1/events || true client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -N --max-time 10 https://relay:7443/ui/jobs/hist1/events || true, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code}' -X POST 'https://relay:7443/ui/deploy?arg=other' | grep -q 403 client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code}' -X POST 'https://relay:7443/ui/deploy?arg=other' | grep -q 403, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -D - -o /dev/null -H 'HX-Request: true' -X POST 'https://relay:7443/ui/deploy?arg=other' client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -D - -o /dev/null -H 'HX-Request: true' -X POST 'https://relay:7443/ui/deploy?arg=other', in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -N --max-time 30 https://relay:7443/ui/jobs/cea4938d17ab13284ca86c17005261c3/events || true relay # [27712.546967] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:30.508680Z","level":"INFO","message":"deploy finished","job":"6a239dbf87cfec796e49404c351d787f","ok":true,"target":"flakelet_relay::relay::api"} relay # [27712.624640] relay 93sn3sv24fj26ksccpppzwg6kbf10s4w-device-mock[186]: 127.0.0.1 - - [06/Sep/2026 14:46:30] "GET /authorize?response_type=code&client_id=dashboard&redirect_uri=https%3A%2F%2Frelay%3A7443%2Fui%2Fcallback&scope=openid%20profile%20email%20groups&state=c7IWNdPgrb8mDnZHYX-6G7YzSn_U4ZXQSfQaLw2sCNU&code_challenge=4mXZ110ehckur8tlv37mwk40Lby8frDXr_OsGQO4Tmc&code_challenge_method=S256 HTTP/1.1" 302 - relay # [27712.672842] relay 93sn3sv24fj26ksccpppzwg6kbf10s4w-device-mock[186]: 127.0.0.1 - - [06/Sep/2026 14:46:30] "POST /token HTTP/1.1" 200 - relay # [27712.673845] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:30.635647Z","level":"INFO","message":"login","name":"dev@example.org","principals":"[\"oidc:mock:someone\", \"oidc:mock:groups:wheel\"]","target":"flakelet_relay::relay::login"} relay # [27712.738204] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:30.699940Z","level":"INFO","message":"job reattached","job":"188b06c4636b65849b3ba8daac22dc7c","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} relay # [27712.775826] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:30.737637Z","level":"INFO","message":"deploy accepted","job":"42b835bc46b86dcb9db35c1fc54e7c89","caller":"dev@example.org","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} relay # [27712.798137] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:30.759817Z","level":"INFO","message":"job reattached","job":"42b835bc46b86dcb9db35c1fc54e7c89","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} agent # [27712.545540] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:30.507268Z","level":"INFO","message":"update finished","flakelet":"app","status":"Unchanged","generation":"Some(9)","target":"flakelet_relay::agent::jobs"} agent # [27712.776084] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:30.737839Z","level":"INFO","message":"start","id":"92f3c4a77a4f07eb01d5060434cff894","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"dev@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27712.776612] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:30.738432Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"92f3c4a77a4f07eb01d5060434cff894\"]","target":"flakelet_relay::agent::jobs"} agent # [27712.817930] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27712.838043] agent systemd[1]: Started flakelet update other (via relay). agent # [27712.842917] agent flakelet[3600]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27712.843479] agent flakelet[3600]: other: up to date agent # [27712.846586] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -N --max-time 30 https://relay:7443/ui/jobs/cea4938d17ab13284ca86c17005261c3/events || true, in 0.61 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar https://relay:7443/ui/jobs/cea4938d17ab13284ca86c17005261c3 client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar https://relay:7443/ui/jobs/cea4938d17ab13284ca86c17005261c3, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -sf -o /dev/null https://relay:7443/ui/static/htmx.min.js client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -sf -o /dev/null https://relay:7443/ui/static/htmx.min.js, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar 'https://relay:7443/ui/?q=status%3Ahealthy+oth' client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar 'https://relay:7443/ui/?q=status%3Ahealthy+oth', in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar https://relay:7443/ui/flakelets/other client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar https://relay:7443/ui/flakelets/other, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar 'https://relay:7443/ui/hosts?q=status%3Adisconnected' client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar 'https://relay:7443/ui/hosts?q=status%3Adisconnected', in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code}' -H 'HX-Request: true' -X POST 'https://relay:7443/ui/retry?arg=cea4938d17ab13284ca86c17005261c3' | grep -q 400 client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code}' -H 'HX-Request: true' -X POST 'https://relay:7443/ui/retry?arg=cea4938d17ab13284ca86c17005261c3' | grep -q 400, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -N --max-time 15 'https://relay:7443/ui/events?path=jobs' > /tmp/ev.out 2>&1 & client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -N --max-time 15 'https://relay:7443/ui/events?path=jobs' > /tmp/ev.out 2>&1 &, in 0.01 seconds) client: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy --id live1 agent/other » job 38796a7ba508eadfe82a1cd5def000bc via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/other | Starting flakelet update other (via relay)... agent/other | Started flakelet update other (via relay). agent/other | other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent/other | other: up to date agent # [27713.384721] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:31.346459Z","level":"INFO","message":"update finished","flakelet":"other","status":"Unchanged","generation":"Some(1)","target":"flakelet_relay::agent::jobs"} agent # [27713.539695] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:31.501469Z","level":"INFO","message":"start","id":"5e317fc57863c2a7c03ebe1bdacd1356","flakelet":"other","rule":"admins","relay":"relay","caller_name":"\"admin@example.org\"","target":"flakelet_relay::agent::conn"} agent # [27713.540442] agent flakelet-agent[2929]: {"timestamp":"2026-09-06T14:46:31.502264Z","level":"INFO","message":"update starting","flakelet":"other","ids":"[\"5e317fc57863c2a7c03ebe1bdacd1356\"]","target":"flakelet_relay::agent::jobs"} agent # [27713.579990] agent systemd[1]: Starting flakelet update other (via relay)... agent # [27713.601038] agent systemd[1]: Started flakelet update other (via relay). agent # [27713.605397] agent flakelet[3624]: other: using prebuilt artifact /nix/store/hmr990n0b4v6rpzrcpyyw738r9xi7z95-flakelet-other-v1 agent # [27713.605883] agent flakelet[3624]: other: up to date agent # [27713.609067] agent systemd[1]: flakelet-relay-job-other.service: Deactivated successfully. agent/other | flakelet-relay-job-other.service: Deactivated successfully. relay # [27713.539288] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:31.501032Z","level":"INFO","message":"deploy accepted","job":"38796a7ba508eadfe82a1cd5def000bc","caller":"admin@example.org","targets":"[\"agent/other\"]","target":"flakelet_relay::relay::api"} » agent/other: unchanged (generation 1) » ok client: (finished: must succeed: push --relay https://relay:7443 --cert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin.pem --key /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/admin-key.pem deploy --id live1 agent/other, in 0.63 seconds) client: waiting for success: grep -q live1 /tmp/ev.out client: (finished: waiting for success: grep -q live1 /tmp/ev.out, in 0.01 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -X POST -o /dev/null https://relay:7443/ui/logout client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -X POST -o /dev/null https://relay:7443/ui/logout, in 0.02 seconds) client: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code}' https://relay:7443/ui/ | grep -q 303 client: (finished: must succeed: curl -sS --cacert /nix/store/ydql3jgw8j7khsad67k605wlnywsd36n-flakelet-relay-test-certs/ca.pem -b /tmp/jar -c /tmp/jar -o /dev/null -w '%{http_code}' https://relay:7443/ui/ | grep -q 303, in 0.02 seconds) (finished: subtest: dashboard login via authorization code flow, in 1.63 seconds) (finished: run the VM test script, in 85.98 seconds) test script finished in 86.01s cleanup kill NspawnMachine (pid 51) kill NspawnMachine (pid 53) Container agent terminated by signal KILL. kill NspawnMachine (pid 56) Container client terminated by signal KILL. relay # [27714.146862] relay flakelet-relay[1320]: {"timestamp":"2026-09-06T14:46:32.108637Z","level":"INFO","message":"deploy finished","job":"38796a7ba508eadfe82a1cd5def000bc","ok":true,"target":"flakelet_relay::relay::api"} Container relay terminated by signal KILL. (finished: cleanup, in 0.39 seconds) additionally exposed symbols: agent, client, relay, vlan1, start_all, test_script, machines, machines_qemu, machines_nspawn, vlans, driver, log, os, create_machine, subtest, run_tests, join_all, retry, serial_stdout_off, serial_stdout_on, polling_condition, BaseMachine, QemuMachine, NspawnMachine, t, debug, dump_machine_ssh » job 5456821da1042cccee1ed1f4fb122101 via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | Starting flakelet update app (via relay)... agent/app | Started flakelet update app (via relay). agent/app | app: using prebuilt artifact /nix/store/6ili1vxjlag9d7dy0bxrbxk6bpi5qh9p-flakelet-app-v2 agent/app | app: activating generation 2 agent/app | app: updated to generation 2 agent/app | flakelet-relay-job-app.service: Deactivated successfully. » agent/app: updated (generation 2) » ok » job e54ed59426c2ec51335fb6b227d9ef00 via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | Starting flakelet update app (via relay)... agent/app | Started flakelet update app (via relay). agent/app | app: using prebuilt artifact /nix/store/8282rnbvyk847q4l4zby3zwcq3jpzrvw-flakelet-app-broken agent/app | app: activating generation 4 agent/app | app: deploy failed, rolled back: systemctl start app.service failed: agent/app | failed units: app.service. See journalctl -u app.service agent/app | flakelet-relay-job-app.service: Main process exited, code=exited, status=1/FAILURE agent/app | flakelet-relay-job-app.service: Failed with result 'exit-code'. » agent/app: rolled-back (generation 3) agent/app │ Starting app v1... agent/app │ Started app v1. agent/app │ Stopping app v1... agent/app │ app.service: Deactivated successfully. agent/app │ Stopped app v1. agent/app │ Starting app v2... agent/app │ Started app v2. agent/app │ Stopping app v2... agent/app │ app.service: Deactivated successfully. agent/app │ Stopped app v2. agent/app │ Starting app v1... agent/app │ Started app v1. agent/app │ Stopping app v1... agent/app │ app.service: Deactivated successfully. agent/app │ Stopped app v1. agent/app │ Starting app broken... agent/app │ app.service: Unable to locate executable '/nonexistent': No such file or directory agent/app │ app.service: Failed at step EXEC spawning /nonexistent: No such file or directory agent/app │ app.service: Main process exited, code=exited, status=203/EXEC agent/app │ app.service: Failed with result 'exit-code'. agent/app │ Failed to start app broken. agent/app │ Starting app v1... agent/app │ Started app v1. » skipped: agent/other » failed » job d92dc4cf49b7e4fb61858e890649094f via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | Starting flakelet update app (via relay)... agent/app | Started flakelet update app (via relay). agent/app | app: using prebuilt artifact /nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow agent/app | app: activating generation 7 agent/app | app: updated to generation 7 agent/app | flakelet-relay-job-app.service: Deactivated successfully. » agent/app: updated (generation 7) » ok » job d7f87318e9b6750d0069228ddf27fc8e via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | Starting flakelet update app (via relay)... agent/app | Started flakelet update app (via relay). agent/app | app: using prebuilt artifact /nix/store/ln47rsd5km8a04hd5zlkz4q1v352zqh3-flakelet-app-slow2 agent/app | app: activating generation 8 agent/app | app: updated to generation 8 agent/app | flakelet-relay-job-app.service: Deactivated successfully. » agent/app: updated (generation 8) » ok » job 2f704c90a1610c283a0d64e108af9eb5 via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | Starting flakelet update app (via relay)... agent/app | Started flakelet update app (via relay). agent/app | app: using prebuilt artifact /nix/store/c67jj8kx3m50nyj874aqmdqf21w5iznd-flakelet-app-slow agent/app | app: activating generation 9 flakelet-push: stream: error reading a body from connection, resuming job dde224fe20074a14ec4f09182b350e89 flakelet-push: https://relay:7443: connect relay:7443: Connection refused (os error 111), retrying in 1s flakelet-push: https://relay:7443: connect relay:7443: Connection refused (os error 111), retrying in 2s » job 2f704c90a1610c283a0d64e108af9eb5 via relay 0.1.0 (agents: agent 0.1.0) » wave 0 agent/app | app: updated to generation 9 agent/app | flakelet-relay-job-app.service: Deactivated successfully. » agent/app: updated (generation 9) » ok 1788705985 hist1 admin@example.org agent/other:unchanged 1788705975 dde224fe20074a14ec4f09182b350e89 admin@example.org agent/app:updated 1788705967 652c51bc92a3283723dc97d544b7698b admin@example.org agent/app:updated 1788705950 cc077c0b64c18932a1e6387f652eb9ed admin@example.org agent/app:updated 1788705948 local-app-6-1788705948 root (shell) agent/app:updated 1788705944 local-app-5-1788705944 root (shell) agent/app:updated 1788705941 55d513743f32fa89820b9f399f6e66d4 admin@example.org agent/other:unchanged 1788705929 0570ce235956565d7afacbd09f576641 admin@example.org agent/app:unchanged 1788705929 bdbc19a38ba60fbb3d8420767329b9af admin@example.org agent/app:updated 1788705928 2d3b73b769d7710ed53a5b194eee76ea admin@example.org agent/app:unchanged 1788705927 d24aa0ee451476d8ed32669db93dda92 admin@example.org agent/app:unchanged 1788705923 8175e1cdfa4d01696d03bd025c04af76 admin@example.org agent/app:rolled-back 1788705923 b044b3c42912c6e3220e246828595b00 dev@example.org agent/other:unchanged 1788705922 158953bcb6d944a1f246c1db94f293b4 dev@example.org agent/other:unchanged 1788705919 93e2f22861e05d432242391694ec1336 someone agent/other:unchanged 1788705916 706ec9db78817e1ec10bff8cf68252b3 repo:github:example/app:ref:refs/heads/main agent/app:updated 1788705913 d74b0b94d157ba38b4172390a483a32c admin@example.org agent/app:updated 1788705911 local-app-1-1788705911 host activation agent/app:updated 1788705911 local-flakelet-agent-1-1788705911 host activation agent/flakelet-agent:updated 1788705911 local-other-1-1788705911 host activation agent/other:updated