---
# This title is used for search results
title: Role configuration for eos_designs
---
<!--
  ~ Copyright (c) 2023-2026 Arista Networks, Inc.
  ~ Use of this source code is governed by the Apache License 2.0
  ~ that can be found in the LICENSE file.
  -->

# Role configuration for eos_designs

Role configuration settings can be set either as regular inventory variables or directly as task_vars on the `import_role` task.

## Role default output directories

Default output directories can be updated by modifying the default role variables:

``` yaml
--8<--
ansible_collections/arista/avd/roles/eos_designs/defaults/main/output_directories.yml
--8<--
```

!!! tip
    You might need the outputs generated by AVD in a different folder than inventory (the default). If updating `root_dir`, leverage a relative path from `inventory_dir` to ensure consistent behavior. Example: `root_dir: '{{ inventory_dir}}/../outputs'`.

## Input Variables Validation

Schema validation is performed by the `validate_inputs` action plugin which is called automatically by the role.
The plugin performs variable type conversion and validation of the converted data against the AVD schema.

Any data validation issues will trigger errors - blocking further processing.

## Generation of facts, structured configuration and documentation

The following settings can be leveraged to control generation of structured configuration and fabric documentation.

--8<--
ansible_collections/arista/avd/roles/eos_designs/docs/tables/role-settings.md
--8<--

## Custom Templates

--8<--
ansible_collections/arista/avd/roles/eos_designs/docs/tables/role-custom-templates.md
--8<--
