All Practice Exams

100+ Free EX374 Practice Questions

Pass your Red Hat Certified Specialist in Developing Automation with Ansible Automation Platform (EX374) exam on the first try — instant access, no signup required.

✓ No registration✓ No credit card✓ No hidden fees✓ Start practicing immediately
Not published Pass Rate
100+ Questions
100% Free
1 / 100
Question 1
Score: 0/0

Which top-level keyword in a playbook lets you import a list of variables from an external YAML file at the play level?

A
B
C
D
to track
2026 Statistics

Key Facts: EX374 Exam

210/300

Passing Score

Red Hat

4 hours

Exam Length

Red Hat

Hands-on

Format

Performance-based

AAP 2.5

Tested Version

Red Hat

RHCA-eligible

Counts toward

Red Hat Certified Architect

$400-500

Exam Cost

Red Hat

EX374 is a performance-based hands-on exam (no multiple choice) on Ansible Automation Platform 2.5. Passing score is 210/300 (70%). Candidates build collections (galaxy.yml, ansible-galaxy collection build/publish), author execution environments with ansible-builder (execution-environment.yml v3, bindep.txt), drive automation controller (job templates, surveys, workflows, RBAC, /api/v2/ endpoints), publish to private automation hub, write custom plugins (filter, lookup, action, modules using AnsibleModule), package roles, use ansible-vault, and test with Molecule. EX374 counts toward Red Hat Certified Architect (RHCA).

Sample EX374 Practice Questions

Try these sample questions to test your EX374 exam readiness. Each question includes a detailed explanation. Start the interactive quiz above for the full 100+ question experience with AI tutoring.

1Which top-level keyword in a playbook lets you import a list of variables from an external YAML file at the play level?
A.vars_files
B.include_vars
C.var_files
D.load_vars
Explanation: vars_files is a play-level keyword that takes a list of YAML files whose contents are loaded as variables for the play. include_vars is a task module, not a play keyword.
2Which keyword groups a set of tasks together so a single rescue or always section can react to failures across the group?
A.block
B.group
C.section
D.scope
Explanation: block lets you group tasks and pair them with rescue (run on failure) and always (run regardless) sections, similar to try/except/finally in Python.
3In a block / rescue / always construct, when does the rescue section execute?
A.Only when a task in the block fails
B.After every task regardless of result
C.Only when the play is interrupted
D.Before the block runs
Explanation: rescue runs only when one of the tasks in the block fails. always runs regardless of success or failure of the block.
4Which task keyword forces a task to be marked failed even if the module returns success, based on a Jinja2 expression?
A.failed_when
B.fail_when
C.fail_if
D.when_failed
Explanation: failed_when accepts a Jinja2 expression and marks the task failed when the expression evaluates true, even if the module itself returned ok.
5Which keyword lets you override the default success criteria for a task — for example, to treat rc==1 from a shell command as success?
A.changed_when and failed_when
B.ignore_errors
C.register only
D.result_when
Explanation: Pair changed_when (controls 'changed' status) with failed_when (controls 'failed' status). For shell/command modules, you typically register the result and set failed_when: result.rc != 0 — or invert it to allow rc==1.
6What is the modern, supported keyword to iterate over a list in a task in Ansible 2.9+?
A.loop
B.with_items
C.iterate
D.for_each
Explanation: loop is the recommended construct since Ansible 2.5 and is the only one shown in current documentation. with_items still works but is considered legacy.
7Which loop_control option renames the default item variable inside a loop?
A.loop_var
B.var_name
C.item_var
D.alias
Explanation: Inside loop_control, set loop_var: my_name to make the iteration variable available as my_name instead of item. This is essential for nested loops via include_tasks.
8Which lookup plugin reads a key/value pair list from a dictionary and yields each pair as a separate item in a loop?
A.dict
B.items
C.keys
D.hash
Explanation: loop: "{{ lookup('ansible.builtin.dict', mydict) }}" produces items with .key and .value attributes, replacing the deprecated with_dict.
9What is the correct Jinja2 filter to pick only items from a list where a sub-key equals a value, e.g. only enabled users?
A.selectattr('enabled', 'equalto', true)
B.filter('enabled', true)
C.where(enabled=true)
D.find('enabled', true)
Explanation: selectattr is the Jinja2 filter for filtering a list of dicts/objects by attribute. The 'equalto' test is the standard equality test.
10Which Jinja2 filter merges two dictionaries, with values from the second overriding the first?
A.combine
B.merge
C.union
D.extend
Explanation: {{ dict1 | combine(dict2) }} merges dictionaries. Pass recursive=True for deep merges and list_merge='append' for list strategies.

About the EX374 Exam

EX374 is the Red Hat Certified Specialist in Developing Automation with Ansible Automation Platform exam. It validates developer-side skills with Ansible Automation Platform 2.5: advanced playbook authoring (loops, conditionals, blocks, error handling), content collections (galaxy.yml, FQCN, ansible-galaxy publish), execution environments built with ansible-builder, automation controller (job templates, surveys, workflows, RBAC), private automation hub (namespaces, collection and container repositories), custom plugins and modules, roles, ansible-vault, Molecule role testing, ansible-navigator, and dynamic inventory.

Questions

100 scored questions

Time Limit

4 hours

Passing Score

210/300 (70%)

Exam Fee

$400-500 USD (Red Hat)

EX374 Exam Content Outline

12%

Advanced Playbook Authoring

loops, conditionals, blocks/rescue/always, error handling, register, delegate_to, run_once, serial, strategy

12%

Content Collections

galaxy.yml, ansible-galaxy collection build/install/publish, FQCN, collections/requirements.yml

12%

Execution Environments

ansible-builder, execution-environment.yml v3, bindep.txt, base_image, podman

15%

Automation Controller

job templates, surveys, workflows, projects, inventories, credentials, RBAC, /api/v2/ endpoints

8%

Private Automation Hub

namespaces, remotes, repositories, collection publish, EE container registry, RBAC

10%

Custom Plugins and Modules

plugins/modules, plugins/filter, plugins/lookup, plugins/action, AnsibleModule, argument_spec

10%

Roles

defaults, vars, handlers, meta dependencies, ansible-galaxy role init, allow_duplicates

7%

Ansible Vault and Secrets

ansible-vault encrypt/edit/rekey/encrypt_string, vault-id, no_log

7%

Molecule and Testing

molecule.yml, converge.yml, drivers (podman), molecule test, idempotence, verifiers

7%

ansible-navigator and Dynamic Inventory

ansible-navigator.yml, --eei, collections/config TUI, aws_ec2/constructed inventory plugins

How to Pass the EX374 Exam

What You Need to Know

  • Passing score: 210/300 (70%)
  • Exam length: 100 questions
  • Time limit: 4 hours
  • Exam fee: $400-500 USD

Keys to Passing

  • Complete 500+ practice questions
  • Score 80%+ consistently before scheduling
  • Focus on highest-weighted sections
  • Use our AI tutor for tough concepts

EX374 Study Tips from Top Performers

1Build a real lab: automation controller, private automation hub, plus 2-3 managed hosts. Free trial entitlements are available via developers.redhat.com
2Practice the full collection lifecycle: ansible-galaxy collection init, write modules/filters under plugins/, ansible-galaxy collection build, then publish to PAH with --token
3Author execution-environment.yml at schema version 3 with images.base_image.name pointing at registry.redhat.io/ansible-automation-platform-25/ee-minimal-rhel9 and dependencies.galaxy/python/system pinned
4Memorize controller API endpoints: /api/v2/job_templates/, /api/v2/projects/, /api/v2/inventories/, /api/v2/credentials/, /api/v2/workflow_job_templates/
5Drill ansible.controller (and awx.awx) modules: job_template, project, inventory, credential, organization, team, role, workflow_job_template
6Practice ansible-vault flows: encrypt, edit, rekey, encrypt_string --name, and multiple --vault-id LABEL@FILE arguments — and always pair secret-handling tasks with no_log: true
7Write at least one of each plugin type: filter (plugins/filter/*.py with FilterModule.filters()), lookup (LookupBase.run()), action plugin, and a module using AnsibleModule with argument_spec
8Run Molecule against the podman driver: molecule init scenario, edit molecule.yml platforms, run molecule test (lint, create, converge, idempotence, verify, destroy)
9Use ansible-navigator daily during practice: ansible-navigator run play.yml --eei <ee_image> --mode stdout, then ansible-navigator collections/config to inspect the EE
10Time yourself: a 4-hour exam goes fast — practice tasks under pressure with the doc browser closed

Frequently Asked Questions

What does EX374 cover?

EX374 tests developer-side Ansible Automation Platform 2.5 skills: advanced playbook authoring with loops/blocks/error handling, content collections (galaxy.yml, FQCN, ansible-galaxy collection publish), execution environments built with ansible-builder, custom plugins and modules, role packaging, automation controller (job templates, surveys, workflows, projects, credentials, RBAC), private automation hub, ansible-vault, and Molecule-based role testing.

What is the EX374 exam format?

EX374 is performance-based: there are no multiple-choice questions. You receive a list of tasks to complete on live systems in four hours, including building collections, authoring execution environments with ansible-builder, running plays through ansible-navigator, configuring automation controller objects, and writing custom plugins/modules. Passing requires 210 of 300 points (70%).

How long is the EX374 exam?

EX374 is approximately a 4-hour single-session performance-based exam. Red Hat administers it at training centers and via individual remote exam (proctored). Time management matters because tasks span ansible-core, ansible-builder, ansible-navigator, automation controller, and private automation hub.

What is the EX374 cost?

Red Hat lists the standard exam fee around $400-500 USD depending on region, often included in the Red Hat Learning Subscription. Individual exam vouchers are also available. Always confirm the current fee on the official EX374 page before scheduling.

Does EX374 require RHCE?

Red Hat strongly recommends current RHCE before EX374 because the exam assumes fluency with playbooks, roles, and ansible-core. RHCE is also required to retain Specialist credentials, and EX374 plus four other Specialist exams (with current RHCE) qualifies for Red Hat Certified Architect (RHCA).

How long should I study for EX374?

Plan for 80-120 hours of focused, hands-on study over 8-12 weeks. Set up an AAP 2.5 lab with automation controller, private automation hub, and at least three managed hosts. Practice every objective: build a collection, author an EE with ansible-builder, write a custom filter and module, drive controller via API, and run Molecule tests.

Is EX374 valid for life?

No. Specialist credentials follow Red Hat's general 3-year recertification cycle and require a current RHCE to remain valid. You can re-pass EX374 or earn a higher Red Hat credential to keep it active.