# Buildsheet autogenerated by ravenadm tool -- Do not edit.
NAMEBASE= python-ttp-templates
VERSION= 0.3.6
KEYWORDS= python
VARIANTS= v11 v12
SDESC[v11]= Template Text Parser Templates collections (3.11)
SDESC[v12]= Template Text Parser Templates collections (3.12)
HOMEPAGE= https://github.com/dmulyalin/ttp_templates
CONTACT= Python_Automaton[python@ironwolf.systems]
DOWNLOAD_GROUPS= main
SITES[main]= PYPIWHL/ca/c2/dee6eb0b7691cbfbf82ed9596dab64dd6c61b7fa27e5e4d0763e51de3599
DISTFILE[1]= ttp_templates-0.3.6-py3-none-any.whl:main
DF_INDEX= 1
SPKGS[v11]= single
SPKGS[v12]= single
OPTIONS_AVAILABLE= PY311 PY312
OPTIONS_STANDARD= none
VOPTS[v11]= PY311=ON PY312=OFF
VOPTS[v12]= PY311=OFF PY312=ON
DISTNAME= ttp_templates-0.3.6.dist-info
GENERATED= yes
[PY311].RUN_DEPENDS_ON= python-ttp:single:v11
[PY311].USES_ON= python:v11,wheel
[PY312].RUN_DEPENDS_ON= python-ttp:single:v12
[PY312].USES_ON= python:v12,wheel
[FILE:2328:descriptions/desc.single]
[Downloads]
[PyPI versions]
# Template Text Parser Templates
This repository contains a collection of [TTP] templates.
If you solved a problem using TTP and feel that your work can be useful to
other people, feel
free to raise an issue or submit pull request to include your template(s)
in this repository.
Refer to [Contribute Guide] for details.
Documentation: [https://dmulyalin.github.io/ttp_templates/]
Repository: [https://github.com/dmulyalin/ttp_templates]
TTP: [https://ttp.readthedocs.io/]
## Installation
From PyPi:
`pip install ttp-templates`
or latest from GitHub master branch (need Git installed on the system):
`pip install git+https://github.com/dmulyalin/ttp_templates.git`
## Sample usage
This example demonstrates how to parse `Test Platform` output for `show run
| sec interface` command using
`platform/test_platform_show_run_pipe_sec_interface.txt` template.
Code
```python
from ttp_templates import parse_output
import pprint
data = """
interface GigabitEthernet1/3.251
description Customer #32148
encapsulation dot1q 251
ip address 172.16.33.10 255.255.255.128
shutdown
!
interface GigabitEthernet1/3.251
description Customer #32148
encapsulation dot1q 251
ip address 172.16.33.10 255.255.255.128
shutdown
"""
result = parse_output(
data=data,
platform="Test Platform",
command="show run | sec interface"
)
pprint.pprint(result)
# prints:
# [[[{'description': 'Customer #32148',
# 'disabled': True,
# 'dot1q': '251',
# 'interface': 'GigabitEthernet1/3.251',
# 'ip': '172.16.33.10',
# 'mask': '255.255.255.128'},
# {'description': 'Customer #32148',
# 'disabled': True,
# 'dot1q': '251',
# 'interface': 'GigabitEthernet1/3.251',
# 'ip': '172.16.33.10',
# 'mask': '255.255.255.128'}]]]
```
Sample code to parse `Cisco IOS` output in a structure compatible with
`ietf-interfaces` YANG module.
Code
```python
from ttp_templates import get_template
from ttp import ttp
import pprint
data1 = """
interface GigabitEthernet1/3.251
description Customer #32148
encapsulation dot1q 251
ip address 172.16.33.10 255.255.255.128
shutdown
!
interface GigabitEthernet1/4
description vCPEs access control
ip address 172.16.33.10 255.255.255.128
!
"""
data2 = """
[FILE:115:distinfo]
a126a70b23c428b541f458400eac98582894937ef3825c423d08d4384b4867ae 75425 ttp_templates-0.3.6-py3-none-any.whl