Was the commit “Fixes #5469 Refactor sysctl module into object oriented code,” ca055844954ac74116b606feee9a1ef498865da0 intended to not be backward compatible?
A git bisect show that the commit broke the following task:
- name: disable ipv6
sysctl: name=net.ipv6.conf.all.disable_ipv6 value=1 state=present checks=both
by removing the “checks” parameter.
“A git bisect show that the commit broke the following task:”
Broke how, exactly?
You’re not showing any output, steps to reproduce, or description of a problem.
TASK: [common | disable ipv6] *************************************************
failed: [opsawx1.ord.app.dy] => {“failed”: true, “item”: “”}
msg: unsupported parameter for module: checks
FATAL: all hosts have already failed – aborting
Steps to reproduce, try the task I put in the first email. The diff of the “refactor” clearly shows that the “checks” parameter has been removed. Was this intended?
Yes.
Our basic analysis of the sysctl module was that the quality was not quite up to our standards and had some problems in regard to the current value of the sysctl on the system.
As a result, we removed the checks parameter since it was no longer needed.
Thanks. That’s why I asked here before filing a bug
Would it be too much to ask for a posting to ansible-devel before parameters are removed from modules with explanations behind the reasoning? That way when these things are discovered by those of us testing the bleeding edge we can search the list, see the reason, and fix our playbooks?
Generally we try to. We may miss something from time to time.
The other option would have been to keep it responding to check and completely ignoring and undocumenting the option, which may be the right course of action here, but our view was the option was so very broken we didn’t think it was being utilized.
It appears we were incorrect and stand corrected