nathwill / chef-systemd

resource-driven chef cookbook for managing linux systems via systemd
Apache License 2.0
44 stars 33 forks source link

where did the service overrides functionality move to? #110

Closed acranox closed 7 years ago

acranox commented 7 years ago

In version 2.1.3 of the cookbook, a systemd service had an option for overrides that reset the variable from any prior assignments. (see comment below from the README) it is unclear how to replicate this functionality in the 3.0.x cookbook.

overrides | drop-in unit options that require a reset (e.g. "ExecStart" -> "ExecStart=" at top of section)
nathwill commented 7 years ago

@acranox the overrides were moved to a separate resource systemd_service_drop_in. there's a mapping of the override resources here, and the specifics for the service unit type drop-ins.

hope that helps, let me know if you have other questions!

acranox commented 7 years ago

What I need is output that looks like the one below. The line with the empty assignment is necessary. I'm not seeing how to do this with the new cookbook. I've tried a few things with no luck. If it's possible, maybe it could just be more clearly documented in case I'm not the only clueless person out there.

[Service]
ExecStart=
ExecStart=/foo/bar.sh
nathwill commented 7 years ago

oooh, overrides vs override... sorry, i misunderstood.

i believe this may have been mistakenly dropped during the rewrite... as an interim solution, systemd loads drop-ins in lexical order, so a reset can be achieved by using 2 resources and naming the reset drop-in resource such that it's loaded first. i'll take a look at adding this back in for a 3.1.0 ASAP.

i'd also like to rename the property to resets while i'm at it, to avoid the override & overrides confusion... any objection?

acranox commented 7 years ago

I'm glad to hear it wasn't my lack of skills that was preventing me from getting it to work. I don't care what you call it. I have to re-work my cookbooks to use this new version, so I won't be reusing code anyhow. 'reset' seems consistent with what the systemd docs describe: If the empty string is assigned to this option, the list of commands to start is reset, prior assignments of this option will have no effect.

Thanks. I'll skip the interim solution and keep using 2.1.x for the cookbook that I need this functionality in, and I'll be looking for the release of 3.1.0.

nathwill commented 7 years ago

@acranox shipped a solution in 3.1.0, holler if that doesn't work for ya.