Juju Lint

juju deploy cs:juju-lint
Show information
Channel Version Base
latest/stable 0
20.04 18.04 16.04

Base:

About

Juju model linter with configurable policy. Read more


Relevant links


Discuss this charm

Share your thoughts on this charm with the community on discourse.

Join the discussion

Overview

Juju Lint - a Juju model linter with configurable policy.

This charm deploys Juju Lint, along with a script to automate its execution, auto_lint.py. In addition, a crontab is deployed to run auto_lint.py, as well as a Nagios check which analyses Juju Lint output and alerts on errors.

Usage

Deploy this charm with:

juju deploy charm-juju-lint juju-lint

The following model connection config values must be set to allow libjuju to retrieve Juju status output. It is HIGHLY recommended that a new user be created and "read" granted to that user on the model defined:

  • controller-endpoint - A controller API endpoint (syntax: "\<hostname>:\<port>")
  • controller-username - A controller user's username
  • controller-password - The respective controller user's password
  • controller-cacert - The controller CA certificate
  • model-uuid - The model UUID

When setting controller-cacert, the following command sytax is recommended:

juju config juju-lint controller-cacert='
-----BEGIN CERTIFICATE-----
<certificate body>
-----END CERTIFICATE-----
'

The following Juju Lint options are available:

  • lint-config - Juju Lint rules file path
  • lint-override - Hash separated subordinate rule overrides (syntax: "\<name>:\<location>#\<name>:\<location>")
  • lint-loglevel - Logging level, either "CRITICAL", "ERROR", "WARNING", "INFO", "DEBUG", or "NOTSET"
  • lint-logfile - Log file path
  • lint-frequency - Specifies how often Juju Lint is run, in minutes

Juju Lint (upstream)