Commit Graph

129 Commits

Author SHA1 Message Date
Joey Hess ec1e16a9f3
propellor spin 2015-03-12 16:38:29 -04:00
Joey Hess f2750857b8
propellor spin 2015-03-12 16:34:44 -04:00
Joey Hess 1196bffdb5
propellor spin 2015-03-12 16:23:45 -04:00
Joey Hess b3f231c750
propellor spin 2015-03-12 16:12:36 -04:00
Joey Hess febe818cb1
propellor spin 2015-03-11 23:07:41 -04:00
Joey Hess 17dde04739
propellor spin 2015-03-11 22:58:05 -04:00
Joey Hess 294f61b2b1
propellor spin 2015-03-11 22:53:37 -04:00
Joey Hess c8ea87877e
propellor spin 2015-03-11 22:47:39 -04:00
Joey Hess a82b7d3e00
propellor spin 2015-03-11 22:38:15 -04:00
Joey Hess d9d5bf6d44
propellor spin 2015-03-11 22:34:10 -04:00
Joey Hess b508bb52fd
propellor spin 2015-03-11 22:31:45 -04:00
Joey Hess 971d688a72
propellor spin 2015-03-11 22:24:09 -04:00
Joey Hess bd8efb76a3
propellor spin 2015-03-11 22:18:50 -04:00
Joey Hess 09435e9bcc
propellor spin 2015-03-11 22:06:08 -04:00
Joey Hess 164f78ca05
propellor spin 2015-03-06 15:40:38 -04:00
Joey Hess 5b56a416c1 endpoint 2015-02-19 18:40:50 -04:00
Joey Hess fac02a6a82
propellor spin 2015-02-13 15:59:50 -04:00
Joey Hess da77276378 ssh user perm fixes
* Ssh.authorizedKey: Make the authorized_keys file and .ssh directory
  be owned by the user, not root.
* Ssh.knownHost: Make the .ssh directory be owned by the user, not root.
2015-02-12 12:35:15 -04:00
Joey Hess ca2640d037
propellor spin 2015-02-10 22:31:00 -04:00
Joey Hess 8f813dc875
propellor spin 2015-02-10 21:46:31 -04:00
Joey Hess f5c82083fe
propellor spin 2015-02-10 21:39:16 -04:00
Joey Hess b2dccb5fb5
propellor spin 2015-02-10 21:21:51 -04:00
Joey Hess 920b7bf56d
propellor spin 2015-02-10 21:18:41 -04:00
Joey Hess 8d73419dbe
propellor spin 2015-02-10 21:01:38 -04:00
Joey Hess 5ae2a1dc3c
propellor spin 2015-02-10 20:58:47 -04:00
Joey Hess 0119bf8531
propellor spin 2015-02-10 20:56:57 -04:00
Joey Hess d08c98d8b3
propellor spin 2015-02-10 20:29:04 -04:00
Joey Hess 824ebdd76f
propellor spin 2015-02-10 19:57:18 -04:00
Joey Hess 057509c5cd
propellor spin 2015-02-10 15:09:57 -04:00
Joey Hess 991249185c
propellor spin 2015-02-09 18:51:07 -04:00
Joey Hess 8edc7ed3ae
propellor spin 2015-02-01 17:34:04 -04:00
Joey Hess 30c8621f5c
propellor spin 2015-02-01 17:01:32 -04:00
Joey Hess 2e2e30fc39
propellor spin 2015-02-01 16:58:32 -04:00
Joey Hess b3bdb95ed0
propellor spin 2015-02-01 16:51:55 -04:00
Joey Hess 8ff2b77385
propellor spin 2015-02-01 16:40:03 -04:00
Joey Hess 0ea9794324
propellor spin 2015-02-01 15:08:30 -04:00
Joey Hess bcdc5754fc
propellor spin 2015-02-01 14:48:13 -04:00
Joey Hess f276466cf2
propellor spin 2015-02-01 13:36:58 -04:00
Joey Hess 1b7a00372b
propellor spin 2015-02-01 13:14:45 -04:00
Joey Hess 0ee04ecc43 GADT properties seem to work (untested)
* Property has been converted to a GADT, and will be Property NoInfo
  or Property HasInfo.
  This was done to make sure that ensureProperty is only used on
  properties that do not have Info.
  Transition guide:
  - Change all "Property" to "Property NoInfo" or "Property WithInfo"
    (The compiler can tell you if you got it wrong!)
  - To construct a RevertableProperty, it is useful to use the new
    (<!>) operator
  - Constructing a list of properties can be problimatic, since
    Property NoInto and Property WithInfo are different types and cannot
    appear in the same list. To deal with this, "props" has been added,
    and can built up a list of properties of different types,
    using the same (&) and (!) operators that are used to build
    up a host's properties.
2015-01-24 22:38:51 -04:00
Joey Hess afee550e70 Property tree
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-18 18:46:38 -04:00
Joey Hess 042b3bee01
propellor spin 2015-01-09 21:21:06 -04:00
Joey Hess 2e2f8b4fdd
propellor spin 2015-01-08 23:08:16 -04:00
Joey Hess 5585778e54
propellor spin 2015-01-08 23:02:06 -04:00
Joey Hess 8e6e40abc4
propellor spin 2015-01-08 22:44:36 -04:00
Joey Hess ad8e318c34
propellor spin 2015-01-08 22:01:12 -04:00
Joey Hess 660b5d7f93
propellor spin 2015-01-08 21:41:55 -04:00
Joey Hess dd022c917b
propellor spin 2015-01-08 21:17:06 -04:00
Joey Hess 16a5f561f5 Merge Utiity modules from git-annex.
Except for a few that are using the other exception handling library,
that propellor has not switched to yet.
2015-01-06 19:07:40 -04:00
Joey Hess f4a57ca27d refactor dns settings! 2015-01-06 01:20:56 -04:00