Building Photo Contact Sheets is a practical Ansible project for learners who know a small inventory and playbook. Turn landscape photographs on two SSH workstations into usable selection sheets, then collect each image with its exact file list.
One Guided Lab starts with a small synchronous sample, then introduces per-host asynchronous jobs and safe collection after successful completion. An independent Challenge changes the workstations, photo selections and destination folder. Every unit starts with its own prepared environment.
What You Will Learn
- Run a prepared image-processing command with clear arguments and inspect a real contact sheet.
- Start asynchronous work and keep each workstation's job identifier with that host.
- Wait for actual completion, distinguish success from failure and collect only successful results.
- Keep fetched PNG images and complete CSV file lists in separate host folders.
- Correct a bad selection and retry one workstation while preserving other work and historical files.
Who This Course Is For
This course is for Ansible beginners ready to automate a complete file-processing workflow.
Prerequisites: Basic terminal navigation and practice with inventories, variables, playbook YAML and basic command/file tasks. The Guided Lab explains asynchronous status checks, loops, fetching and selective retries before the Challenge.
Learning environment: Ansible, SSH access, licensed landscape photographs, an image-processing tool and two workstation containers are prepared. Use the Controller and Photo Desk Tabs in your browser. The containers share the training VM's kernel.
Frequently Asked Questions
Do I need to write an image-processing program?
No. The media tool is ready. You write the Ansible workflow and inspect the actual images and file lists it delivers.
Does a job identifier mean the contact sheet is ready?
No. Starting a job and finishing it successfully are different events. You wait for each host's result before collecting its files, and see why older files cannot prove a new attempt succeeded.
How does the Challenge extend the Guided Lab?
It changes host names, batch assignments and the collection directory. Apply the same taught mechanisms independently to deliver complete, correctly matched files for both workstations.

