fix: add version info in karkas_lite

This commit is contained in:
Maxim Slipenko 2024-12-29 17:30:00 +03:00
parent 3edee6e930
commit f97fcf4c34
No known key found for this signature in database
GPG Key ID: 6DEA9FA7DE98C7D6
3 changed files with 17 additions and 7 deletions
gitflic-ci.yaml
src/karkas_lite

View File

@ -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}

View File

@ -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"]

View File

@ -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()