From 480d69daf9e1ea8eed3a1eaadd8027383236bc68 Mon Sep 17 00:00:00 2001 From: Dorian Turba <froggit.commit.z3jqj@simplelogin.com> Date: Mon, 17 Jul 2023 13:44:04 +0200 Subject: [PATCH] add black --- .gitlab-ci.yml | 12 ++++++++++++ templates/python/code_quality/black/black.yml | 10 +++++++--- templates/python/code_quality/flake8/flake8.yml | 8 ++++++-- tests/black_project/pyproject.toml | 11 +++++++++++ tests/black_project/src/black_project/__init__.py | 3 +++ tests/black_project/src/black_project/main.py | 11 +++++++++++ tests/flake8_project/src/flake8_project/__init__.py | 2 +- 7 files changed, 51 insertions(+), 6 deletions(-) create mode 100644 tests/black_project/pyproject.toml create mode 100644 tests/black_project/src/black_project/__init__.py create mode 100644 tests/black_project/src/black_project/main.py diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b4eae4d..383cb5c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,6 +4,7 @@ stages: include: - local: 'templates/python/testing/pytest/pytest.yml' - local: 'templates/python/code_quality/flake8/flake8.yml' + - local: 'templates/python/code_quality/black/black.yml' pytest: stage: templates @@ -26,3 +27,14 @@ flake8: - .gitlab-ci.yml - pyproject.toml - templates/python/code_quality/flake8/* + +black: + stage: templates + variables: + PROJECT_PATH: "tests/black_project" + PYTHON_SETUP: "pip install ${PROJECT_PATH} black" + only: + changes: + - .gitlab-ci.yml + - pyproject.toml + - templates/python/code_quality/black/* diff --git a/templates/python/code_quality/black/black.yml b/templates/python/code_quality/black/black.yml index 160c6f2..ef0a05e 100644 --- a/templates/python/code_quality/black/black.yml +++ b/templates/python/code_quality/black/black.yml @@ -1,12 +1,16 @@ black: - image: python:latest + image: python:${IMAGE_TAG} stage: code_quality + variables: + IMAGE_TAG: "latest" + PROJECT_PATH: "." + PYTHON_SETUP: "pip install ${PROJECT_PATH}[CODE_QUALITY]" script: - python --version # Debug - python -m venv venv --upgrade-deps || python -m venv venv # upgrade-deps is not supported before 3.9 - source venv/bin/activate - - pip install black - - black . --check --diff --quiet + - ${PYTHON_SETUP} + - black ${PROJECT_PATH} --check --diff --quiet only: changes: - ./**/*.py diff --git a/templates/python/code_quality/flake8/flake8.yml b/templates/python/code_quality/flake8/flake8.yml index b9f353b..984ecf7 100644 --- a/templates/python/code_quality/flake8/flake8.yml +++ b/templates/python/code_quality/flake8/flake8.yml @@ -1,11 +1,15 @@ flake8: - image: python:latest + image: python:${IMAGE_TAG} stage: code_quality + variables: + IMAGE_TAG: "latest" + PROJECT_PATH: "." + PYTHON_SETUP: "pip install ${PROJECT_PATH}[CODE_QUALITY]" script: - python --version # Debug - python -m venv venv --upgrade-deps || python -m venv venv # upgrade-deps is not supported before 3.9 - source venv/bin/activate - - pip install flake8 + - ${PYTHON_SETUP} - flake8 ${PROJECT_PATH} -v only: changes: diff --git a/tests/black_project/pyproject.toml b/tests/black_project/pyproject.toml new file mode 100644 index 0000000..beec19a --- /dev/null +++ b/tests/black_project/pyproject.toml @@ -0,0 +1,11 @@ +[build-system] +requires = ["hatchling"] +build-backend = "hatchling.build" + +[project] +name = "black_project" +version = "0.1.0" +authors = [ + { name = "Author Name", email = "author.name@example.com" }, +] +description = "A description of what the package is for." diff --git a/tests/black_project/src/black_project/__init__.py b/tests/black_project/src/black_project/__init__.py new file mode 100644 index 0000000..8cec510 --- /dev/null +++ b/tests/black_project/src/black_project/__init__.py @@ -0,0 +1,3 @@ +from black_project.main import main + +__all__ = ['main'] diff --git a/tests/black_project/src/black_project/main.py b/tests/black_project/src/black_project/main.py new file mode 100644 index 0000000..28caf00 --- /dev/null +++ b/tests/black_project/src/black_project/main.py @@ -0,0 +1,11 @@ +"""Sample main module.""" + + +def main() -> bool: + """Sample main function.""" + print("Hello, world!") + return True + + +if __name__ == '__main__': + main() diff --git a/tests/flake8_project/src/flake8_project/__init__.py b/tests/flake8_project/src/flake8_project/__init__.py index 673c4cf..58505af 100644 --- a/tests/flake8_project/src/flake8_project/__init__.py +++ b/tests/flake8_project/src/flake8_project/__init__.py @@ -1,3 +1,3 @@ -from test_project.main import main +from flake8_project.main import main __all__ = ['main'] -- GitLab