Page MenuHomeVyOS Platform

Add Jinja2 linter to vyos-1x build process
Closed, ResolvedPublicFEATURE REQUEST

Description

(21:03) cpo lnx01:~/vyos-1x [j2lint] # j2lint data/templates/frr/rpki.frr.tmpl.j2
Jinja2 linting issues found
************ File data/templates/frr/rpki.frr.tmpl.j2
data/templates/frr/rpki.frr.tmpl.j2:5 Bad Indentation, expected 5, got 3 (jinja-statements-indentation)
data/templates/frr/rpki.frr.tmpl.j2:7 Bad Indentation, expected 9, got 5 (jinja-statements-indentation)
data/templates/frr/rpki.frr.tmpl.j2:9 Bad Indentation, expected 9, got 5 (jinja-statements-indentation)
data/templates/frr/rpki.frr.tmpl.j2:11 Bad Indentation, expected 9, got 5 (jinja-statements-indentation)
data/templates/frr/rpki.frr.tmpl.j2:12 Bad Indentation, expected 5, got 3 (jinja-statements-indentation)
(21:03) cpo lnx01:~/vyos-1x [j2lint] # vim data/templates/frr/rpki.frr.tmpl.j2
(21:03) cpo lnx01:~/vyos-1x [j2lint] # j2lint data/templates/frr/rpki.frr.tmpl.j2
Linting complete. No problems found.

Every Jinja2 template that should be linted requires to use .j2 file extension over .tmpl (which we currently use) - also indention is 4 spaces (like most of the world is doing - we have 2. Given the fact that our Python code uses indent=4 I am +1 on applying this on the Jinja templates, too

Then every inbound PR can get a linting check for free.

Linter: https://github.com/aristanetworks/j2lint/tree/341b5d5db86e095b622f09770cb6367a1583620e

Details

Version
-
Is it a breaking change?
Stricter validation
Issue type
Internal change (not visible to end users)

Related Objects

Mentioned In
rVYOSONEXf7473c735ab2: container: T4353: capitalize ascii -> ASCII
rVYOSONEX8daf7f95d832: container: T4353: capitalize ascii -> ASCII
rVYOSONEX5f34dfc447ba: dns: T4353: fix warning "Wait at least 5 minutes between update attempts"
rVYOSONEX459b3ab03c41: frr: T4353: fix "exit-vrf" indention
rVYOSONEX2663a891ed46: nhrp: T4353: use ".service" suffix on systemd name
rVYOSONEXc2dcbdbfd7bd: container: T4353: fix conf-mode script name
rVYOSONEXa8a4b61c22a3: ipsec: T4353: use "" quotes on road-warrior id
rVYOSONEX318f81cba207: ipsec: T4353: bugfix template extension
rVYOSONEX5ec208ed9ee0: http: api: T4353: fix Jinja2 linting errors
rVYOSONEXd956fda57f32: accel-ppp: T4353: fix Jinja2 linting errors
rVYOSONEXf38ce741c285: system-logs: T4353: fix Jinja2 linting errors
rVYOSONEX01bdf2dfdb09: openconnect: T4353: fix Jinja2 linting errors
rVYOSONEX780d4fe16cd8: syslog: T4353: fix Jinja2 linting errors
rVYOSONEXb6a307424451: igmp-proxy: T4353: fix Jinja2 linting errors
rVYOSONEX644a0fe475b1: pppoe: T4353: fix Jinja2 linting errors
rVYOSONEX1b80aec26798: firewall: zone: T4353: fix Jinja2 linting errors
rVYOSONEX4400d11709a8: nhrp: T4353: fix Jinja2 linting errors
rVYOSONEXe3c657e9f4d8: lcd: T4353: fix Jinja2 linting errors
rVYOSONEX5271cf5bfec2: vrrp: T4353: fix Jinja2 linting errors
rVYOSONEX59290c857237: system-options: T4353: fix Jinja2 linting errors
rVYOSONEX9eab0cdd0bbe: firewall: T4353: fix Jinja2 linting errors
rVYOSONEX0565b602ac8c: router-advert: T4353: fix Jinja2 linting errors
rVYOSONEX8abb6c0a7473: ids: T4353: fix Jinja2 linting errors
rVYOSONEX8b0ee4d17279: mdns-repeater: T4353: fix Jinja2 linting errors
rVYOSONEX49b1afc25b73: ipsec: T4353: fix Jinja2 linting errors
rVYOSONEX3f657383cdd9: login: T4353: fix Jinja2 linting errors
rVYOSONEX992c84749366: vrf: T4353: fix Jinja2 linting errors
rVYOSONEXe0f1e495b81c: flow-accounting: T4353: fix Jinja2 linting errors
rVYOSONEXeafe13ace604: webproxy: T4353: fix Jinja2 linting errors
rVYOSONEXc621175631ab: serial-console: T4353: fix Jinja2 linting errors
rVYOSONEX7c71e956e8e1: telegraf: T4353: fix Jinja2 linting errors
rVYOSONEX5ffbd74baee4: snmp: T4353: fix Jinja2 linting errors
rVYOSONEXf0a13824f39f: lldp: T4353: fix Jinja2 linting errors
rVYOSONEX92f266b733a5: tftp-server: T4353: fix Jinja2 linting errors
rVYOSONEXe6af32344b16: container: T4353: fix Jinja2 linting errors
rVYOSONEXa30209ae0be3: conntrackd: T4353: fix Jinja2 linting errors
rVYOSONEX827cefbcbfa2: conserver: T4353: fix Jinja2 linting errors
rVYOSONEX2f507669fd7f: conntrack: T4353: fix Jinja2 linting errors
rVYOSONEX578ce55e5688: bcast-relay: T4353: fix Jinja2 linting errors
rVYOSONEX297fd814528b: openvpn: T4351: bugfix of initial value on Jinja2 namespace
rVYOSONEX217f5d42e17a: openvpn: T4353: fix Jinja2 linting errors
rVYOSONEXf2b722a88792: openvpn: T4353: T4351: fix generation of openvpn-option string passed to daemon
rVYOSONEX039e323d7e46: dhcp(v6)-client: T4353: fix Jinja2 linting errors
rVYOSONEXcb014d8818a8: dhcp(v6)-relay: T4353: fix Jinja2 linting errors
rVYOSONEX68f8acbaf443: dns: T4353: fix Jinja2 linting errors
rVYOSONEXabfe42d11137: dhcp(v6)-server: T4353: fix Jinja2 linting errors
rVYOSONEX96a9ebc6a06a: salt-minion: T4353: fix Jinja2 linting errors
rVYOSONEX4552f523c325: wifi: T4353: fix Jinja2 linting errors
rVYOSONEXf03969353099: macsec: T4353: fix Jinja2 linting errors
rVYOSONEXf40a192635ec: ethernet: T4353: fix Jinja2 linting errors
rVYOSONEXdbfc2add3434: ssh: T4353: fix Jinja2 linting errors
rVYOSONEXb0acc3a58f75: ntp: T4353: fix Jinja2 linting errors
rVYOSONEXdf045eca2f6c: frr: T4353: fix Jinja2 linting errors
rVYOSONEX8ba3ef37d55f: frr: rpki: T4353: add ".j2" file extension on Jinja2 template
rVYOSONEX0f6da5dc6a76: T4353: GitHub: enable workflow for package testing
rVYOSONEXf1b031589e6c: T4353: enable linting of Jinja2 templates

Event Timeline

c-po changed the task status from Open to In progress.
c-po claimed this task.
c-po triaged this task as Wishlist priority.
c-po edited a custom field.
c-po updated the task description. (Show Details)
c-po updated the task description. (Show Details)