Initial commit

This commit is contained in:
Deko
2023-04-14 19:22:45 +02:00
parent 602b38eb7a
commit 7f98b446af
3 changed files with 79 additions and 17 deletions

62
.github/workflows/pipeline.yaml vendored Normal file
View File

@@ -0,0 +1,62 @@
name: Pipeline
on:
push:
branches: ['release']
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
jobs:
lint-and-test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
curl -sSL https://install.python-poetry.org | python -
export PATH=$PATH:$HOME/.local/bin
poetry --version
poetry install
- name: isort
run: poetry run isort --check .
- name: flake8
run: poetry run flake8
- name: black
run: poetry run black . --check --verbose --diff
- name: pytest
run: poetry run pytest --cov -v
build:
- runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Log in to the Container registry
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
- name: Build and push Docker image
uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

30
poetry.lock generated
View File

@@ -16,7 +16,7 @@ tests_no_zope = ["hypothesis", "pympler", "pytest (>=4.3.0)", "pytest-xdist", "c
[[package]]
name = "black"
version = "23.1.0"
version = "23.3.0"
description = "The uncompromising code formatter."
category = "dev"
optional = false
@@ -53,11 +53,11 @@ python-versions = ">=3.6.1"
[[package]]
name = "charset-normalizer"
version = "3.0.1"
version = "3.1.0"
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
category = "main"
optional = false
python-versions = "*"
python-versions = ">=3.7.0"
[[package]]
name = "click"
@@ -80,7 +80,7 @@ python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7
[[package]]
name = "coverage"
version = "7.2.1"
version = "7.2.2"
description = "Code coverage measurement for Python"
category = "dev"
optional = false
@@ -99,15 +99,15 @@ python-versions = "*"
[[package]]
name = "filelock"
version = "3.9.0"
version = "3.10.7"
description = "A platform independent file lock."
category = "main"
optional = false
python-versions = ">=3.7"
[package.extras]
docs = ["furo (>=2022.12.7)", "sphinx-autodoc-typehints (>=1.19.5)", "sphinx (>=5.3)"]
testing = ["covdefaults (>=2.2.2)", "coverage (>=7.0.1)", "pytest-cov (>=4)", "pytest-timeout (>=2.1)", "pytest (>=7.2)"]
docs = ["furo (>=2022.12.7)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)", "sphinx (>=6.1.3)"]
testing = ["covdefaults (>=2.3)", "coverage (>=7.2.2)", "diff-cover (>=7.5)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest-timeout (>=2.1)", "pytest (>=7.2.2)"]
[[package]]
name = "flake8"
@@ -124,7 +124,7 @@ pyflakes = ">=3.0.0,<3.1.0"
[[package]]
name = "identify"
version = "2.5.20"
version = "2.5.22"
description = "File identification library for Python"
category = "main"
optional = false
@@ -212,7 +212,7 @@ python-versions = ">=3.7"
[[package]]
name = "pathspec"
version = "0.11.0"
version = "0.11.1"
description = "Utility library for gitignore style pattern matching of file paths."
category = "dev"
optional = false
@@ -220,7 +220,7 @@ python-versions = ">=3.7"
[[package]]
name = "platformdirs"
version = "3.1.0"
version = "3.2.0"
description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
category = "main"
optional = false
@@ -228,7 +228,7 @@ python-versions = ">=3.7"
[package.extras]
docs = ["furo (>=2022.12.7)", "proselint (>=0.13)", "sphinx-autodoc-typehints (>=1.22,!=1.23.4)", "sphinx (>=6.1.3)"]
test = ["appdirs (==1.4.4)", "covdefaults (>=2.2.2)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest (>=7.2.1)"]
test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest-cov (>=4)", "pytest-mock (>=3.10)", "pytest (>=7.2.2)"]
[[package]]
name = "pluggy"
@@ -244,7 +244,7 @@ testing = ["pytest", "pytest-benchmark"]
[[package]]
name = "pre-commit"
version = "3.1.1"
version = "3.2.1"
description = "A framework for managing and maintaining multi-language pre-commit hooks."
category = "main"
optional = false
@@ -358,7 +358,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
[[package]]
name = "urllib3"
version = "1.26.14"
version = "1.26.15"
description = "HTTP library with thread-safe connection pooling, file post, and more."
category = "main"
optional = false
@@ -371,7 +371,7 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
[[package]]
name = "virtualenv"
version = "20.20.0"
version = "20.21.0"
description = "Virtual Python Environment builder"
category = "main"
optional = false
@@ -400,7 +400,7 @@ dev = ["pytest (>=4.6.2)", "black (>=19.3b0)"]
[metadata]
lock-version = "1.1"
python-versions = "^3.11"
content-hash = "214ba051cbd09df53ac7c0fcce560c9617314f3d26ab703df34f31169bd63eb3"
content-hash = "5bd5f7ff0f5e15bd2a66ae78088b1fd213fbbf97e011fa9a94a96bcbd6399929"
[metadata.files]
attrs = []

View File

@@ -8,10 +8,10 @@ authors = ["Deko <gadse.deko@gmail.com>"]
python = "^3.11"
requests = "^2.28.2"
loguru = "^0.6.0"
pre-commit = "^3.1.1"
pre-commit = "^3.2.1"
[tool.poetry.dev-dependencies]
black = "^23.1.0"
black = "^23.3.0"
isort = "^5.12.0"
flake8 = "^6.0.0"
pytest = "^7.2.2"