210 Commits

Author SHA1 Message Date
Julius Unverfehrt
27917863c9 refactor: finnish queue manager, queue manager tests, also add validation logic, integrate new settings 2024-01-16 14:35:23 +01:00
Julius Unverfehrt
ebc519ee0d refactor: finnish queue manager, queue manager tests, also add validation logic, integrate new settings 2024-01-16 14:16:27 +01:00
Julius Unverfehrt
b49645cce4 refactor: queue manager and config logic WIP 2024-01-15 16:46:33 +01:00
Julius Unverfehrt
64871bbb62 refactor: add basic queue manager test 2024-01-15 10:30:07 +01:00
Julius Unverfehrt
1f482f2476 fix: storage test 2024-01-09 16:07:48 +01:00
Francisco Schulz
8dfba74682 Merge branch 'RED-7958-logging-issues-of-python-services' into 'master'
Red 7958 logging issues of python services

See merge request knecon/research/pyinfra!81
1.10.0
2023-11-28 10:21:37 +01:00
francisco.schulz
570689ed9b increment version 2023-11-28 09:35:46 +01:00
francisco.schulz
5db56d8449 update CI template 2023-11-28 09:20:22 +01:00
francisco.schulz
3a9d34f9c0 add loglevel tests & fix broken exception and error log tests 2023-11-28 09:16:42 +01:00
francisco.schulz
3084d6338c update dependencies for kn-utils@0.2.4.dev112 2023-11-28 09:16:05 +01:00
Julius Unverfehrt
3a3a8e4ce1 Merge branch 'feature/version-upgrade-knutils-logging' into 'master'
Upgrade python version & change logger

See merge request knecon/research/pyinfra!80
1.9.0
2023-11-13 15:48:22 +01:00
Julius Unverfehrt
bb00c83a80 Upgrade python version & change logger
- Upgrades python version to 3.10 and sync packages with isaacs list.
- Changes loguru logger to kn_utlis logger.
- Overrides python version in CI script (temporarily until all services
  are updated and CI template can be adjusted).
2023-11-13 15:28:49 +01:00
Julius Unverfehrt
b297894505 Merge branch 'feature/stack-trace-for-exeptions' into 'master'
Add stacktrace to processing failures

See merge request knecon/research/pyinfra!79
1.8.0
2023-09-05 13:04:00 +02:00
Julius Unverfehrt
261b991049 Add stacktrace to processing failures
If a processing failure occures in the processing callback, pyinfra now
additionally to the exeption prints the stack trace.

Also removes knutils logging for now, since it still contains bugs and
it should be tested first in a non-production environment if
production-readiness is given.
2023-09-05 12:59:45 +02:00
Julius Unverfehrt
84c4e7601f Update kn-utils package
Update kn-utils for missing loglevels fix, which is needed for queue
manager error logging.
1.7.0
2023-08-30 15:58:29 +02:00
Julius Unverfehrt
201ed5b9a8 Merge branch 'feature/RED-6685-support-absolute-paths' into 'master'
Add support for absolute file paths

See merge request knecon/research/pyinfra!77
1.6.0
2023-08-23 14:11:46 +02:00
Julius Unverfehrt
72547201f3 Adjust log levels to reduce log clutter
Also updates readme and adds pytest execution to CI script.
2023-08-23 12:38:34 +02:00
Julius Unverfehrt
c09476cfae Update tests
All components from payload processing downwards are tested.

Tests that depend on docker compose have been disabled by default
because they take too long to use during development. Furthermore, the
queue manager tests are not stable, a refactoring with inversion of
control is urgently needed to make the components properly testable. The
storage tests are stable and should be run once before releasing, this
should be implemented via the CI script.

Also adds, if present, tenant Id and operation kwargs to storage and
queue response.
2023-08-22 17:33:22 +02:00
Julius Unverfehrt
e580a66347 Refactor storage provider & payload parser
Applies strategy pattern to payload parsing logic to improve
maintainability and testability.
Renames storage manager to storage provider.
2023-08-22 10:46:27 +02:00
Julius Unverfehrt
294688ea66 RED-7002 Forward exceptions from thread context
PyInfra now reports exceptions that happen inside the processing
callback.
Also refactors queue manager logging to fit new logger by
changing "%s", var logic to f string, since this syntax is not supported
with knutlis logging.
2023-08-22 10:46:27 +02:00
Julius Unverfehrt
7187f0ec0c RES-343 Update logging to knutils logger 2023-08-22 10:46:14 +02:00
Julius Unverfehrt
ef916ee790 Refactor payload processing logic
Streamlines payload processor class by encapsulating closely dependent
logic, to improve readability and maintainability.
2023-08-18 12:49:21 +02:00
Julius Unverfehrt
48d74b4307 Add support for absolute file paths
Introduces new payload parsing logic to be able to process absolute file
paths. The queue message is expected to contain the keys
"targetFilePath" and "responseFilePath".

To ensure backward-compatibility, the legacy "dossierId", "fileId"
messages are still supported.
2023-08-18 12:45:53 +02:00
Francisco Schulz
692ff204c3 Merge branch 'bugfix/RES-269' into 'master'
Bugfix/res 269

See merge request knecon/research/pyinfra!75
1.5.10
2023-08-17 09:55:27 +02:00
Francisco Schulz
03eddadcb9 update template 2023-08-17 09:48:35 +02:00
francisco.schulz
daddec7dc3 increment version 2023-07-18 16:59:50 +02:00
francisco.schulz
370e978fa7 upgrade dependencies, allow python>=3.8 2023-07-18 16:54:29 +02:00
Julius Unverfehrt
366d040ceb Merge branch 'RES-201-red-research-services-investigate-why-k-8-s-startup-probes-are-not-starting' into 'master'
RES-201 red research services investigate why k 8 s startup probes are not starting

See merge request knecon/research/pyinfra!74
2023-06-26 13:57:25 +02:00
francisco.schulz
9598b963ee remove dist/* files 2023-06-21 15:28:12 +02:00
francisco.schulz
2bacc4d971 update dependencies 1.5.9 2023-06-21 14:13:48 +02:00
francisco.schulz
d228c0a891 temporarily disable tests 2023-06-21 08:12:20 +02:00
francisco.schulz
4e6b4e2969 update dependencies 2023-06-20 17:13:26 +02:00
francisco.schulz
892b6e8236 use template CI 2023-06-20 17:13:08 +02:00
francisco.schulz
d63435e092 change k8s startup probe script to function call 2023-06-20 17:04:03 +02:00
Julius Unverfehrt
7e995bd78b Merge branch 'RES-196-red-hotfix-persistent-service-address' into 'master'
Fix: New tenant storage information endpoint

See merge request knecon/research/pyinfra!73
2023-06-15 16:29:38 +02:00
Julius Unverfehrt
c4e03d4641 Fix: New tenant storage information endpoint
Parametrize tenant enpoint and publick decryption key as environment
variable and set the default value to new endpoint.
1.5.8
2023-06-15 16:22:30 +02:00
Francisco Schulz
233b546f6f Merge branch 'update-azure-dependencies' into 'master'
update azure dependencies

See merge request knecon/research/pyinfra!72
1.5.7
2023-05-16 14:47:09 +02:00
francisco.schulz
5ed41a392a update version number 2023-05-16 14:18:46 +02:00
francisco.schulz
4a0c59b070 update deps 2023-05-16 13:42:53 +02:00
Christoph Schabert
e67ebc27b1 Merge branch 'RES-109-add-gitlab-ci' into 'master'
RES-109: add gitlab ci

See merge request knecon/research/pyinfra!71
2023-04-20 09:43:36 +02:00
francisco.schulz
309119cb62 update version 1.5.6 2023-04-18 15:48:50 +02:00
francisco.schulz
a381ac6b87 temp diable tests 2023-04-18 15:38:32 +02:00
francisco.schulz
6d49f0ccb9 add CI 2023-04-18 15:37:19 +02:00
Francisco Schulz
873abdca0c remove redundant files 2023-04-18 10:28:08 +02:00
Francisco Schulz
decd3710ab remove bamboo-spec 2023-04-18 10:18:35 +02:00
Julius Unverfehrt
d838413500 Pull request #70: Bugfix/RED-6273 forward processing kwargs
Merge in RR/pyinfra from bugfix/RED-6273-forward-processing-kwargs to master

Squashed commit of the following:

commit 2f45f7329dc6fd6166e08bad720e022e722737ad
Merge: 0a6d5df 0f4646e
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 28 17:55:24 2023 +0200

    Merge branch 'master' of ssh://git.iqser.com:2222/rr/pyinfra into bugfix/RED-6273-forward-processing-kwargs

commit 0a6d5dfc1a6edd8e6d171b50334b812a79f9288d
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 28 17:51:05 2023 +0200

    update pyinfra version

commit cd417c4b515d2a5d190af883af770bc660e15bb8
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 28 17:48:12 2023 +0200

    Revert poetry update

    - adds strange rust dependency for some reason
1.5.5
2023-03-28 17:57:20 +02:00
Julius Unverfehrt
0f4646e390 Pull request #69: fix monitoring preventing operation kwargs for processing fn getting forwarded
Merge in RR/pyinfra from bugfix/RED-6273-forward-operation-kwargs to master

Squashed commit of the following:

commit 347add07f8ea6e085064660ae79f0df9013dd9d6
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 28 17:16:41 2023 +0200

    update pyinfra version

commit 3c17047377aca666a015eaf0f06190d3dfa28c1c
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 28 17:13:59 2023 +0200

    fix monitoring preventing operation kwargs for processing fn getting forwarded
2023-03-28 17:17:09 +02:00
Julius Unverfehrt
793a427c50 Pull request #68: RED-6273 multi tenant storage
Merge in RR/pyinfra from RED-6273-multi-tenant-storage to master

Squashed commit of the following:

commit 0fead1f8b59c9187330879b4e48d48355885c27c
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 28 15:02:22 2023 +0200

    fix typos

commit 892a803726946876f8b8cd7905a0e73c419b2fb1
Author: Matthias Bisping <matthias.bisping@axbit.com>
Date:   Tue Mar 28 14:41:49 2023 +0200

    Refactoring

    Replace custom storage caching logic with LRU decorator

commit eafcd90260731e3360ce960571f07dee8f521327
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Fri Mar 24 12:50:13 2023 +0100

    fix bug in storage connection from endpoint

commit d0c9fb5b7d1c55ae2f90e8faa1efec9f7587c26a
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Fri Mar 24 11:49:34 2023 +0100

    add logs to PayloadProcessor

    - set log messages to determine if x-tenant
    storage connection is working

commit 97309fe58037b90469cf7a3de342d4749a0edfde
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Fri Mar 24 10:41:59 2023 +0100

    update PayloadProcessor

    - introduce storage cache to make every unique
    storage connection only once
    - add functionality to pass optional processing
    kwargs in queue message like the operation key to
    the processing function

commit d48e8108fdc0d463c89aaa0d672061ab7dca83a0
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Wed Mar 22 13:34:43 2023 +0100

    add multi-tenant storage connection 1st iteration

    - forward x-tenant-id from queue message header to
    payload processor
    - add functions to receive storage infos from an
    endpoint or the config. This enables hashing and
    caching of connections created from these infos
    - add function to initialize storage connections
    from storage infos
    - streamline and refactor tests to make them more
    readable and robust and to make it easier to add
     new tests
    - update payload processor with first iteration
    of multi tenancy storage connection support
    with connection caching and backwards compability

commit 52c047c47b98e62d0b834a9b9b6c0e2bb0db41e5
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 21 15:35:57 2023 +0100

    add AES/GCM cipher functions

    - decrypt x-tenant storage connection strings
1.5.3
2023-03-28 15:04:14 +02:00
Julius Unverfehrt
0f24a7f26d Pull request #67: fix prometheus address
Merge in RR/pyinfra from bugfix/RED-6205-prometheus-port to master

Squashed commit of the following:

commit e97d81bebfe34c24d8da4e4392ff7dbd3638e685
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 21 15:48:04 2023 +0100

    increase package version

commit c7e181a462e275c5f2cbf1e6df4c88dfefbe36b7
Author: Julius Unverfehrt <julius.unverfehrt@iqser.com>
Date:   Tue Mar 21 15:43:46 2023 +0100

    fix prometheus address

    - change loopback address to all available network interfaces to enable
    external metric scraping
    - disable ENV input for prometheus address and port since they should
    not be set in HELM
1.5.2
2023-03-21 15:54:47 +01:00
Julius Unverfehrt
ff6f437e84 Pull request #66: add safety mesasure for monitoring in case a service didn't find any results.
Merge in RR/pyinfra from add-safety-measure to master

* commit 'b985679d6b30b3a983c7b1df5fb23eef0dc95cd3':
  add safety mesasure for monitoring in case a service didn't find any results.
1.5.1 kn_utils.logging_2
2023-03-16 17:29:12 +01:00