Commit aa44ed2b authored by Charles Ferguson's avatar Charles Ferguson
Browse files

Update to latest CI.

parent 5902b084
# All text files should be LFs
* text=auto eol=lf
*.png binary
# Platform annoyances
.DS_Store
# Editor generated files
*.swp
/.project
# Tool generated files
*.pyc
*.pyo
/.project
.noseids
__pycache__
......
......@@ -6,6 +6,7 @@
# Enable submodules
variables:
GIT_STRATEGY: clone
GIT_SUBMODULE_STRATEGY: recursive
......@@ -15,55 +16,103 @@ cache:
- .env
#### Build Jobs ####
#### Static Analysis Jobs ####
lint:
stage: build
stage: static
script:
- bash ci/run lint
artifacts:
when: always
paths:
- artifacts
reports:
junit:
- artifacts/lint-results.xml
docs:
stage: build
stage: static
script:
- bash ci/run docs
artifacts:
when: always
paths:
- artifacts
reports:
junit: artifacts/docs-results.xml
#### Test Jobs ####
#### Unit Test Jobs (or general test) ####
test:
stage: test
stage: unittest
script:
- bash ci/run test
dependencies: []
artifacts:
when: always
paths:
- artifacts
reports:
junit:
- artifacts/test-results.xml
test-python3:
stage: test
stage: unittest
script:
- bash ci/run test -3
dependencies: []
artifacts:
when: always
paths:
- artifacts
reports:
junit:
- artifacts/test-results.xml
coverage:
stage: test
stage: unittest
script:
- bash ci/run coverage
coverage: '/^Overall Coverage: (\d+(?:\.\d+)?)%.*$/'
dependencies: []
artifacts:
when: always
paths:
- artifacts
#### Integration Test Jobs ####
inttest:
stage: inttest
script:
- bash ci/run inttest
dependencies: []
artifacts:
when: always
paths:
- artifacts
reports:
junit:
- artifacts/test-results.xml
when: always
inttest-python3:
stage: inttest
script:
- bash ci/run inttest -3
dependencies: []
artifacts:
when: always
paths:
- artifacts
reports:
junit:
- artifacts/test-results.xml
when: always
#### Stages to execute ####
stages:
- build
- test
- static
# - build
- unittest
- inttest
[submodule "ci"]
path = ci
url = ../ci-scripts
url = ../ci-scripts.git
Subproject commit dc496318ef22ee5aae4f0f6f4db1efe9dd18de68
Subproject commit 306b8d9f3f9e70ac8f24bec22b3494a916ce8712
......@@ -61,7 +61,7 @@ enable=all
# Disable all messages we disagree with.
# N.B. Although the documentation suggests we can safely use multiple lines for 'enable' and 'disable' keywords, this is
# not true: they must all be listed on one long line.
disable=missing-docstring, too-few-public-methods, too-many-locals, too-many-branches, too-many-public-methods, fixme, too-many-statements, too-many-return-statements, too-many-instance-attributes, too-many-arguments, too-many-lines, invalid-name, locally-disabled, suppressed-message, superfluous-parens, file-ignored
disable=missing-docstring, too-few-public-methods, too-many-locals, too-many-branches, too-many-public-methods, fixme, too-many-statements, too-many-return-statements, too-many-instance-attributes, too-many-arguments, too-many-lines, invalid-name, locally-disabled, suppressed-message, superfluous-parens, file-ignored, bad-continuation, no-else-return, useless-object-inheritance, useless-suppression
# TODO We need to re-enable the following checks at some point:
# - bad-continuation
......@@ -92,10 +92,6 @@ reports=no
# (RP0004).
evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10)
# Add a comment according to your evaluation note. This is used by the global
# evaluation report (RP0004).
comment=no
# Template used to display messages. This is a python new-style format string
# used to format the message information. See doc for all details
msg-template={msg_id}:{line:3d},{column}: {obj}: {msg} [{symbol}]
......@@ -103,11 +99,8 @@ msg-template={msg_id}:{line:3d},{column}: {obj}: {msg} [{symbol}]
[BASIC]
# Required attributes for module, separated by a comma
required-attributes=
# List of builtins function names that should not be used, separated by a comma
bad-functions=map, filter, input, assert
bad-functions=map,filter,input,assert
# Good variable names which should always be accepted, separated by a comma
good-names=i,j,k,ex,Run,_,e,log,m,maxDiff,fh,venv
......@@ -203,7 +196,10 @@ ignore-long-lines=^\s*(# )?<?https?://\S+>?$
# else.
single-line-if-stmt=no
# List of optional constructs for which whitespace checking is disabled
# List of optional constructs for which whitespace checking is disabled. `dict-
# separator` is used to allow tabulation in dicts, etc.: {1 : 1,\n222: 2}.
# `trailing-comma` allows a space between comma and closing bracket: (a, ).
# `empty-line` allows space-only lines.
no-space-check=trailing-comma,dict-separator
# Maximum number of lines in a module
......@@ -273,19 +269,17 @@ ignore-mixin-members=yes
# List of module names for which member attributes should not be checked
# (useful for modules/projects where namespaces are manipulated during runtime
# and thus existing member attributes cannot be deduced by static analysis
# and thus existing member attributes cannot be deduced by static analysis. It
# supports qualified module names, as well as Unix pattern matching.
ignored-modules=
# List of classes names for which member attributes should not be checked
# (useful for classes with attributes dynamically set).
# (useful for classes with attributes dynamically set). This supports can work
# with qualified names.
ignored-classes=SQLObject
# When zope mode is activated, add a predefined set of Zope acquired attributes
# to generated-members.
zope=no
# List of members which are set dynamically and missed by pylint inference
# system, and so shouldn't trigger E0201 when accessed. Python regular
# system, and so shouldn't trigger E1101 when accessed. Python regular
# expressions are accepted.
generated-members=REQUEST,acl_users,aq_parent
......@@ -310,10 +304,6 @@ callbacks=cb_,_cb
[CLASSES]
# List of interface methods to ignore, separated by a comma. This is used for
# instance to not check methods defines in Zope's Interface base class.
ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by
# List of method names used to declare (i.e. assign) instance attributes.
defining-attr-methods=__init__,__new__,setUp
......@@ -328,6 +318,12 @@ valid-metaclass-classmethod-first-arg=mcs
exclude-protected=_asdict,_fields,_replace,_source,_make
[ELIF]
# Maximum number of nested blocks for function / method body
max-nested-blocks=5
[DESIGN]
# Maximum number of arguments for function / method
......@@ -361,6 +357,9 @@ min-public-methods=2
# Maximum number of public methods for a class (see R0904).
max-public-methods=20
# Maximum number of boolean expressions in a if statement
max-bool-expr=5
[IMPORTS]
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment