-
-
Notifications
You must be signed in to change notification settings - Fork 14.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The switch-to-configuration.pl logic is hard to follow and not really documented #24409
Comments
Any news on this issue? |
@mmahut it seems like someone just needs to dig into the source, figure it out, and then write some documentation I guess. |
Hello, I'm a bot and I thank you in the name of the community for opening this issue. To help our human contributors focus on the most-relevant reports, I check up on old issues to see if they're still relevant. This issue has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human. The community would appreciate your effort in checking if the issue is still valid. If it isn't, please close it. If the issue persists, and you'd like to remove the stale label, you simply need to leave a comment. Your comment can be as simple as "still important to me". If you'd like it to get more attention, you can ask for help by searching for maintainers and people that previously touched related code and @ mention them in a comment. You can use Git blame or GitHub's web interface on the relevant files to find them. Lastly, you can always ask for help at our Discourse Forum or at #nixos' IRC channel. |
At some point @flokli had interest on this topic, but I'm not sure what the situation is now. This issue is still relevant, though. |
Yeah, I did some digging in May on this, and came up with this: I didn't find the time to change anything in the script, though. |
I still think there is value in having the ability to express changes which require a |
I marked this as stale due to inactivity. → More info |
still relevant. |
I marked this as stale due to inactivity. → More info |
I marked this as stale due to inactivity. → More info |
Are you referring to https://nixos.org/manual/nixos/unstable/index.html#sec-switching-systems? |
Yeah, that's what I wrote. It's only on unstable for now |
I think we should link from the top of The main idea is that people looking at the perl script know where to find the behaviour documentation. |
I'm trying to figure out which variable I need to set if I don't want switch-to-configuration to stop my service. Poking around switch-to-configuration.pl, I find several variables that seem relevant, buried in a sea of nested conditionals in perl that make it rather hard to figure out when it makes sense to use each variable.
Here's a few of those variables:
X-StopOnRemoval
X-StopOnReconfiguration
X-ReloadIfChanged
X-RestartIfChanged
X-StopIfChanged
RefuseManualStop
RefuseManualStart
It also seems like the suggested possible "space of variation" of these variables is larger than you'll actually benefit from. For example, eyeballing the logic, it seems like setting
X-ReloadIfChanged
means thatX-RestartIfChanged
,RefuseManualStop
, andX-StopIfChanged
will be ignored.Not fully understanding the logic enough to have a strong opinion on this, it seems at first glance like some of those variables would be easier to follow if they turned into e.g.,
X-ActionIfChanged
(which could take on values likeReload
,Restart
, orStop
). Either way I'm still having trouble distinguishing semantic differences between "changed" and "reconfiguration".cc @edolstra
The text was updated successfully, but these errors were encountered: