<p>I'm failing to connect a Kubernetes Cluster with my GitLab CE server. I'm almost a newby when it comes to GCE and k8s. When I try to create a new k8s cluster from GitLab (not to connect an existing cluster), a notification comes up that billing isn't setup correctly yet. </p>

<p><code>Please enable billing for one of your projects to be able to create a Kubernetes cluster, then try again.</code></p>

<hr>

<p>What I did:</p>

<ul>
<li>I did all steps as described in the <a href="https://docs.gitlab.com/ee/user/project/clusters/" rel="nofollow noreferrer">official tutorial</a> twice.</li>
<li>I verified that GitLab Omniauth is working correctly.</li>
<li>I enabled amongst others the following k8s APIs: Cloud Resource Manager API, Cloud Google+ API, Compute Engine API, Kubernetes Engine API</li>
<li>The above-mentioned warning provides a link to the GCE billing dashboard. There, I enabled k8s billing (or I assume I did it): 

<ul>
<li>I linked my newly created k8s project to a billing account.</li>
<li>I upgraded my GCE account according to the web console's notification to enable billing. I assume this means that billing is enabled. I tried both a billing account with free tier promotion and another one without to avoid running into free tier troubles.</li>
</ul></li>
<li>I waited due to <a href="https://gitlab.com/gitlab-com/support-forum/issues/3022" rel="nofollow noreferrer">this issue</a> for half a day</li>
</ul>

<p>Still, I'm running into the same warning. I appreciate any solutions or hints how to proceed to get the connection installed.</p>

<hr>

<p>In case you want to come up with the solution <code>create and connect an existing server</code> - I wouldn't mind to do so, but I also tried that. I was able to figure out the API URL of my cluster (<code>kubectl cluster-info</code>), but it wasn't published to the web, therefore not accessible by GitLab. In case you know how to fix that, please let me know.</p>

<p>After inspecting the network traffic, it seems to be related to certain APIs not being enabled on your project.</p>

<ol>
<li>Log into your Google Cloud Platform Console.</li>
<li>Make sure you have chosen your project</li>
<li>From the menu, choose API &amp; Services -> Dashboard</li>
<li>Click ENABLE APIS AND SERVICES link at the top of the page.</li>
<li>Search for "Cloud Recource Manager" select it and Enable it.</li>
<li>Go back to API library and search for "Cloud Billing" select and Enable it.</li>
</ol>

<p>Doing this fixed the problem for me.  If this doesn't fix your problem, then you can inspect your page and look at the network traffic in your browser.  You will see the calls to the Google services and you can read the responses to get more info.</p>
