WIP: First cut at input validation for Kubelet

* Add some util functions for basic validation
* Spec api fields more tightly
* Break a dep from util -> api, so I can do the reverse
* Add functions to validate structures
* Call those functions when running manifests

This does not validate as it unmarshals YAML or JSON because I want to be able
to validate structures that come from other inputs without forcing them to be
YAML.

This does not handle all api structures - I am not familiar wnough with the
rest to spec them this tightly - I hope someone else can do that.

There are a number of open questions, marked "FIXME".  Please offer feedback
or opinions.
How do I regenerate the HTML in api/ ?  And Where is it coming from?  It
has wrong examples, but is it correct to just edit the HTML?


On Sun, Jun 29, 2014 at 3:52 PM, Daniel Smith <notifications@github.com>
wrote:

> In api/examples/pod-list.json:
>
> > @@ -8,6 +8,8 @@
> >              },
> >              "desiredState": {
> >                "manifest": {
> > +                "version": "v1beta1",
> > +                "id": "my-pod-1",
>
> I've filed #291
> <https://github.com/GoogleCloudPlatform/kubernetes/issues/291>. Too big a
> can of worms to fix in spare Sunday minutes. :) Let's not block this change
> on inability to run e2e right now. (I guess no one has run it since we
> added the cadvisor stuff?)
>
> --
> Reply to this email directly or view it on GitHub
> <https://github.com/GoogleCloudPlatform/kubernetes/pull/280/files#r14332207>
> .
>