diff --git a/.dockerignore b/.dockerignore index 67d5dc92..f749263d 100644 --- a/.dockerignore +++ b/.dockerignore @@ -13,4 +13,5 @@ static/upload venv/ .venv .coverage -htmlcov \ No newline at end of file +htmlcov +.git/ \ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 47a0ec43..de09a763 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -114,16 +114,25 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - - name: Build image and publish to Docker Registry - uses: docker/build-push-action@v3 - with: - push: true - tags: ${{ steps.meta.outputs.tags }} - # We need to checkout the repository in order for the "Create Sentry release" to work - name: Checkout repository uses: actions/checkout@v2 + - name: Prepare version file + run: | + BUILD_INFO_FILE=app/build_info.py + echo "SHA1 = '${{ github.ref }}'" > $BUILD_INFO_FILE + BUILD_TIME=$(date +%s) + echo "BUILD_TIME = '${BUILD_TIME}' >> $BUILD_INFO_FILE + cat $BUILD_INFO_FILE + + - name: Build image and publish to Docker Registry + uses: docker/build-push-action@v3 + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + - name: Create Sentry release uses: getsentry/action-release@v1 env: diff --git a/.version b/.version new file mode 100644 index 00000000..90012116 --- /dev/null +++ b/.version @@ -0,0 +1 @@ +dev \ No newline at end of file diff --git a/app/build_info.py b/app/build_info.py new file mode 100644 index 00000000..c73f88ea --- /dev/null +++ b/app/build_info.py @@ -0,0 +1,2 @@ +SHA1 = "dev" +BUILD_TIME = "1652365083" diff --git a/app/config.py b/app/config.py index 72eec144..90131b93 100644 --- a/app/config.py +++ b/app/config.py @@ -2,14 +2,13 @@ import os import random import socket import string -import subprocess from ast import literal_eval from typing import Callable, List from urllib.parse import urlparse from dotenv import load_dotenv -SHA1 = subprocess.getoutput("git rev-parse HEAD") + ROOT_DIR = os.path.abspath(os.path.dirname(os.path.dirname(__file__))) diff --git a/app/monitor/views.py b/app/monitor/views.py index a14c9d8a..a2482616 100644 --- a/app/monitor/views.py +++ b/app/monitor/views.py @@ -1,4 +1,4 @@ -from app.config import SHA1 +from app.build_info import SHA1 from app.monitor.base import monitor_bp diff --git a/server.py b/server.py index 2de10c41..df17f837 100644 --- a/server.py +++ b/server.py @@ -41,12 +41,12 @@ from app.admin_model import ( ) from app.api.base import api_bp from app.auth.base import auth_bp +from app.build_info import SHA1 from app.config import ( DB_URI, FLASK_SECRET, SENTRY_DSN, URL, - SHA1, PADDLE_MONTHLY_PRODUCT_ID, FLASK_PROFILER_PATH, FLASK_PROFILER_PASSWORD,