Compare commits

...

56 Commits

Author SHA1 Message Date
Brain 9a95baf106 Add dry-run Docker build to Pull Request CI run
continuous-integration/drone/pr Build is passing
2024-09-10 12:56:04 +02:00
Brain 3d128d771c Merge pull request 'Update dependency flask-cors to v5' (!114) from renovate/flask-cors-5.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #114
2024-09-05 11:26:34 +02:00
renovate-bot 6b7517fc7a Update dependency flask-cors to v5
continuous-integration/drone/pr Build is passing
2024-09-04 21:36:04 +00:00
Brain 5ceb361da3 Merge pull request 'Update python:3.8.19-alpine Docker digest to c2f31d1' (!113) from renovate/python into main
continuous-integration/drone/push Build is passing
Reviewed-on: #113
2024-09-04 23:03:32 +02:00
renovate-bot 4379a06f26 Update python:3.8.19-alpine Docker digest to c2f31d1
continuous-integration/drone/pr Build is passing
2024-09-04 19:36:16 +00:00
Brain c43f375e4b Merge pull request 'Update dependency flake8 to v7' (!108) from renovate/flake8-7.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #108
2024-09-04 20:44:01 +02:00
renovate-bot 621a90b8ab Update dependency flake8 to v7
continuous-integration/drone/pr Build is passing
2024-08-28 14:36:12 +00:00
Brain 033dee7836 Merge pull request 'Update dependency python-dotenv to v0.21.1' (!91) from renovate/python-dotenv-0.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #91
2024-08-28 16:27:46 +02:00
Brain ca81e8bf70 Merge branch 'main' into renovate/python-dotenv-0.x
continuous-integration/drone/pr Build is passing
2024-08-28 16:02:01 +02:00
Brain d507a20a93 Merge pull request 'Update dependency flake8 to v6' (!107) from renovate/flake8-6.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #107
2024-08-28 15:52:02 +02:00
Brain 3f2c23c386 Merge branch 'main' into renovate/flake8-6.x
continuous-integration/drone/pr Build is passing
2024-08-28 15:46:31 +02:00
Brain b46ac5e379 Merge pull request 'Update dependency pymysql to v1.1.1' (!90) from renovate/pymysql-1.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #90
2024-08-28 15:43:17 +02:00
renovate-bot fa4429b6ef Update dependency flake8 to v6
continuous-integration/drone/pr Build is passing
2024-08-28 13:37:17 +00:00
renovate-bot 7a0f2434db Update dependency python-dotenv to v0.21.1
continuous-integration/drone/pr Build is passing
2024-08-28 13:36:27 +00:00
renovate-bot 8c3fe3fe7d Update dependency pymysql to v1.1.1
continuous-integration/drone/pr Build is passing
2024-08-28 13:36:11 +00:00
Brain 56ade6de68 Merge pull request 'Update dependency flask to v2.3.3' (!87) from renovate/flask-2.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #87
Reviewed-by: Brain <brain@noreply.git.wtf-eg.de>
2024-08-28 15:19:36 +02:00
renovate-bot 28cf714217 Update dependency flask to v2.3.3
continuous-integration/drone/pr Build is passing
2024-08-28 12:35:38 +00:00
Brain 9ff56f6676 Merge pull request 'Update dependency yapf to v0.40.2' (!94) from renovate/yapf-0.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #94
2024-08-28 13:46:17 +02:00
Brain 2412df4960 Apply yapf and add ignorefile
continuous-integration/drone/pr Build is passing
2024-08-28 13:43:33 +02:00
Brain 469ef511d6 Merge pull request 'Add .python-version file' (!105) from pyenv into main
continuous-integration/drone/push Build is passing
Reviewed-on: #105
2024-08-28 13:19:28 +02:00
Brain 47d2c94b79 Specify license for .python-version
continuous-integration/drone/pr Build is passing
2024-08-28 12:57:31 +02:00
renovate-bot 384dd82454 Update dependency yapf to v0.40.2
continuous-integration/drone/pr Build is passing
2024-08-27 17:38:01 +00:00
Brain b0dcfacd25 Add .python-version file
continuous-integration/drone/pr Build is failing
2024-08-27 19:08:52 +02:00
Brain 86edb246bf Merge pull request 'revert f02efab07aeabe02a94efd62fbe498659297b36f' (!102) from revert-python-3.11 into main
continuous-integration/drone/push Build is passing
Reviewed-on: #102
2024-08-23 15:59:55 +02:00
Brain 9424e21edc revert f02efab07a
continuous-integration/drone/pr Build is passing
revert Merge pull request 'Update python Docker tag to v3.11.9' (!97) from renovate/minor-3.11-python into main

Reviewed-on: #97
2024-08-23 15:50:30 +02:00
Brain f02efab07a Merge pull request 'Update python Docker tag to v3.11.9' (!97) from renovate/minor-3.11-python into main
continuous-integration/drone/push Build is passing
Reviewed-on: #97
2024-08-23 15:33:32 +02:00
Brain 08f1104942 Merge branch 'main' into renovate/minor-3.11-python
continuous-integration/drone/pr Build is passing
2024-08-23 15:30:29 +02:00
Brain 8dde142f38 Try and use Python 3.11
continuous-integration/drone/pr Build is failing
2024-08-23 15:26:39 +02:00
Brain d1b1636aa2 Merge pull request 'Update dependency waitress to v2.1.2' (!93) from renovate/waitress-2.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #93
2024-08-23 12:01:59 +02:00
renovate-bot 3fcd1fa20e Update python Docker tag to v3.11.9
continuous-integration/drone/pr Build is failing
2024-08-22 18:37:13 +00:00
renovate-bot 8394400e96 Update dependency waitress to v2.1.2
continuous-integration/drone/pr Build is passing
2024-08-22 18:36:55 +00:00
Brain 843050f923 Merge pull request 'Update plugins/docker Docker tag to v20.18.4' (!95) from renovate/plugins-docker-20.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #95
2024-08-22 19:53:59 +02:00
Brain 812913ffe2 Merge pull request 'Update dependency reuse to v0.14.0' (!92) from renovate/reuse-0.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #92
2024-08-22 19:52:24 +02:00
renovate-bot dee80c7e14 Update plugins/docker Docker tag to v20.18.4
continuous-integration/drone/pr Build is passing
2024-08-22 15:35:49 +00:00
renovate-bot de60ec0d46 Update dependency reuse to v0.14.0
continuous-integration/drone/pr Build is passing
2024-08-22 14:35:41 +00:00
Brain 6c6fcea81c Merge pull request 'Update python Docker tag to v3.8.19' (!85) from renovate/patch-python into main
continuous-integration/drone/push Build is passing
Reviewed-on: #85
2024-08-22 13:17:55 +02:00
Brain 166e0d40c6 Merge pull request 'Update dependency werkzeug to v2.3.8' (!84) from renovate/werkzeug-2.x into main
continuous-integration/drone/push Build is passing
Reviewed-on: #84
2024-08-22 12:39:36 +02:00
renovate-bot c9b5ab62ed Update python Docker tag to v3.8.19
continuous-integration/drone/pr Build is passing
2024-08-22 10:35:35 +00:00
renovate-bot c0005100b4 Update dependency werkzeug to v2.3.8
continuous-integration/drone/pr Build is passing
2024-08-22 10:35:34 +00:00
Brain d614039cdd Merge pull request 'Pin python Docker tag to 0ef73cd' (!83) from renovate/python into main
continuous-integration/drone/push Build is passing
Reviewed-on: #83
2024-08-22 11:52:25 +02:00
Brain 316236a7e5 Merge pull request 'Pin dependencies' (!82) from renovate/pin-dependencies into main
continuous-integration/drone/push Build is failing
Reviewed-on: #82
2024-08-22 11:51:54 +02:00
Brain c15faabd6d Pinning werkzeug to v2
continuous-integration/drone/pr Build is passing
Thanks for the hint in #78
2024-08-22 11:46:27 +02:00
renovate-bot 53eab74e60 Pin python Docker tag to 0ef73cd
continuous-integration/drone/pr Build is passing
2024-08-22 09:35:43 +00:00
renovate-bot 82d908193c Pin dependencies
continuous-integration/drone/pr Build is failing
2024-08-22 09:35:42 +00:00
Brain 6620a6819a Merge pull request 'Configure Renovate' (!81) from renovate/configure into main
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Reviewed-on: #81
2024-08-22 11:25:28 +02:00
Brain be6fec18ab Update Renovate config
continuous-integration/drone/pr Build is passing
2024-08-21 22:12:27 +02:00
renovate-bot 9ebae03550 Add renovate.json
continuous-integration/drone/pr Build is failing
2024-08-21 19:34:54 +00:00
Brain 763a6efc9f Merge pull request 'Improve Docker usage' (!80) from docker-improvements into main
continuous-integration/drone/push Build is passing
Reviewed-on: #80
2024-08-21 21:22:40 +02:00
Brain 6f04d23e6c Add license information to .dockerignore file
continuous-integration/drone/pr Build is passing
2024-08-21 21:17:33 +02:00
Brain 155ddc556c Add .dockerignore file
continuous-integration/drone/pr Build is failing
2024-08-21 21:09:12 +02:00
Brain a5a85e6032 Fix Dockerfile warnings 2024-08-21 21:08:52 +02:00
Brain 6a3458a596 Pin Docker images in CI 2024-08-21 20:53:59 +02:00
Brain 97be8f4667 Ditch builder and base Docker images
This should make dependency upgrades easier and bring more clarity to the CI pipelines
2024-08-21 20:49:47 +02:00
jaschop 776803fc96 Merge pull request 'Add catalan flag' (!77) from HerHde/ki-backend:add-ca-flag into main
continuous-integration/drone/push Build is passing
Reviewed-on: #77

> Anything else to consider?

I didn't know myself, but it was interesting to find out. No, this should work as soon as deployed. Catalan already exists in the language DB, and the existance of ca.svg is already tested whenever a catalan icon is requested.
2023-12-10 19:08:48 +01:00
jaschop 702f4968f6 Merge pull request 'Use Gitea registry' (!76) from gitea-registry into main
continuous-integration/drone/push Build is passing
Reviewed-on: #76
2023-12-10 18:46:35 +01:00
HerHde c1285153ef Add catalan flag
continuous-integration/drone/pr Build is passing
2023-12-09 21:36:24 +01:00
16 changed files with 691 additions and 514 deletions
+13
View File
@@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: WTF Kooperative eG <https://wtf-eg.de/>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
*
!Pipfile
!Pipfile.lock
!data/
!ki/
!LICENSES/
!migrations/
!app.py
!run_prod.py
+25 -8
View File
@@ -15,15 +15,27 @@ trigger:
steps:
- name: install-lint-test
image: git.wtf-eg.de/kompetenzinventar/builder:1.0.2
image: python:3.8.19-alpine@sha256:c2f31d16113f2c1152934d321855c9f0169143dff96d716dada19e0047d6ddee
env:
PYROOT: '/pyroot'
PYTHONUSERBASE: '/pyroot'
commands:
- apk add --no-cache gcc g++ musl-dev python3-dev
- pip3 install pipenv
- pipenv install --dev
- pipenv run flake8
- pipenv run reuse lint
- pipenv run python -m unittest discover ki
image_pull_secrets:
- dockerconfig
- name: docker-dry-run
image: plugins/docker:20.18.4@sha256:a8d3d86853c721492213264815f1d00d3ed13f42f5c1855a02f47fa4d5f1e042
settings:
registry: git.wtf-eg.de
repo: git.wtf-eg.de/kompetenzinventar/backend
target: ki-backend
dry_run: true
when:
event:
- pull_request
---
kind: pipeline
@@ -41,7 +53,7 @@ depends_on:
steps:
- name: docker-publish
image: plugins/docker
image: plugins/docker:20.18.4@sha256:a8d3d86853c721492213264815f1d00d3ed13f42f5c1855a02f47fa4d5f1e042
settings:
registry: git.wtf-eg.de
repo: git.wtf-eg.de/kompetenzinventar/backend
@@ -68,7 +80,7 @@ depends_on:
steps:
- name: deploy-dev
image: appleboy/drone-ssh
image: appleboy/drone-ssh:1.7.5@sha256:995677e073454912f26d4c0fdd2f9df2e1f5a30d6603d3f2ece667311b6babb3
settings:
host:
- dev01.wtf-eg.net
@@ -91,14 +103,19 @@ trigger:
steps:
- name: install-lint-test
image: git.wtf-eg.de/kompetenzinventar/builder:1.0.2
image: python:3.8.19-alpine@sha256:c2f31d16113f2c1152934d321855c9f0169143dff96d716dada19e0047d6ddee
env:
PYROOT: '/pyroot'
PYTHONUSERBASE: '/pyroot'
commands:
- apk add --no-cache gcc g++ musl-dev python3-dev
- pip3 install pipenv
- pipenv install --dev
- pipenv run flake8
- pipenv run reuse lint
- pipenv run python -m unittest discover ki
- name: docker-publish
image: plugins/docker
image: plugins/docker:20.18.4@sha256:a8d3d86853c721492213264815f1d00d3ed13f42f5c1855a02f47fa4d5f1e042
settings:
registry: git.wtf-eg.de
repo: git.wtf-eg.de/kompetenzinventar/backend
+1
View File
@@ -0,0 +1 @@
3.8.19
+4
View File
@@ -10,3 +10,7 @@ License: MIT
Files: Pipfile.lock migrations/*
Copyright: WTF Kooperative eG <https://wtf-eg.de/>
License: AGPL-3.0-or-later
Files: renovate.json .python-version
Copyright: WTF Kooperative eG <https://wtf-eg.de/>
License: AGPL-3.0-or-later
+5
View File
@@ -0,0 +1,5 @@
# SPDX-FileCopyrightText: WTF Kooperative eG <https://wtf-eg.de/>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
migrations/*.py
+15 -2
View File
@@ -2,7 +2,17 @@
#
# SPDX-License-Identifier: AGPL-3.0-or-later
FROM git.wtf-eg.de/kompetenzinventar/builder:1.0.2 as builder
FROM python:3.8.19-alpine@sha256:c2f31d16113f2c1152934d321855c9f0169143dff96d716dada19e0047d6ddee AS builder
ENV PYROOT=/pyroot
ENV PYTHONUSERBASE=$PYROOT
RUN apk add --no-cache \
gcc \
g++ \
musl-dev \
python3-dev && \
pip3 install pipenv
COPY Pipfile* ./
@@ -10,7 +20,10 @@ RUN PIP_USER=1 PIP_IGNORE_INSTALLED=1 pipenv install --system --deploy --ignore-
RUN pip3 uninstall --yes pipenv
FROM git.wtf-eg.de/kompetenzinventar/base:1.0.2 as ki-backend
FROM python:3.8.19-alpine@sha256:c2f31d16113f2c1152934d321855c9f0169143dff96d716dada19e0047d6ddee AS ki-backend
ENV PYROOT=/pyroot
ENV PYTHONUSERBASE=$PYROOT
# Install six explicitly. Otherwise Python complains about it missing.
RUN pip3 install six
+15 -14
View File
@@ -8,22 +8,23 @@ verify_ssl = true
name = "pypi"
[packages]
flask = "~=2.0.1"
python-dotenv = "~=0.17.1"
flask-migrate = "~=3.0.1"
flask-sqlalchemy = "~=2.5.1"
sqlalchemy = "~=1.4.18"
waitress = "~=2.0.0"
pyyaml = "~=6.0.1"
flask-cors = "~=3.0.10"
ldap3 = "~=2.9"
pymysql = "~=1.0.2"
flask = "==2.3.3"
python-dotenv = "==0.21.1"
flask-migrate = "==3.0.1"
flask-sqlalchemy = "==2.5.1"
sqlalchemy = "==1.4.53"
waitress = "==2.1.2"
pyyaml = "==6.0.2"
flask-cors = "==5.0.0"
ldap3 = "==2.9.1"
pymysql = "==1.1.1"
werkzeug = "==2.3.8"
[dev-packages]
flake8 = "~=3.9.2"
yapf = "~=0.31.0"
pre-commit = "~=2.13.0"
reuse = "~=0.13.0"
flake8 = "==7.1.1"
yapf = "==0.40.2"
pre-commit = "==2.13.0"
reuse = "==0.14.0"
[requires]
python_version = "3.8"
Generated
+584 -490
View File
File diff suppressed because it is too large Load Diff
+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="810" height="540">
<rect width="810" height="540" fill="#FCDD09"/>
<path stroke="#DA121A" stroke-width="60" d="M0,90H810m0,120H0m0,120H810m0,120H0"/>
</svg>

After

Width:  |  Height:  |  Size: 242 B

+1
View File
@@ -17,6 +17,7 @@ content_type_png = "image/png"
def token_auth(func):
@wraps(func)
def _token_auth(*args, **kwargs):
auth_header = request.headers.get("Authorization")
+1
View File
@@ -8,6 +8,7 @@ from ki.test.ApiTest import ApiTest
class TestContactTypesEndpoint(ApiTest):
def test_skills_options(self):
response = self.client.options("/contacttypes")
self.assertEqual(response.status_code, 200)
+1
View File
@@ -8,6 +8,7 @@ from ki.test.ApiTest import ApiTest
class TestFindProfilesEndpoint(ApiTest):
def test_find_profiles_options(self):
response = self.client.options("/users/profiles")
self.assertEqual(response.status_code, 200)
+1
View File
@@ -8,6 +8,7 @@ from ki.test.ApiTest import ApiTest
class TestLanguagesEndpoint(ApiTest):
def test_skills_options(self):
response = self.client.options("/languages")
self.assertEqual(response.status_code, 200)
+1
View File
@@ -10,6 +10,7 @@ from ki.test.ApiTest import ApiTest
class TestLoginEndpoint(ApiTest):
def test_login(self):
response1_data = self.login("peter", "geheim")
response2_data = self.login("peter", "geheim")
+1
View File
@@ -8,6 +8,7 @@ from ki.test.ApiTest import ApiTest
class TestSkillsEndpoint(ApiTest):
def test_skills_options(self):
response = self.client.options("/skills")
self.assertEqual(response.status_code, 200)
+18
View File
@@ -0,0 +1,18 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:best-practices",
":disableDependencyDashboard",
":maintainLockFilesMonthly",
":pinVersions",
":separateMultipleMajorReleases"
],
"packageRules": [
{
"matchDepNames": ["python"],
"groupName": "Python",
"separateMinorPatch": true,
"separateMultipleMinor": true
}
]
}