Registered variables are similar to facts, with a few key differences. Like facts, registered variables are host-level variables. However, registered variables are only stored in memory. Register variables don’t survive across plays and different hosts than localhost. Registered variables are only valid on the host for the rest of the current playbook run.
Register variables, like facts, are per host. The values can differ depending on the machine. So this looks exactly expected. To access the variable from a different host, you need to go through hostvars, e.g. ${hostvars.foo.time.stdout} should work in your case.
- Similar Questions 1 – If you want to access one hosts facts/variables from another host then you need to explicitly reference it via the hostvars variable.
- Similar Questions 2 – Pass Ansible variables from one role (running on one host) to another role running on another host within the same playbook
- Similar Questions 3 – How do I set register a variable to persist between plays in ansible?
- Similar Questions 4 – How to access host variable of a different host with Ansible?
Solutions
The solution
The solution is to use Ansible’s built-in hostvars variable to have the second host explicitly reference the first hosts variable. So modify the first example like this: You can access pretty much any inventory facts/variables by doing something like this:
I’m Rajesh Kumar, a DevOps, SRE, DevSecOps, Cloud, and Platform Engineering expert passionate about sharing practical knowledge, real-world experiences, and industry best practices. I have worked at Cotocus and regularly write about technology, travel, investing, health, product reviews, and digital marketing through my various platforms.
I publish technical articles at DevOps School, travel stories at Holiday Landmark, stock market insights at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at TrueReviewNow, and SEO and digital marketing strategies at Wizbrand.
Find Trusted Cardiac Hospitals
Compare heart hospitals by city and services — all in one place.
Explore Hospitals