diff --git a/Propellor/Property/OpenId.hs b/Propellor/Property/OpenId.hs index 2a55ff3..4f22bdb 100644 --- a/Propellor/Property/OpenId.hs +++ b/Propellor/Property/OpenId.hs @@ -7,18 +7,20 @@ import qualified Propellor.Property.Apt as Apt import Data.List providerFor :: [UserName] -> String -> Property -providerFor users baseurl = propertyList ("openid provider") $ +providerFor users baseurl = propertyList desc $ [ serviceRunning "apache2" `requires` Apt.installed ["apache2"] , Apt.installed ["simpleid"] `onChange` serviceRestarted "apache2" - , File.fileProperty ("simpleid host " ++ baseurl) + , File.fileProperty desc (map setbaseurl) "/etc/simpleid/config.inc" ] ++ map identfile users where identfile u = File.hasPrivContent $ concat [ "/var/lib/simpleid/identities/", u, ".identity" ] + url = "http://"++baseurl++"/simpleid" + desc = "openid provider " ++ url setbaseurl l | "SIMPLEID_BASE_URL" `isInfixOf` l = - "define('SIMPLEID_BASE_URL', 'http://"++baseurl++"/simpleid');" + "define('SIMPLEID_BASE_URL', '"++url++"');" | otherwise = l