# Ansible 12.0 breaks netlab Jinja2 templates; netlab 25.09-post1 pins Ansible to 11.10 or lower

DevFeed: [Ansible 12.0 breaks netlab Jinja2 templates; netlab 25.09-post1 pins Ansible to 11.10 or lower](<https://devfeed.tech/articles/fatal-ansible-release-12-0-breaks-netlab-jinja2-templates-11242.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2025/09/netlab-25-09-post1/>)

Published: 2025-09-14T17:25:00Z

Content type: release

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Ansible](<https://devfeed.tech/topics/ansible.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Containerlab topology](<https://devfeed.tech/topics/clab-topo.md>)

Tags: [ansible](<https://devfeed.tech/tags/ansible.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [core](<https://devfeed.tech/tags/core.md>), [dependency](<https://devfeed.tech/tags/dependency.md>), [installation](<https://devfeed.tech/tags/installation.md>), [netlab](<https://devfeed.tech/tags/netlab.md>), [pypi](<https://devfeed.tech/tags/pypi.md>), [release](<https://devfeed.tech/tags/release.md>), [troubleshooting](<https://devfeed.tech/tags/troubleshooting.md>)

## AI overview

Ansible 12.0 requires ansible-core 2.19, whose Jinja2 templating changes broke netlab's Containerlab configuration file template. netlab 25.09-post1 checks the Ansible core version and pins installations to Ansible 11.10 or lower, with the install command available for downgrading.

## Source excerpt

On September 9th, the ansible release 12.0 appeared on PyPi. It requires ansible-core release 2.19, which includes breaking changes to Jinja2 templating. netlab Jinja2 templates rely on a few Ansible Jinja2 filters; netlab thus imports and uses those filters, and it looks like those imports pulled in the breaking changes that consequently broke the netlab containerlab configuration file template (details). netlab did not check the Ansible core version (we never had a similar problem in the past), and the installation scripts did not pin the Ansible version (feel free to blame me for this one), which means that any new netlab installation created after September 9th crashed miserably on the simplest lab topologies. This is the workaround we implemented in netlab release 25.09-post1 (released earlier today): Read more ...