DEV Community 👩‍💻👨‍💻

Alexey Melezhik
Alexey Melezhik

Posted on

Linting Jinja Templates using Sparrow plugin jinjalint

Meet new Sparrow plugin jinjalint to lint jinja templates.


Let's get started!

Setup a tom task

$ tom --edit jinja-lint
Enter fullscreen mode Exit fullscreen mode
task-run "lint my code", "jinjalint", %(
  args => [
    "templates/",
    ["verbose"]
  ]
);
Enter fullscreen mode Exit fullscreen mode

Put some templates to check into templates/ directories

$ mkdir templates/
Enter fullscreen mode Exit fullscreen mode

Run check

$ tom jinja-lint
21:03:50 10/17/2020 [repository] index updated from file:///home/ubuntu/repo/api/v1/index
21:03:51 10/17/2020 [lint my code] run [jinjalint templates/ --verbose] ...
21:03:51 10/17/2020 [lint my code] Files being analyzed:
21:03:51 10/17/2020 [lint my code] templates/template.html
21:03:51 10/17/2020 [lint my code]
21:03:51 10/17/2020 [lint my code] templates/template.html:3:5: Parse error: expected one of '[:a-z]', 'area', 'base', 'br', 'col', 'command', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'script', 'source', 'style', 'track', 'wbr', '{#', '{%', '{{' at 2:5
21:03:51 10/17/2020 [lint my code] task exit status: 1
21:03:51 10/17/2020 [lint my code] task lint my code FAILED
Enter fullscreen mode Exit fullscreen mode

That is it! You no longer miss errors in your jinja templates.


Check updates on SparrowHub.io - universal automation repository.


Aleksei

Top comments (1)

Collapse
 
_garybell profile image
Gary Bell

Bookmarked. Will look at adding this as a check for my Ansible CI pipeline

Top Heroku Alternatives (For Free!)

Recently Heroku shut down free Heroku Dynos, free Heroku Postgres, and free Heroku Data for Redis on November 28th, 2022. So Meshv Patel put together some free alternatives in this classic DEV post.