Add docstring checking to CI and split various task into different jobs

3 jobs for tn/docstring-linter in 2 minutes and 1 second (queued for 1 second)
Status Job ID Name Coverage
  Test
failed #2063
allowed to fail
lint_docs

00:01:02

passed #2064
lint_style

00:00:27

failed #2065
lint_syntax

00:00:31

 
Name Stage Failure
failed
lint_docs Test There is an unknown failure, please try again
        D401: First line should be in imperative mood; try rephrasing (found 'Convenience')
datamodelvalidator/validator.py:23 in public method `validate_datamodel`:
D401: First line should be in imperative mood ('Validate', not 'Validates')
datamodelvalidator/validator.py:36 in public method `validate`:
D401: First line should be in imperative mood ('Validate', not 'Validates')
ERROR: InvocationError: '/builds/euclid/datamodelvalidator/.tox/lint_docs/bin/pydocstyle datamodelvalidator --convention=numpy --add-ignore=D1'
___________________________________ summary ____________________________________
ERROR: lint_docs: commands failed
ERROR: Job failed: exit code 1
failed
lint_syntax Test There is an unknown failure, please try again
lint_syntax runtests: commands[0] | pylint datamodelvalidator --reports=no --score=no --max-line-length=120 --disable=C,R0903,no-value-for-parameter,protected-access --extension-pkg-whitelist=lxml
No config file found, using default configuration
************* Module datamodelvalidator.filevalidators
W: 16, 4: Useless super delegation in method '__init__' (useless-super-delegation)
R: 69, 8: Unnecessary "else" after "return" (no-else-return)
ERROR: InvocationError: '/builds/euclid/datamodelvalidator/.tox/lint_syntax/bin/pylint datamodelvalidator --reports=no --score=no --max-line-length=120 --disable=C,R0903,no-value-for-parameter,protected-access --extension-pkg-whitelist=lxml'
___________________________________ summary ____________________________________
ERROR: lint_syntax: commands failed
ERROR: Job failed: exit code 1