jpetazzo / ampernetacle

2.66k stars 447 forks source link

apt_repo_key #26

Closed km05pu05 closed 2 years ago

km05pu05 commented 2 years ago

hi after doing terraform plan i'm getting this warning

Warning: Content-Type is not recognized as a text type, got "application/pgp-keys" │ │ with data.http.apt_repo_key, │ on cloudinit.tf line 141, in data "http" "apt_repo_key": │ 141: data "http" "apt_repo_key" { │ │ If the content is binary data, Terraform may not properly handle the contents of the response.

if i continue, i get stuck on curl loop forever

jpetazzo commented 2 years ago

Hi!

The warning is alright, and shouldn't cause an issue.

The curl issue that you have is very probably a different problem. Can you include more output (a few loops of the curl attempts for instance) so that we can see what's going on?

Thanks!

TheDoubleJo commented 2 years ago

Hi. I confirm the warning is ok.

But I'm having the curl loop issue too.

Here is an extract of the logs (I'm running the process from within a Gitlab pipeline):

oci_core_instance._["1"]: Creation complete after 4m11s [id=ocid1.instance.oc1.eu-marseille-1.anwxeljriovjjwac32w5pobrhlfykxt5hwvbob4h2b6wh35rotugy6qbr7zq]
null_resource.wait_for_kube_apiserver: Creating...
null_resource.wait_for_kube_apiserver: Provisioning with 'local-exec'...
null_resource.wait_for_kube_apiserver (local-exec): Executing: ["/bin/sh" "-c" "while ! curl -k https://[129](https://gitlab.com/i2808/ampernetacle/-/jobs/2343727104#L129).151.229.109:6443; do sleep 20; done"]
null_resource.wait_for_kube_apiserver (local-exec):   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
null_resource.wait_for_kube_apiserver (local-exec):                                  Dload  Upload   Total   Spent    Left  Speed
null_resource.wait_for_kube_apiserver (local-exec):   0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to 129.151.229.109 port 6443: No route to host

I realized this process should provide us a kubeconfig file. So in order to the pipeline to success, I commented out the kubeconfig.tf file content, and it's ok.

Then I ssh to the node1 and perform a: kubectl get nodes

But get only one node:

k8s@node1:~$ kubectl get no
NAME    STATUS   ROLES                  AGE     VERSION
node1   Ready    control-plane,master   6h10m   v1.23.5
jpetazzo commented 2 years ago

This loop waits for the API server (running on node1) to be ready. If the loop keeps running forever, it's probably because the API server takes a long time to come up. There is nothing special to do, I'm afraid; just wait (it might take a while for the instance to be provisioned and come up). If it takes more than the default Terraform timeout (20 minutes) the provisioning will fail. In that case I think you can retry it with terraform apply.