Hello,
We have an outstanding patch to allow individual hosts to run on different
SSH ports, that we’re trying to refine. You will be able to specify ports in
the hosts file when done.
I think a better approach than try to bolt this on the existing format
would be to also support yaml for the inventory file. Hosts and even
groups would support variables, one of them could be ‘ssh_port’.
Sounds reasonable, but I don’t want it to be the only way.
I’d like to keep things forward compatible if we do that. While I agree people should be able to write it in YAML/JSON,
I do not want to unsupported the present format, so it would have to be done in some sort of try/except block.
Further, from experience, while YAML is pretty good for play books, people DO have to learn YAML, whereas a flat
list is something people can go in and use quickly. /bin/ansible is the gateway drug into play books and I want that
experience to be swift.
Personally, I like the [ini] style group headers a lot better than indenting each item in a group and starting it with "- ", but if you
want to store other data I agree it starts to get ugly.
Host:port is pretty basic though, so that should be ok.
It also might be nice to move the inventory code out of Runner, so we
can test that separately. I’ll see what I can do.
Technically it’s already a class method, so it’s usable separately, but it would be nice to make it more self contained.
Sounds like a good idea, and may make future format flexibility easier to do.
Be sure it still supports external variable scripts, which are a playbook thing, and the various override flags.