summaryrefslogtreecommitdiff
path: root/src/Propellor/Property/Dns.hs
AgeCommit message (Collapse)Author
2015-01-18Property treeJoey Hess
Properties now form a tree, instead of the flat list used before. This simplifies propigation of Info from the Properties used inside a container to the outer host; the Property that docks the container on the host can just have as child properties all the inner Properties, and their Info can then be gathered recursively. (Although in practice it still needs to be filtered, since not all Info should propigate out of a container.) Note that there is no change to how Properties are actually satisfied. Just because a Property lists some child properties, this does not mean they always have their propertySatisfy actions run. It's still up to the parent property to run those actions. That's necessary so that a container's properties can be satisfied inside it, not outside. It also allows property combinators to add the combined Properties to their childProperties list, even if, like onChange, they don't always run the child properties at all. Testing: I tested that the exact same Info is calculated before and after this change, for every Host in my config file.
2015-01-04SSHFP records are also generated for CNAMES of hosts.Joey Hess
2015-01-04prepJoey Hess
2015-01-04propellor spinJoey Hess
2015-01-04propellor spinJoey Hess
2015-01-04DNS records for hosts with known ssh public keys now automatically include ↵Joey Hess
SSHFP records.
2015-01-04transition docsJoey Hess
2015-01-04propellor spinJoey Hess
2015-01-04add $INCLUDE of pubkeys before zone file is written, to avoid pogoingJoey Hess
2015-01-04propellor spinJoey Hess
2015-01-04propellor spinJoey Hess
2015-01-04propellor spinJoey Hess
2015-01-04use separate directory for dnssec filesJoey Hess
2015-01-04resign zone if keys changeJoey Hess
2015-01-04DNS WIPJoey Hess
2015-01-03stub signedPrimaryJoey Hess
2014-11-20fix docker container provisioningJoey Hess
Since the containers are no longer on the host list, they were not found while provisioning, oops. To fix, had to add to a host's info a map of the containers docked to it. Unfortunately, that required Propellor.Types.Info be glommed into Propellor.Types, since it needed to refer to Host.
2014-10-08a few other whitespace fixupsJoey Hess
2014-10-08fix some accidental uses of spaces, rather than tabs, for indentationJoey Hess
2014-06-09Attr is renamed to Info.Joey Hess
2014-06-01filter out dup CNAMESJoey Hess
This happens when a docker host has an alias defined, because all docker hosts are added to the dns, same as other hosts.
2014-05-31simplified record accessorsJoey Hess
2014-05-31got rid of the Attr -> Attr SetAttr hack, and use monoids for AttrJoey Hess
The SetAttr hack used to be needed because the hostname was part of the Attr, and was required to be present. Now that it's moved to Host, let's get rid of that, since it tended to waste CPU.
2014-05-31remove now redundant _hostname field of AttrJoey Hess
Now that Host includes _hostName, it's redundant to also keep it in Attr. This requires changing the reader monad to operate on the whole Host.
2014-05-14moved source code to srcJoey Hess
This is to work around OSX's brain-damange regarding filename case insensitivity. Avoided moving config.hs, because it's a config file. Put in a symlink to make build work.