diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4f7dac6a327ee188433624ae348a8691d0eb4bf9..c0c406ef354c0579fb1367b5c59d4d59270c4062 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -16,17 +16,30 @@ stages: - static-analysis - unit-tests - integration-tests -linting: +newline_at_eof: + stage: linting + before_script: + - pip3 install -r devices/test-requirements.txt + script: + - flake8 --filename *.sh,*.conf,*.md,*.yml --select=W292 --exclude .tox,.egg-info,docker +python_linting: stage: linting script: - cd devices - tox -e pep8 -static-analysis: +bandit: stage: static-analysis - allow_failure: true script: - cd devices - tox -e bandit +shellcheck: + stage: static-analysis + allow_failure: true + before_script: + - sudo apt-get update + - sudo apt-get install -y shellcheck + script: + - shellheck **/*.sh unit_test: stage: unit-tests before_script: diff --git a/README.md b/README.md index b7b4398a9581bf0771fa2e8a669f1e53c92b75d2..192b3edb7713088120b672065296575c255adfa6 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # Tango Station Control -Station Control software related to Tango devices. \ No newline at end of file +Station Control software related to Tango devices. diff --git a/devices/clients/README.md b/devices/clients/README.md index 3613344461e8abb64e5a68a1d30c68b3927d22b4..083420b38dc611fd8096110ca42d46c375d3db60 100644 --- a/devices/clients/README.md +++ b/devices/clients/README.md @@ -1,4 +1,4 @@ this folder contains all the comms_client implementations for organisation ### How to add a new client -soon™ \ No newline at end of file +soon™ diff --git a/devices/integration_test/README.md b/devices/integration_test/README.md index 3292bfa0049b5c2312f8e0536e00cc581433ed61..d4f91ace15cca03e924b9139b25bdb5294944576 100644 --- a/devices/integration_test/README.md +++ b/devices/integration_test/README.md @@ -23,4 +23,4 @@ $LOFAR20_DIR/sbin/run_integration_test.sh ## Limitations Our makefile will always launch the new container upon creation, resulting in -the integration tests actually being run twice. \ No newline at end of file +the integration tests actually being run twice. diff --git a/devices/test-requirements.txt b/devices/test-requirements.txt index c97375e938b0466da884581c339f2c5735472c62..af6d9e4218ad53b977b444f7db95ead52d649b21 100644 --- a/devices/test-requirements.txt +++ b/devices/test-requirements.txt @@ -4,6 +4,9 @@ doc8>=0.8.0 # Apache-2.0 flake8>=3.8.0 # MIT +flake8-breakpoint>=1.1.0 # MIT +flake8-debugger>=4.0.0 #MIT +flake8-mock>=0.3 #GPL bandit>=1.6.0 # Apache-2.0 hacking>=3.2.0,<3.3.0 # Apache-2.0 coverage>=5.2.0 # Apache-2.0 diff --git a/devices/tox.ini b/devices/tox.ini index 4869bad0462b461a28babab5ae50375b957b44fa..e9a1fb2c0efd3ddd382cc26df4a5a3c27e4871b8 100644 --- a/devices/tox.ini +++ b/devices/tox.ini @@ -42,5 +42,5 @@ commands = [flake8] filename = *.py,.stestr.conf,.txt -select = W292 +select = W292,B601,B602,T100,M001 exclude=.tox,.egg-info diff --git a/docker-compose/tango-prometheus-exporter/get_metrics.sh b/docker-compose/tango-prometheus-exporter/get_metrics.sh index b2801728979d1a7b788c44a13e882a4750a83c30..0401a2564fbaf5e71c4b8c8ff971ea2f08fe62d2 100755 --- a/docker-compose/tango-prometheus-exporter/get_metrics.sh +++ b/docker-compose/tango-prometheus-exporter/get_metrics.sh @@ -1 +1 @@ -curl $(kubectl get svc -n tango-grafana -o jsonpath='{.items[?(@.metadata.name=="tango-exporter-service-0")].spec.clusterIP}')/metrics \ No newline at end of file +curl $(kubectl get svc -n tango-grafana -o jsonpath='{.items[?(@.metadata.name=="tango-exporter-service-0")].spec.clusterIP}')/metrics diff --git a/sbin/run_integration_test.sh b/sbin/run_integration_test.sh index d54163625541c13816bf0309c09a2713ce35add9..cebbf1479fd1a349cd100fb53745eaacd59fa4a1 100755 --- a/sbin/run_integration_test.sh +++ b/sbin/run_integration_test.sh @@ -19,4 +19,4 @@ cd "$LOFAR20_DIR/docker-compose" || exit 1 make start integration-test # Run the integration test with the output displayed on stdout -docker start -a integration-test \ No newline at end of file +docker start -a integration-test