diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-06-24 11:40:45 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-06-25 16:10:57 -0700 |
commit | f25f919159424360e010e94b566c2fa158e5ab78 (patch) | |
tree | e16e902febc731c4ac80c620dbee441a748377ea /src/property/apache.lisp | |
parent | 67b0fea82ecef2e3d527bec3a16745d91dd7b0ef (diff) | |
download | consfigurator-f25f919159424360e010e94b566c2fa158e5ab78.tar.gz |
add APACHE:CONF-AVAILABLE & optional arg to APACHE:CONF-ENABLED
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'src/property/apache.lisp')
-rw-r--r-- | src/property/apache.lisp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/property/apache.lisp b/src/property/apache.lisp index f718631..7de7cdd 100644 --- a/src/property/apache.lisp +++ b/src/property/apache.lisp @@ -39,14 +39,24 @@ (on-change (%mod-enabled name) (reloaded))) +(defproplist conf-available :posix (name config) + (:desc #?"Apache conf ${name} available") + (file:exists-with-content + (merge-pathnames (strcat name ".conf") #P"/etc/apache2/conf-available/") + config)) + (defprop %conf-enabled :posix (name) (:hostattrs (os:required 'os:debianlike)) (:check (zerop (mrun :for-exit "a2query" "-q" "-c" name))) (:apply (mrun "a2enconf" "--quiet" name)) (:unapply (mrun "a2disconf" "--quiet" name))) -(defproplist conf-enabled :posix (name) +(defpropspec conf-enabled :posix (name &optional config) (:desc #?"Apache configuration ${name} enabled") - (installed) - (on-change (%conf-enabled name) - (reloaded))) + `(eseqprops + (installed) + (on-change ,(if config + `(eseqprops (conf-available ,name ,config) + (%conf-enabled ,name)) + `(%conf-enabled ,name)) + (reloaded)))) |