summaryrefslogtreecommitdiffstats
path: root/docs/getting-started.md
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2025-01-14 10:18:19 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2025-01-14 10:18:29 +0000
commit6818d016122ee845a2011b94bbdad0ed28a9aae7 (patch)
treee9865932680acf05b8c353347cf362ab3fd10ff0 /docs/getting-started.md
parentReleasing debian version 1.1.0-1. (diff)
downloadanta-6818d016122ee845a2011b94bbdad0ed28a9aae7.tar.xz
anta-6818d016122ee845a2011b94bbdad0ed28a9aae7.zip
Merging upstream version 1.2.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'docs/getting-started.md')
-rw-r--r--docs/getting-started.md165
1 files changed, 13 insertions, 152 deletions
diff --git a/docs/getting-started.md b/docs/getting-started.md
index aac88c6..bcd5a2c 100644
--- a/docs/getting-started.md
+++ b/docs/getting-started.md
@@ -48,26 +48,7 @@ management api http-commands
ANTA uses an inventory to list the target devices for the tests. You can create a file manually with this format:
```yaml
-anta_inventory:
- hosts:
- - host: 192.168.0.10
- name: spine01
- tags: ['fabric', 'spine']
- - host: 192.168.0.11
- name: spine02
- tags: ['fabric', 'spine']
- - host: 192.168.0.12
- name: leaf01
- tags: ['fabric', 'leaf']
- - host: 192.168.0.13
- name: leaf02
- tags: ['fabric', 'leaf']
- - host: 192.168.0.14
- name: leaf03
- tags: ['fabric', 'leaf']
- - host: 192.168.0.15
- name: leaf04
- tags: ['fabric', 'leaf']
+--8<-- "getting-started/inventory.yml"
```
> You can read more details about how to build your inventory [here](usage-inventory-catalog.md#device-inventory)
@@ -90,31 +71,7 @@ The structure to follow is like:
Here is an example for basic tests:
```yaml
-# Load anta.tests.software
-anta.tests.software:
- - VerifyEOSVersion: # Verifies the device is running one of the allowed EOS version.
- versions: # List of allowed EOS versions.
- - 4.25.4M
- - 4.26.1F
- - '4.28.3M-28837868.4283M (engineering build)'
- - VerifyTerminAttrVersion:
- versions:
- - v1.22.1
-
-anta.tests.system:
- - VerifyUptime: # Verifies the device uptime is higher than a value.
- minimum: 1
- - VerifyNTP:
- - VerifySyslog:
-
-anta.tests.mlag:
- - VerifyMlagStatus:
- - VerifyMlagInterfaces:
- - VerifyMlagConfigSanity:
-
-anta.tests.configuration:
- - VerifyZeroTouch: # Verifies ZeroTouch is disabled.
- - VerifyRunningConfigDiffs:
+--8<-- "getting-started/catalog.yml"
```
## Test your network
@@ -135,128 +92,32 @@ This entrypoint has multiple options to manage test coverage and reporting.
To run the NRFU, you need to select an output format amongst ["json", "table", "text", "tpl-report"]. For a first usage, `table` is recommended. By default all test results for all devices are rendered but it can be changed to a report per test case or per host
+!!! Note
+ The following examples shows how to pass all the CLI options.
+
+ See how to use environment variables instead in the [CLI overview](cli/overview.md#anta-environment-variables)
+
#### Default report using table
```bash
-anta nrfu \
- --username tom \
- --password arista123 \
- --enable \
- --enable-password t \
- --inventory .personal/inventory_atd.yml \
- --catalog .personal/tests-bases.yml \
- table --tags leaf
-
-
-╭────────────────────── Settings ──────────────────────╮
-│ Running ANTA tests: │
-│ - ANTA Inventory contains 6 devices (AsyncEOSDevice) │
-│ - Tests catalog contains 10 tests │
-╰──────────────────────────────────────────────────────╯
-[10:17:24] INFO Running ANTA tests... runner.py:75
- • Running NRFU Tests...100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40/40 • 0:00:02 • 0:00:00
-
- All tests results
-┏━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
-┃ Device IP ┃ Test Name ┃ Test Status ┃ Message(s) ┃ Test description ┃ Test category ┃
-┡━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
-│ leaf01 │ VerifyEOSVersion │ success │ │ Verifies the device is running one of the allowed EOS version. │ software │
-│ leaf01 │ VerifyTerminAttrVersion │ success │ │ Verifies the device is running one of the allowed TerminAttr │ software │
-│ │ │ │ │ version. │ │
-│ leaf01 │ VerifyUptime │ success │ │ Verifies the device uptime is higher than a value. │ system │
-│ leaf01 │ VerifyNTP │ success │ │ Verifies NTP is synchronised. │ system │
-│ leaf01 │ VerifySyslog │ success │ │ Verifies the device had no syslog message with a severity of warning │ system │
-│ │ │ │ │ (or a more severe message) during the last 7 days. │ │
-│ leaf01 │ VerifyMlagStatus │ skipped │ MLAG is disabled │ This test verifies the health status of the MLAG configuration. │ mlag │
-│ leaf01 │ VerifyMlagInterfaces │ skipped │ MLAG is disabled │ This test verifies there are no inactive or active-partial MLAG │ mlag │
-[...]
-│ leaf04 │ VerifyMlagConfigSanity │ skipped │ MLAG is disabled │ This test verifies there are no MLAG config-sanity inconsistencies. │ mlag │
-│ leaf04 │ VerifyZeroTouch │ success │ │ Verifies ZeroTouch is disabled. │ configuration │
-│ leaf04 │ VerifyRunningConfigDiffs │ success │ │ │ configuration │
-└───────────┴──────────────────────────┴─────────────┴──────────────────┴──────────────────────────────────────────────────────────────────────┴───────────────┘
+--8<-- "getting-started/anta_nrfu_table.sh"
+--8<-- "getting-started/anta_nrfu_table.output"
```
#### Report in text mode
```bash
-$ anta nrfu \
- --username tom \
- --password arista123 \
- --enable \
- --enable-password t \
- --inventory .personal/inventory_atd.yml \
- --catalog .personal/tests-bases.yml \
- text --tags leaf
-
-╭────────────────────── Settings ──────────────────────╮
-│ Running ANTA tests: │
-│ - ANTA Inventory contains 6 devices (AsyncEOSDevice) │
-│ - Tests catalog contains 10 tests │
-╰──────────────────────────────────────────────────────╯
-[10:20:47] INFO Running ANTA tests... runner.py:75
- • Running NRFU Tests...100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40/40 • 0:00:01 • 0:00:00
-leaf01 :: VerifyEOSVersion :: SUCCESS
-leaf01 :: VerifyTerminAttrVersion :: SUCCESS
-leaf01 :: VerifyUptime :: SUCCESS
-leaf01 :: VerifyNTP :: SUCCESS
-leaf01 :: VerifySyslog :: SUCCESS
-leaf01 :: VerifyMlagStatus :: SKIPPED (MLAG is disabled)
-leaf01 :: VerifyMlagInterfaces :: SKIPPED (MLAG is disabled)
-leaf01 :: VerifyMlagConfigSanity :: SKIPPED (MLAG is disabled)
-[...]
+--8<-- "getting-started/anta_nrfu_text.sh"
+--8<-- "getting-started/anta_nrfu_text.output"
```
#### Report in JSON format
```bash
-$ anta nrfu \
- --username tom \
- --password arista123 \
- --enable \
- --enable-password t \
- --inventory .personal/inventory_atd.yml \
- --catalog .personal/tests-bases.yml \
- json --tags leaf
-
-╭────────────────────── Settings ──────────────────────╮
-│ Running ANTA tests: │
-│ - ANTA Inventory contains 6 devices (AsyncEOSDevice) │
-│ - Tests catalog contains 10 tests │
-╰──────────────────────────────────────────────────────╯
-[10:21:51] INFO Running ANTA tests... runner.py:75
- • Running NRFU Tests...100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40/40 • 0:00:02 • 0:00:00
-╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
-│ JSON results of all tests │
-╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
-[
- {
- "name": "leaf01",
- "test": "VerifyEOSVersion",
- "categories": [
- "software"
- ],
- "description": "Verifies the device is running one of the allowed EOS version.",
- "result": "success",
- "messages": [],
- "custom_field": "None",
- },
- {
- "name": "leaf01",
- "test": "VerifyTerminAttrVersion",
- "categories": [
- "software"
- ],
- "description": "Verifies the device is running one of the allowed TerminAttr version.",
- "result": "success",
- "messages": [],
- "custom_field": "None",
- },
-[...]
-]
+--8<-- "getting-started/anta_nrfu_json.sh"
+--8<-- "getting-started/anta_nrfu_json.output"
```
-You can find more information under the **usage** section of the website
-
### Basic usage in a Python script
```python