General advice/questions using ansible with RasPi's around the house

So, I’ve been hearing good things about ansible for years, and finally decided to take the plunge, figuring it might help me manage the collection of Raspberry Pi’s I’ve accumulated around the house doing various things.

After a bit of struggle, I got to the point where I could log into all the Pi’s via SSH without explicit user credentials being passed on the command line. So then I put together an inventory file, and figured it was time to try out a “ping.”

Of my 10 pi’s, I was successful on half of them. The other 5 run pre-packaged OS’s that apparently don’t fulfill all the requirements. 4 of these make up my home music system, and those run PiCorePlayer, which seemingly lacks a python installation. The 5th runs EyePi, an abandoned packaging of MotionEye that creates a streaming webcam (in my case, for weather). Ansible complains about not being able to create a tmp directory.

On the EyePi, I doubt I am going to get very far, but I was hoping to find a way to specify where the tmp directory should go in my inventory file. But reading through the doc, I haven’t found such a setting.

Q1: is there such a setting that can be stored in the inventory, so it’s always used when communicating with that host?

On the PiCorePlayers, I was able to install a python3.8 extension, and that seems to have gotten me past that particular roadblock. So I guess for the most part, I am really just left with Q1…

Thanks for any help!

Q1: is there such a setting that can be stored in the inventory, so it's always used when communicating with that host?

This is part of the shell plugin
https://docs.ansible.com/ansible/latest/collections/ansible/builtin/sh_shell.html#parameter-remote_tmp

Also note that while most modules shipped with Ansible are written in
Python, Ansible can still execute modules written in other languages
as long as the interpreter (Perl, Ruby, shell, etc) is present on the
target OR you use a compiled language in which case the requirement is
that the binary can be executed on the remote (I've see golang and
haskell modules for example).

Thanks, Brian. It’s probably just me, and because I’m new to Ansible, but I guess it surprises me that these appear to be “global” type variables that apply to all managed systems, instead of being able to apply to a single system.

it's BOTH, the setting allows for setting an env var (global to run)
or config item (same) or a variable (which can be global go play,
assinged to a group or to a specific host).