diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ffa1295..effbf3c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,7 +9,7 @@ build: - if: $CI_COMMIT_BRANCH tags: [ docker ] before_script: - - echo "COMMIT=`git rev-parse HEAD`" >> version.env + - echo "COMMIT=${CI_COMMIT_SHA}" >> version.env # COMMIT=`git rev-parse HEAD` script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker build . --tag ${CI_REGISTRY}/${CI_PROJECT_PATH}/${CI_BUILD_REF_NAME}:${CI_BUILD_REF} @@ -24,9 +24,13 @@ deploy: stage: deploy rules: - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + before_script: + - echo "COMMIT=${CI_COMMIT_SHA}" >> version.env + - source version.env + - echo "Building docker image for commit ${COMMIT} with version ${VERSION}" script: - docker login -u $PUBLIC_REGISTRY_USER -p $PUBLIC_REGISTRY_TOKEN - - docker build . --tag $PUBLIC_REGISTRY_USER/${CI_PROJECT_NAME}:${CI_BUILD_REF} + - docker build . --tag $PUBLIC_REGISTRY_USER/${CI_PROJECT_NAME}:${VERSION} - docker build . --tag $PUBLIC_REGISTRY_USER/${CI_PROJECT_NAME}:latest - - docker push $PUBLIC_REGISTRY_USER/${CI_PROJECT_NAME}:${CI_BUILD_REF} + - docker push $PUBLIC_REGISTRY_USER/${CI_PROJECT_NAME}:${VERSION} - docker push $PUBLIC_REGISTRY_USER/${CI_PROJECT_NAME}:latest diff --git a/Dockerfile b/Dockerfile index c3aa040..5819ef5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,6 +11,7 @@ RUN apk update \ && apk del build-deps COPY app /app +COPY version.env /version.env COPY README.md /README.md HEALTHCHECK --start-period=30s --interval=10s --timeout=5s --retries=3 CMD curl --insecure --fail https://localhost/status || exit 1 diff --git a/README.md b/README.md index d3a7cd3..1d40908 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,10 @@ HTML rendered README.md. Status endpoint, used for *healthcheck*. Shows also current version and commit hash. +### `GET /docs` + +OpenAPI specifications rendered from `GET /openapi.json`. + ### `GET /-/origins` List registered origins. diff --git a/app/main.py b/app/main.py index 2af3bc9..f35d3fc 100644 --- a/app/main.py +++ b/app/main.py @@ -5,7 +5,7 @@ from uuid import uuid4 from os.path import join, dirname from os import getenv -from dotenv import dotenv_values +from dotenv import load_dotenv from fastapi import FastAPI, HTTPException from fastapi.requests import Request from fastapi.encoders import jsonable_encoder @@ -22,7 +22,7 @@ from Crypto.PublicKey import RSA from Crypto.PublicKey.RSA import RsaKey logger = logging.getLogger() -dotenv_values('version.env') +load_dotenv('../version.env') VERSION, COMMIT, DEBUG = getenv('VERSION', 'unknown'), getenv('COMMIT', 'unknown'), bool(getenv('DEBUG', False))