--- repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v2.1.0 hooks: - id: end-of-file-fixer - id: trailing-whitespace - id: mixed-line-ending - id: check-byte-order-marker - id: check-executables-have-shebangs - id: check-merge-conflict - id: debug-statements - id: flake8 entry: flake8 --ignore=E24,E121,E122,E123,E124,E126,E226,E265,E305,E402,F401,F405,E501,E704,F403,F841,W503 # TODO(cloudnull): These codes were added to pass the lint check. # All of these ignore codes should be resolved in # future PRs. - id: check-yaml files: .*\.(yaml|yml)$ - repo: https://github.com/adrienverge/yamllint.git rev: v1.15.0 hooks: - id: yamllint files: \.(yaml|yml)$ types: [file, yaml] entry: yamllint --strict -f parsable - repo: https://github.com/ansible/ansible-lint rev: v4.1.1a2 hooks: - id: ansible-lint files: \.(yaml|yml)$ entry: >- ansible-lint --force-color -v -x "ANSIBLE0006,ANSIBLE0007,ANSIBLE0010,ANSIBLE0012,ANSIBLE0013,ANSIBLE0016" --exclude=tripleo_ansible/roles.galaxy # TODO(cloudnull): These codes were added to pass the lint check. # Things found within roles.galaxy are external # and not something maintained here. - repo: https://github.com/openstack-dev/bashate.git rev: 0.6.0 hooks: - id: bashate entry: bashate --error . --verbose --ignore=E006,E040 # Run bashate check for all bash scripts # Ignores the following rules: # E006: Line longer than 79 columns (as many scripts use jinja # templating, this is very difficult) # E040: Syntax error determined using `bash -n` (as many scripts # use jinja templating, this will often fail and the syntax # error will be discovered in execution anyway)