52 lines
1.7 KiB
ReStructuredText
52 lines
1.7 KiB
ReStructuredText
|
dib-lint
|
||
|
========
|
||
|
|
||
|
dib-lint provides a way to check for common errors in diskimage-builder
|
||
|
elements. To use it, simply run the ``dib-lint`` script in a directory
|
||
|
containing an ``elements`` directory. The checks will be run against
|
||
|
every file found under ``elements``.
|
||
|
|
||
|
The following is a list of what is currently caught by dib-lint:
|
||
|
|
||
|
* executable: Ensure any files that begin with #! are executable
|
||
|
* indent: Ensure that all source code is using an indent of four spaces
|
||
|
* element-deps ordering: Ensure all element-deps files are alphabetized
|
||
|
* /bin/bash: Ensure all scripts are using bash explicitly
|
||
|
* sete: Ensure all scripts are set -e
|
||
|
* setu: Ensure all scripts are set -u
|
||
|
* setpipefail: Ensure all scripts are set -o pipefail
|
||
|
* dibdebugtrace: Ensure all scripts respect the DIB_DEBUG_TRACE variable
|
||
|
* tabindent: Ensure no tabs are used for indentation
|
||
|
* newline: Ensure that every file ends with a newline
|
||
|
* mddocs: Ensure that only markdown-formatted documentation is used
|
||
|
* yaml validation: Ensure that any yaml files in the repo have valid syntax
|
||
|
|
||
|
Some of the checks can be omitted, either for an entire project or for an
|
||
|
individual file. Project exclusions go in tox.ini, using the following
|
||
|
section format::
|
||
|
|
||
|
[dib-lint]
|
||
|
ignore=sete setpipefail
|
||
|
|
||
|
This will cause the set -e and set -o pipefail checks to be ignored.
|
||
|
|
||
|
File-specific exclusions are specified as a comment in the relevant file,
|
||
|
using the following format::
|
||
|
|
||
|
# dib-lint: disable=sete setpipefail
|
||
|
|
||
|
This will exclude the same tests, but only for the file in which the comment
|
||
|
appears.
|
||
|
|
||
|
Only some of the checks can be disabled. The ones available for exclusion are:
|
||
|
|
||
|
* executable
|
||
|
* indent
|
||
|
* sete
|
||
|
* setu
|
||
|
* setpipefail
|
||
|
* dibdebugtrace
|
||
|
* tabindent
|
||
|
* newline
|
||
|
* mddocs
|