<p dir="auto">There's two parts to this.</p>
<ul class="contains-task-list">
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Add a function to runtime which will generate a json schema for a given API object: <a href="http://json-schema.org/" rel="nofollow">http://json-schema.org/</a></li>
<li class="task-list-item"><input type="checkbox" id="" disabled="" class="task-list-item-checkbox"> Add a function to apiserver that just walks through all registered resources and emits this: <a href="http://raml.org/" rel="nofollow">http://raml.org/</a></li>
</ul>
<p dir="auto">This will allow us to add a -raml flag to the apiserver binary and get up to date docs on demand.</p>
<p dir="auto"><strong>Is this a request for help?</strong> (If yes, you should use our troubleshooting guide and community support channels, see <a href="http://kubernetes.io/docs/troubleshooting/" rel="nofollow">http://kubernetes.io/docs/troubleshooting/</a>.):</p>
<p dir="auto"><strong>What keywords did you search in Kubernetes issues before filing this one?</strong> (If you have found any duplicates, you should instead reply there.):</p>
<hr>
<p dir="auto"><strong>Is this a BUG REPORT or FEATURE REQUEST?</strong> (choose one):<br>
BUG REPORT</p>

<p dir="auto"><strong>Kubernetes version</strong> (use <code class="notranslate">kubectl version</code>):<br>
Client Version: version.Info{Major:"1", Minor:"4", GitVersion:"v1.4.4", GitCommit:"3b417cc4ccd1b8f38ff9ec96bb50a81ca0ea9d56", GitTreeState:"clean", BuildDate:"2016-10-21T02:48:38Z", GoVersion:"go1.6.3", Compiler:"gc", Platform:"linux/amd64"}<br>
Unable to connect to the server: x509: cannot validate certificate for 10.37.116.27 because it doesn't contain any IP SANs</p>
<p dir="auto"><strong>Environment</strong>:</p>
<ul dir="auto">
<li><strong>Cloud provider or hardware configuration</strong>:</li>
<li><strong>OS</strong> (e.g. from /etc/os-release):<br>
cat  /etc/os-release<br>
NAME="CentOS Linux"<br>
VERSION="7 (Core)"<br>
ID="centos"<br>
ID_LIKE="rhel fedora"<br>
VERSION_ID="7"<br>
PRETTY_NAME="CentOS Linux 7 (Core)"<br>
ANSI_COLOR="0;31"<br>
CPE_NAME="cpe:/o:centos:centos:7"<br>
HOME_URL="<a href="https://www.centos.org/" rel="nofollow">https://www.centos.org/</a>"<br>
BUG_REPORT_URL="<a href="https://bugs.centos.org/" rel="nofollow">https://bugs.centos.org/</a>"</li>
</ul>
<p dir="auto">CENTOS_MANTISBT_PROJECT="CentOS-7"<br>
CENTOS_MANTISBT_PROJECT_VERSION="7"<br>
REDHAT_SUPPORT_PRODUCT="centos"<br>
REDHAT_SUPPORT_PRODUCT_VERSION="7"</p>
<ul dir="auto">
<li>
<p dir="auto"><strong>Kernel</strong> (e.g. <code class="notranslate">uname -a</code>):<br>
uname -a<br>
Linux k8smaster 4.8.4-1.el7.elrepo.x86_64 <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="35192559" data-permission-text="Title is private" data-url="https://github.com/kubernetes/kubernetes/issues/1" data-hovercard-type="issue" data-hovercard-url="/kubernetes/kubernetes/issues/1/hovercard" href="https://github.com/kubernetes/kubernetes/issues/1">#1</a> SMP Sat Oct 22 11:47:38 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux</p>
</li>
<li>
<p dir="auto"><strong>Install tools</strong>:</p>
</li>
<li>
<p dir="auto"><strong>Others</strong>:</p>
</li>
</ul>
<p dir="auto"><strong>What happened</strong>:<br>
E1102 14:09:21.532058   21349 reflector.go:214] k8s.io/kubernetes/plugin/pkg/admission/resourcequota/resource_access.go:83: Failed to list *api.ResourceQuota: Get <a href="http://127.0.0.1:8080/api/v1/resourcequotas?resourceVersion=0" rel="nofollow">http://127.0.0.1:8080/api/v1/resourcequotas?resourceVersion=0</a>: dial tcp 127.0.0.1:8080: getsockopt: connection refused<br>
E1102 14:09:21.532344   21349 reflector.go:214] k8s.io/kubernetes/plugin/pkg/admission/serviceaccount/admission.go:119: Failed to list *api.Secret: Get <a href="http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token&amp;resourceVersion=0" rel="nofollow">http://127.0.0.1:8080/api/v1/secrets?fieldSelector=type%3Dkubernetes.io%2Fservice-account-token&amp;resourceVersion=0</a>: dial tcp 127.0.0.1:8080: getsockopt: connection refused<br>
E1102 14:09:21.532430   21349 reflector.go:214] k8s.io/kubernetes/plugin/pkg/admission/serviceaccount/admission.go:103: Failed to list *api.ServiceAccount: Get <a href="http://127.0.0.1:8080/api/v1/serviceaccounts?resourceVersion=0" rel="nofollow">http://127.0.0.1:8080/api/v1/serviceaccounts?resourceVersion=0</a>: dial tcp 127.0.0.1:8080: getsockopt: connection refused<br>
E1102 14:09:21.532519   21349 reflector.go:203] k8s.io/kubernetes/plugin/pkg/admission/limitranger/admission.go:154: Failed to list *api.LimitRange: Get <a href="http://127.0.0.1:8080/api/v1/limitranges?resourceVersion=0" rel="nofollow">http://127.0.0.1:8080/api/v1/limitranges?resourceVersion=0</a>: dial tcp 127.0.0.1:8080: getsockopt: connection refused</p>
<p dir="auto"><strong>What you expected to happen</strong>:<br>
curl -L <a href="http://127.0.0.1:8080/api/v1/limitranges?resourceVersion=0" rel="nofollow">http://127.0.0.1:8080/api/v1/limitranges?resourceVersion=0</a><br>
{<br>
"kind": "LimitRangeList",<br>
"apiVersion": "v1",<br>
"metadata": {<br>
"selfLink": "/api/v1/limitranges",<br>
"resourceVersion": "13351"<br>
},<br>
"items": []<br>
}</p>
<p dir="auto"><strong>How to reproduce it</strong> (as minimally and precisely as possible):</p>
<p dir="auto"><strong>Anything else do we need to know</strong>:</p>