-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
The conditional check ''OK' in get_url_result.msg or 'file already exists' in get_url_result.msg or get_url_result.status_code == 304' failed. #10494
Comments
This look like ansible/ansible#65263 but this should be fixed since ansible 2.10., so this is a bit weird. |
same problem here (kubespray 2.23.1, run in docker container):
|
I got a simple reproducer (run with
Look like when the file already exists and the checksum is different ansible blows up. The fix was not robust enough apparently |
I tried kubespray-2.22.1, which have no such problem. |
Yeah there has been a change with #10452 but I'm not sure if the problem is kubespray or ansible. |
In my envirenment, the cluster is successfully configured by kubespray-2.22.1, so I can't debug this problem now. When I met this problem, I am trying to create cluster with kubespray-2.23.1, and had ran |
I can confirm this problem too. I am using kubespray on tag v2.23.1 and have a raw setup in Hyper-V with Ubuntu 22.04 LTS machines with just a default installation and openssh-server enabled. After 45 minutes one or multiple of my 5 nodes randomly fail with this message: A re-run on a clean system always gives similar output. A re-run straight after the error you see above seems to work (see image below). It is really annoying as I saw that especially the last commit message was treating a 304 Not Modified issue in the Download File task. Please help here if possible ! |
I was able to follow the ansible source code and could verify that in some cases status_code indeed does not return an integer as the documentation suggests here ( https://docs.ansible.com/ansible/latest/collections/ansible/builtin/get_url_module.html#return-status_code ). Instead it can be NULL as can be seen here: bjolivot/ansible@8a55c91#r132162667 I think we need to find out what message is returned instead and should not use status_code at all, what do you think? |
It should failed in this case: the checksum is different from the checksum of the downloaded file. But we should have retries and a better error message. It feels like
|
This looks related to: #10592 which is indicating some kind of DNS problem. Edit There is no checksum issue, I was looking at the wrong sha I am still having issues after trying the suggestions from @RomainMou here and in #10613 |
Environment:
Cloud provider or hardware configuration:
OS (
printf "$(uname -srm)\n$(cat /etc/os-release)\n"
):Linux 4.18.0-372.19.1.el8_6.x86_64 x86_64
ansible --version
):python --version
):Python 3.11.5
Kubespray version (commit) (
git rev-parse --short HEAD
):v2.23.0
Network plugin used:
Full inventory with variables (
ansible -i inventory/sample/inventory.ini all -m debug -a "var=hostvars[inventory_hostname]"
):Command used to invoke ansible:
ansible-playbook -i inventory/k8s-kvib/hosts.yaml --check --become --become-user=root cluster.yml -Kk -vvv
Output of ansible run:
Anything else do we need to know:
The text was updated successfully, but these errors were encountered: