From f97fcf4c3455f649c94124f6d10af871868ea5eb Mon Sep 17 00:00:00 2001 From: Maxim Slipenko Date: Sun, 29 Dec 2024 17:30:00 +0300 Subject: [PATCH] fix: add version info in karkas_lite --- gitflic-ci.yaml | 6 +++--- src/karkas_lite/Dockerfile | 12 +++++++++--- src/karkas_lite/karkas_lite/__main__.py | 6 +++++- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/gitflic-ci.yaml b/gitflic-ci.yaml index af78261..419a833 100644 --- a/gitflic-ci.yaml +++ b/gitflic-ci.yaml @@ -13,8 +13,7 @@ lint-pre-commit: - pre-commit run --all-files cache: paths: - - .cache/pip - - .cache/pre-commit + - .cache/ .docker-dev-build-template: before_script: @@ -23,9 +22,10 @@ lint-pre-commit: scripts: - | cd ./src/${KARKAS_PROJECT} + export APP_VERSION=$(echo "$(git show -s --format=%ad --date=format:%Y.%m.%d $CI_COMMIT_SHA) (sha-$(git rev-parse --short=8 $CI_COMMIT_SHA))") export IMAGE_COMMIT=${IMAGE_NAME}:${CI_COMMIT_SHA} export IMAGE_BRANCH=${IMAGE_NAME}:$(echo $CI_COMMIT_REF_NAME | sed 's/[^a-zA-Z0-9]/-/g') - docker build -t ${IMAGE_COMMIT} -t ${IMAGE_BRANCH} -f Dockerfile ../.. + docker build --build-arg APP_VERSION="$APP_VERSION" -t ${IMAGE_COMMIT} -t ${IMAGE_BRANCH} -f Dockerfile ../.. docker push ${IMAGE_COMMIT} docker push ${IMAGE_BRANCH} diff --git a/src/karkas_lite/Dockerfile b/src/karkas_lite/Dockerfile index 24247b8..8363919 100644 --- a/src/karkas_lite/Dockerfile +++ b/src/karkas_lite/Dockerfile @@ -1,6 +1,9 @@ -FROM python:3.12-slim AS dependencies_installer +ARG APP_VERSION=dev -RUN pip install poetry +FROM python:3.12-slim AS dependencies_installer +ENV PIP_DEFAULT_TIMEOUT=1000 + +RUN pip install poetry==1.8.5 WORKDIR /app @@ -21,8 +24,9 @@ COPY ./src/karkas_piccolo /app/src/karkas_piccolo COPY ./src/karkas_lite /app/src/karkas_lite FROM python:3.12-slim AS local_dependencies_installer +ENV PIP_DEFAULT_TIMEOUT=100 -RUN pip install poetry +RUN pip install poetry==1.8.5 COPY --from=dependencies_installer /app/src/karkas_lite/.venv /app/src/karkas_lite/.venv COPY --from=src /app/src/ /app/src/ @@ -34,5 +38,7 @@ COPY --from=local_dependencies_installer /app/src/karkas_lite/.venv /app/src/kar COPY --from=src /app/src/ /app/src/ WORKDIR /app/src/karkas_lite ENV PATH="/app/.venv/bin:$PATH" +ARG APP_VERSION +ENV APP_VERSION=${APP_VERSION} CMD ["/bin/bash", "-c", ". .venv/bin/activate && python -m karkas_lite"] diff --git a/src/karkas_lite/karkas_lite/__main__.py b/src/karkas_lite/karkas_lite/__main__.py index 6c33543..4bdbd19 100644 --- a/src/karkas_lite/karkas_lite/__main__.py +++ b/src/karkas_lite/karkas_lite/__main__.py @@ -1,4 +1,5 @@ import asyncio +import os from karkas_blocks import block_loader from karkas_core import Karkas @@ -17,7 +18,10 @@ async def main(): block_loader("standard", "report"), # block_loader("standard", "welcome", safe=False), block_loader("standard", "help"), - ] + ], + metainfo={ + 'app_version': os.getenv('APP_VERSION'), + } ) await ocab.start()