Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Don't require names for built-in Kubernetes list types #294

Merged
merged 1 commit into from
Nov 26, 2018

Commits on Nov 26, 2018

  1. Don't require names for built-in Kubernetes list types

    `.metadata.name` is not required for built-in list types. Our provider
    expects this property, which means it will crash if it's not given. This
    commit changes ouur provider to not expect such.
    
    The specifics are slightly more complex. Here is the background:
    Kubernetes does not instantiate or manage the lifecycle of list types
    like `v1.List`. If it receives a list type, it will recursively traverse
    it for resource definitions that it is supposed to manage, and then
    perform the relevant operation on each. (e.g., `apply`'ing each
    `v1.ConfigMap` in a `v1.ConfigMapList`.)
    
    Because of this property, lists are not required to have names.
    Unfortunately, while our code handles `v1.List` correctly, it does not
    handle all these other built-in lists. A resource is not specified as a
    list in the OpenAPI spec, either, so we will simply generate a set of
    checks for things that "look like" lists, and trust that when we update
    the OpenAPI spec, we will catch any weirdness in the diffs.
    hausdorff committed Nov 26, 2018
    Configuration menu
    Copy the full SHA
    e2e65b5 View commit details
    Browse the repository at this point in the history