mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-02-06 03:13:42 -05:00
@@ -4,5 +4,5 @@ schedule: "every week on monday"
|
||||
|
||||
search: False
|
||||
requirements:
|
||||
- requirements-app.txt
|
||||
- requirements-dev.txt
|
||||
- requirements.in
|
||||
- requirements_for_test.in
|
||||
|
||||
47
Makefile
47
Makefile
@@ -27,6 +27,8 @@ $(eval export CF_HOME)
|
||||
|
||||
NOTIFY_CREDENTIALS ?= ~/.notify-credentials
|
||||
|
||||
VIRTUALENV_ROOT := $(shell [ -z $$VIRTUAL_ENV ] && echo $$(pwd)/venv || echo $$VIRTUAL_ENV)
|
||||
|
||||
|
||||
## DEVELOPMENT
|
||||
|
||||
@@ -34,21 +36,35 @@ NOTIFY_CREDENTIALS ?= ~/.notify-credentials
|
||||
help:
|
||||
@cat $(MAKEFILE_LIST) | grep -E '^[a-zA-Z_-]+:.*?## .*$$' | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
|
||||
|
||||
.PHONY: dependencies
|
||||
dependencies: ## Install build dependencies
|
||||
.PHONY: virtualenv
|
||||
virtualenv:
|
||||
[ -z $$VIRTUAL_ENV ] && [ ! -d venv ] && python3 -m venv venv || true
|
||||
|
||||
.PHONY: upgrade-pip
|
||||
upgrade-pip: virtualenv
|
||||
${VIRTUALENV_ROOT}/bin/pip install --upgrade pip
|
||||
|
||||
.PHONY: requirements
|
||||
requirements: upgrade-pip requirements.txt ## Install dependencies for running the app
|
||||
${VIRTUALENV_ROOT}/bin/pip install -r requirements.txt
|
||||
|
||||
.PHONY: requirements-for-test
|
||||
requirements-for-test: upgrade-pip requirements_for_test.txt ## Install all dependencies for running the app, development and testing
|
||||
${VIRTUALENV_ROOT}/bin/pip install -r requirements_for_test.txt
|
||||
|
||||
.PHONY: frontend
|
||||
frontend:
|
||||
npm set progress=false
|
||||
npm install
|
||||
npm rebuild node-sass
|
||||
pip install -r requirements_for_test.txt
|
||||
|
||||
.PHONY: generate-version-file
|
||||
generate-version-file: ## Generates the app version file
|
||||
@echo -e "__git_commit__ = \"${GIT_COMMIT}\"\n__time__ = \"${DATE}\"" > ${APP_VERSION_FILE}
|
||||
|
||||
.PHONY: build
|
||||
build: dependencies generate-version-file ## Build project
|
||||
build: frontend requirements-for-test generate-version-file ## Build project
|
||||
npm run build
|
||||
pip install -r requirements.txt
|
||||
|
||||
.PHONY: test
|
||||
test: ## Run tests
|
||||
@@ -59,23 +75,10 @@ fix-imports:
|
||||
isort -rc ./app ./tests
|
||||
|
||||
.PHONY: freeze-requirements
|
||||
freeze-requirements:
|
||||
rm -rf venv-freeze
|
||||
virtualenv -p python3 venv-freeze
|
||||
$$(pwd)/venv-freeze/bin/pip install -r requirements-app.txt
|
||||
echo '# pyup: ignore file' > requirements.txt
|
||||
echo '# This file is autogenerated. Do not edit it manually.' >> requirements.txt
|
||||
cat requirements-app.txt >> requirements.txt
|
||||
echo '' >> requirements.txt
|
||||
$$(pwd)/venv-freeze/bin/pip freeze -r <(sed '/^--/d' requirements-app.txt) | sed -n '/The following requirements were added by pip freeze/,$$p' >> requirements.txt
|
||||
rm -rf venv-freeze
|
||||
|
||||
.PHONY: test-requirements
|
||||
test-requirements:
|
||||
@diff requirements-app.txt requirements.txt | grep '<' \
|
||||
&& { echo "requirements.txt doesn't match requirements-app.txt."; \
|
||||
echo "Run 'make freeze-requirements' to update."; exit 1; } \
|
||||
|| { echo "requirements.txt is up to date"; exit 0; }
|
||||
freeze-requirements: ## create static requirements.txt
|
||||
${VIRTUALENV_ROOT}/bin/pip install pip-tools
|
||||
${VIRTUALENV_ROOT}/bin/pip-compile requirements.in
|
||||
${VIRTUALENV_ROOT}/bin/pip-compile requirements_for_test.in
|
||||
|
||||
.PHONY: prepare-docker-build-image
|
||||
prepare-docker-build-image: ## Prepare the Docker builder image
|
||||
|
||||
170
requirements.txt
170
requirements.txt
@@ -1,88 +1,84 @@
|
||||
# pyup: ignore file
|
||||
# This file is autogenerated. Do not edit it manually.
|
||||
# Run `make freeze-requirements` to update requirements.txt
|
||||
# with package version changes made in requirements-app.txt
|
||||
#
|
||||
# This file is autogenerated by pip-compile
|
||||
# To update, run:
|
||||
#
|
||||
# pip-compile requirements.in
|
||||
#
|
||||
ago==0.0.93 # via -r requirements.in
|
||||
awscli-cwlogs==1.4.6 # via -r requirements.in
|
||||
awscli==1.18.211 # via awscli-cwlogs, notifications-utils
|
||||
bleach==3.2.1 # via notifications-utils
|
||||
blinker==1.4 # via -r requirements.in, gds-metrics
|
||||
boto3==1.16.51 # via notifications-utils
|
||||
botocore==1.19.51 # via awscli, boto3, s3transfer
|
||||
cachetools==4.2.0 # via notifications-utils
|
||||
certifi==2020.12.5 # via requests
|
||||
chardet==4.0.0 # via requests
|
||||
click==7.1.2 # via flask
|
||||
colorama==0.4.3 # via awscli
|
||||
dnspython==1.16.0 # via eventlet
|
||||
docopt==0.6.2 # via notifications-python-client
|
||||
docutils==0.15.2 # via awscli
|
||||
et-xmlfile==1.0.1 # via openpyxl
|
||||
eventlet==0.30.0 # via -r requirements.in
|
||||
flask-login==0.5.0 # via -r requirements.in
|
||||
flask-redis==0.4.0 # via notifications-utils
|
||||
flask-wtf==0.14.3 # via -r requirements.in
|
||||
flask==1.1.2 # via -r requirements.in, flask-login, flask-redis, flask-wtf, gds-metrics, notifications-utils
|
||||
future==0.18.2 # via notifications-python-client
|
||||
gds-metrics==0.2.4 # via -r requirements.in
|
||||
geojson==2.5.0 # via notifications-utils
|
||||
govuk-bank-holidays==0.8 # via -r requirements.in, notifications-utils
|
||||
git+https://github.com/alphagov/govuk-frontend-jinja.git@v0.5.1-alpha#egg=govuk-frontend-jinja==0.5.1-alpha # via -r requirements.in
|
||||
greenlet==0.4.17 # via eventlet
|
||||
gunicorn==20.0.4 # via -r requirements.in
|
||||
humanize==3.2.0 # via -r requirements.in
|
||||
idna==2.10 # via requests
|
||||
itsdangerous==1.1.0 # via -r requirements.in, flask, flask-wtf, notifications-utils
|
||||
jdcal==1.4.1 # via openpyxl
|
||||
jinja2==2.11.2 # via flask, govuk-frontend-jinja, notifications-utils
|
||||
jmespath==0.10.0 # via boto3, botocore
|
||||
lml==0.1.0 # via pyexcel, pyexcel-io
|
||||
lxml==4.6.2 # via pyexcel-ezodf, pyexcel-ods3
|
||||
markupsafe==1.1.1 # via jinja2, wtforms
|
||||
mistune==0.8.4 # via notifications-utils
|
||||
monotonic==1.5 # via notifications-python-client, notifications-utils
|
||||
notifications-python-client==5.7.1 # via -r requirements.in
|
||||
git+https://github.com/alphagov/notifications-utils.git@43.7.0#egg=notifications-utils==43.7.0 # via -r requirements.in
|
||||
openpyxl==3.0.5 # via pyexcel-xlsx
|
||||
orderedset==2.0.3 # via notifications-utils
|
||||
packaging==20.8 # via bleach
|
||||
phonenumbers==8.12.15 # via notifications-utils
|
||||
prometheus-client==0.9.0 # via -r requirements.in, gds-metrics
|
||||
pyasn1==0.4.8 # via rsa
|
||||
pyexcel-ezodf==0.3.4 # via pyexcel-ods3
|
||||
pyexcel-io==0.6.4 # via -r requirements.in, pyexcel, pyexcel-ods3, pyexcel-xls, pyexcel-xlsx
|
||||
pyexcel-ods3==0.6.0 # via -r requirements.in
|
||||
pyexcel-xls==0.6.2 # via -r requirements.in
|
||||
pyexcel-xlsx==0.6.0 # via -r requirements.in
|
||||
pyexcel==0.6.6 # via -r requirements.in
|
||||
pyjwt==2.0.0 # via notifications-python-client
|
||||
pyparsing==2.4.7 # via packaging
|
||||
pypdf2==1.26.0 # via notifications-utils
|
||||
python-dateutil==2.8.1 # via awscli-cwlogs, botocore
|
||||
python-json-logger==2.0.1 # via notifications-utils
|
||||
pytz==2020.5 # via -r requirements.in, notifications-utils
|
||||
pyyaml==5.3.1 # via awscli, notifications-utils
|
||||
redis==3.5.3 # via flask-redis
|
||||
requests==2.25.1 # via awscli-cwlogs, govuk-bank-holidays, notifications-python-client, notifications-utils
|
||||
rsa==4.5 # via awscli
|
||||
s3transfer==0.3.3 # via awscli, boto3
|
||||
shapely==1.7.1 # via -r requirements.in
|
||||
six==1.15.0 # via awscli-cwlogs, bleach, eventlet, govuk-bank-holidays, python-dateutil
|
||||
smartypants==2.0.1 # via notifications-utils
|
||||
statsd==3.3.0 # via notifications-utils
|
||||
texttable==1.6.3 # via pyexcel
|
||||
urllib3==1.26.2 # via botocore, requests
|
||||
webencodings==0.5.1 # via bleach
|
||||
werkzeug==1.0.1 # via flask
|
||||
wtforms==2.3.3 # via flask-wtf
|
||||
xlrd==1.2.0 # via pyexcel-xls
|
||||
xlwt==1.3.0 # via pyexcel-xls
|
||||
|
||||
ago==0.0.93
|
||||
govuk-bank-holidays==0.8
|
||||
humanize==3.2.0
|
||||
Flask==1.1.2
|
||||
Flask-WTF==0.14.3
|
||||
Flask-Login==0.5.0
|
||||
|
||||
blinker==1.4
|
||||
pyexcel==0.6.6
|
||||
pyexcel-io==0.6.4
|
||||
pyexcel-xls==0.6.2
|
||||
pyexcel-xlsx==0.6.0
|
||||
pyexcel-ods3==0.6.0
|
||||
pytz==2020.5
|
||||
gunicorn==20.0.4
|
||||
eventlet==0.30.0
|
||||
notifications-python-client==5.7.1
|
||||
Shapely==1.7.1
|
||||
|
||||
# PaaS
|
||||
awscli-cwlogs>=1.4,<1.5
|
||||
itsdangerous==1.1.0
|
||||
|
||||
git+https://github.com/alphagov/notifications-utils.git@43.7.0#egg=notifications-utils==43.7.0
|
||||
git+https://github.com/alphagov/govuk-frontend-jinja.git@v0.5.1-alpha#egg=govuk-frontend-jinja==0.5.1-alpha
|
||||
|
||||
# gds-metrics requires prometheseus 0.2.0, override that requirement as later versions bring significant performance gains
|
||||
prometheus-client==0.9.0
|
||||
gds-metrics==0.2.4
|
||||
|
||||
## The following requirements were added by pip freeze:
|
||||
awscli==1.18.210
|
||||
bleach==3.2.1
|
||||
boto3==1.16.50
|
||||
botocore==1.19.50
|
||||
cachetools==4.2.0
|
||||
certifi==2020.12.5
|
||||
chardet==4.0.0
|
||||
click==7.1.2
|
||||
colorama==0.4.3
|
||||
dnspython==1.16.0
|
||||
docopt==0.6.2
|
||||
docutils==0.15.2
|
||||
et-xmlfile==1.0.1
|
||||
flask-redis==0.4.0
|
||||
future==0.18.2
|
||||
geojson==2.5.0
|
||||
greenlet==0.4.17
|
||||
idna==2.10
|
||||
jdcal==1.4.1
|
||||
Jinja2==2.11.2
|
||||
jmespath==0.10.0
|
||||
lml==0.1.0
|
||||
lxml==4.6.2
|
||||
MarkupSafe==1.1.1
|
||||
mistune==0.8.4
|
||||
monotonic==1.5
|
||||
openpyxl==3.0.5
|
||||
orderedset==2.0.3
|
||||
packaging==20.8
|
||||
phonenumbers==8.12.15
|
||||
pyasn1==0.4.8
|
||||
pyexcel-ezodf==0.3.4
|
||||
PyJWT==2.0.0
|
||||
pyparsing==2.4.7
|
||||
PyPDF2==1.26.0
|
||||
python-dateutil==2.8.1
|
||||
python-json-logger==2.0.1
|
||||
PyYAML==5.3.1
|
||||
redis==3.5.3
|
||||
requests==2.25.1
|
||||
rsa==4.5
|
||||
s3transfer==0.3.3
|
||||
six==1.15.0
|
||||
smartypants==2.0.1
|
||||
statsd==3.3.0
|
||||
texttable==1.6.3
|
||||
urllib3==1.26.2
|
||||
webencodings==0.5.1
|
||||
Werkzeug==1.0.1
|
||||
WTForms==2.3.3
|
||||
xlrd==1.2.0
|
||||
xlwt==1.3.0
|
||||
# The following packages are considered to be unsafe in a requirements file:
|
||||
# setuptools
|
||||
|
||||
14
requirements_for_test.in
Normal file
14
requirements_for_test.in
Normal file
@@ -0,0 +1,14 @@
|
||||
-r requirements.txt
|
||||
isort==4.3.21
|
||||
pytest==5.3.2
|
||||
pytest-env==0.6.2
|
||||
pytest-mock==1.11.2
|
||||
pytest-xdist==1.31.0
|
||||
beautifulsoup4==4.8.1
|
||||
freezegun==0.3.12
|
||||
flake8==3.7.9
|
||||
flake8-bugbear==19.8.0
|
||||
flake8-print==3.1.4
|
||||
requests-mock==1.7.0
|
||||
# used for creating manifest file locally
|
||||
jinja2-cli[yaml]==0.7.0
|
||||
@@ -1,14 +1,112 @@
|
||||
-r requirements.txt
|
||||
isort==4.3.21
|
||||
pytest==5.3.2
|
||||
pytest-env==0.6.2
|
||||
pytest-mock==1.11.2
|
||||
pytest-xdist==1.31.0
|
||||
beautifulsoup4==4.8.1
|
||||
freezegun==0.3.12
|
||||
flake8==3.7.9
|
||||
flake8-bugbear==19.8.0
|
||||
flake8-print==3.1.4
|
||||
requests-mock==1.7.0
|
||||
# used for creating manifest file locally
|
||||
jinja2-cli[yaml]==0.7.0
|
||||
#
|
||||
# This file is autogenerated by pip-compile
|
||||
# To update, run:
|
||||
#
|
||||
# pip-compile requirements_for_test.in
|
||||
#
|
||||
ago==0.0.93 # via -r requirements.txt
|
||||
apipkg==1.5 # via execnet
|
||||
attrs==20.3.0 # via flake8-bugbear, pytest
|
||||
awscli-cwlogs==1.4.6 # via -r requirements.txt
|
||||
awscli==1.18.211 # via -r requirements.txt, awscli-cwlogs, notifications-utils
|
||||
beautifulsoup4==4.8.1 # via -r requirements_for_test.in
|
||||
bleach==3.2.1 # via -r requirements.txt, notifications-utils
|
||||
blinker==1.4 # via -r requirements.txt, gds-metrics
|
||||
boto3==1.16.51 # via -r requirements.txt, notifications-utils
|
||||
botocore==1.19.51 # via -r requirements.txt, awscli, boto3, s3transfer
|
||||
cachetools==4.2.0 # via -r requirements.txt, notifications-utils
|
||||
certifi==2020.12.5 # via -r requirements.txt, requests
|
||||
chardet==4.0.0 # via -r requirements.txt, requests
|
||||
click==7.1.2 # via -r requirements.txt, flask
|
||||
colorama==0.4.3 # via -r requirements.txt, awscli
|
||||
dnspython==1.16.0 # via -r requirements.txt, eventlet
|
||||
docopt==0.6.2 # via -r requirements.txt, notifications-python-client
|
||||
docutils==0.15.2 # via -r requirements.txt, awscli
|
||||
entrypoints==0.3 # via flake8
|
||||
et-xmlfile==1.0.1 # via -r requirements.txt, openpyxl
|
||||
eventlet==0.30.0 # via -r requirements.txt
|
||||
execnet==1.7.1 # via pytest-xdist
|
||||
flake8-bugbear==19.8.0 # via -r requirements_for_test.in
|
||||
flake8-print==3.1.4 # via -r requirements_for_test.in
|
||||
flake8==3.7.9 # via -r requirements_for_test.in, flake8-bugbear, flake8-print
|
||||
flask-login==0.5.0 # via -r requirements.txt
|
||||
flask-redis==0.4.0 # via -r requirements.txt, notifications-utils
|
||||
flask-wtf==0.14.3 # via -r requirements.txt
|
||||
flask==1.1.2 # via -r requirements.txt, flask-login, flask-redis, flask-wtf, gds-metrics, notifications-utils
|
||||
freezegun==0.3.12 # via -r requirements_for_test.in
|
||||
future==0.18.2 # via -r requirements.txt, notifications-python-client
|
||||
gds-metrics==0.2.4 # via -r requirements.txt
|
||||
geojson==2.5.0 # via -r requirements.txt, notifications-utils
|
||||
govuk-bank-holidays==0.8 # via -r requirements.txt, notifications-utils
|
||||
git+https://github.com/alphagov/govuk-frontend-jinja.git@v0.5.1-alpha#egg=govuk-frontend-jinja==0.5.1-alpha # via -r requirements.txt
|
||||
greenlet==0.4.17 # via -r requirements.txt, eventlet
|
||||
gunicorn==20.0.4 # via -r requirements.txt
|
||||
humanize==3.2.0 # via -r requirements.txt
|
||||
idna==2.10 # via -r requirements.txt, requests
|
||||
importlib-metadata==3.3.0 # via pluggy, pytest
|
||||
isort==4.3.21 # via -r requirements_for_test.in
|
||||
itsdangerous==1.1.0 # via -r requirements.txt, flask, flask-wtf, notifications-utils
|
||||
jdcal==1.4.1 # via -r requirements.txt, openpyxl
|
||||
jinja2-cli[yaml]==0.7.0 # via -r requirements_for_test.in
|
||||
jinja2==2.11.2 # via -r requirements.txt, flask, govuk-frontend-jinja, jinja2-cli, notifications-utils
|
||||
jmespath==0.10.0 # via -r requirements.txt, boto3, botocore
|
||||
lml==0.1.0 # via -r requirements.txt, pyexcel, pyexcel-io
|
||||
lxml==4.6.2 # via -r requirements.txt, pyexcel-ezodf, pyexcel-ods3
|
||||
markupsafe==1.1.1 # via -r requirements.txt, jinja2, wtforms
|
||||
mccabe==0.6.1 # via flake8
|
||||
mistune==0.8.4 # via -r requirements.txt, notifications-utils
|
||||
monotonic==1.5 # via -r requirements.txt, notifications-python-client, notifications-utils
|
||||
more-itertools==8.6.0 # via pytest
|
||||
notifications-python-client==5.7.1 # via -r requirements.txt
|
||||
git+https://github.com/alphagov/notifications-utils.git@43.7.0#egg=notifications-utils==43.7.0 # via -r requirements.txt
|
||||
openpyxl==3.0.5 # via -r requirements.txt, pyexcel-xlsx
|
||||
orderedset==2.0.3 # via -r requirements.txt, notifications-utils
|
||||
packaging==20.8 # via -r requirements.txt, bleach, pytest
|
||||
phonenumbers==8.12.15 # via -r requirements.txt, notifications-utils
|
||||
pluggy==0.13.1 # via pytest
|
||||
prometheus-client==0.9.0 # via -r requirements.txt, gds-metrics
|
||||
py==1.10.0 # via pytest, pytest-forked
|
||||
pyasn1==0.4.8 # via -r requirements.txt, rsa
|
||||
pycodestyle==2.5.0 # via flake8, flake8-print
|
||||
pyexcel-ezodf==0.3.4 # via -r requirements.txt, pyexcel-ods3
|
||||
pyexcel-io==0.6.4 # via -r requirements.txt, pyexcel, pyexcel-ods3, pyexcel-xls, pyexcel-xlsx
|
||||
pyexcel-ods3==0.6.0 # via -r requirements.txt
|
||||
pyexcel-xls==0.6.2 # via -r requirements.txt
|
||||
pyexcel-xlsx==0.6.0 # via -r requirements.txt
|
||||
pyexcel==0.6.6 # via -r requirements.txt
|
||||
pyflakes==2.1.1 # via flake8
|
||||
pyjwt==2.0.0 # via -r requirements.txt, notifications-python-client
|
||||
pyparsing==2.4.7 # via -r requirements.txt, packaging
|
||||
pypdf2==1.26.0 # via -r requirements.txt, notifications-utils
|
||||
pytest-env==0.6.2 # via -r requirements_for_test.in
|
||||
pytest-forked==1.3.0 # via pytest-xdist
|
||||
pytest-mock==1.11.2 # via -r requirements_for_test.in
|
||||
pytest-xdist==1.31.0 # via -r requirements_for_test.in
|
||||
pytest==5.3.2 # via -r requirements_for_test.in, pytest-env, pytest-forked, pytest-mock, pytest-xdist
|
||||
python-dateutil==2.8.1 # via -r requirements.txt, awscli-cwlogs, botocore, freezegun
|
||||
python-json-logger==2.0.1 # via -r requirements.txt, notifications-utils
|
||||
pytz==2020.5 # via -r requirements.txt, notifications-utils
|
||||
pyyaml==5.3.1 # via -r requirements.txt, awscli, jinja2-cli, notifications-utils
|
||||
redis==3.5.3 # via -r requirements.txt, flask-redis
|
||||
requests-mock==1.7.0 # via -r requirements_for_test.in
|
||||
requests==2.25.1 # via -r requirements.txt, awscli-cwlogs, govuk-bank-holidays, notifications-python-client, notifications-utils, requests-mock
|
||||
rsa==4.5 # via -r requirements.txt, awscli
|
||||
s3transfer==0.3.3 # via -r requirements.txt, awscli, boto3
|
||||
shapely==1.7.1 # via -r requirements.txt
|
||||
six==1.15.0 # via -r requirements.txt, awscli-cwlogs, bleach, eventlet, flake8-print, freezegun, govuk-bank-holidays, pytest-xdist, python-dateutil, requests-mock
|
||||
smartypants==2.0.1 # via -r requirements.txt, notifications-utils
|
||||
soupsieve==2.1 # via beautifulsoup4
|
||||
statsd==3.3.0 # via -r requirements.txt, notifications-utils
|
||||
texttable==1.6.3 # via -r requirements.txt, pyexcel
|
||||
typing-extensions==3.7.4.3 # via importlib-metadata
|
||||
urllib3==1.26.2 # via -r requirements.txt, botocore, requests
|
||||
wcwidth==0.2.5 # via pytest
|
||||
webencodings==0.5.1 # via -r requirements.txt, bleach
|
||||
werkzeug==1.0.1 # via -r requirements.txt, flask
|
||||
wtforms==2.3.3 # via -r requirements.txt, flask-wtf
|
||||
xlrd==1.2.0 # via -r requirements.txt, pyexcel-xls
|
||||
xlwt==1.3.0 # via -r requirements.txt, pyexcel-xls
|
||||
zipp==3.4.0 # via importlib-metadata
|
||||
|
||||
# The following packages are considered to be unsafe in a requirements file:
|
||||
# setuptools
|
||||
|
||||
@@ -24,9 +24,6 @@ if [[ -z "$VIRTUAL_ENV" ]] && [[ -d venv ]]; then
|
||||
source ./venv/bin/activate
|
||||
fi
|
||||
|
||||
make test-requirements
|
||||
display_result $? 1 "Requirements check"
|
||||
|
||||
flake8 .
|
||||
display_result $? 1 "Code style check"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user