diff --git a/scripts/build.js b/scripts/build.js index 09a5660..584b825 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -13,7 +13,7 @@ * * Environment: * REGISTRY - Docker registry (default: harbor.gitdata.me/gta_team) - * TAG - Image tag (default: latest) + * TAG - Image tag (default: git short SHA) * TARGET - Rust build target (default: x86_64-unknown-linux-gnu) */ @@ -22,7 +22,8 @@ const path = require('path'); const fs = require('fs'); const REGISTRY = process.env.REGISTRY || 'harbor.gitdata.me/gta_team'; -const TAG = process.env.TAG || new Date().toISOString().slice(0, 13).replace('T', '-'); +const GIT_SHA_SHORT = execSync('git rev-parse --short HEAD', {encoding: 'utf8'}).trim(); +const TAG = process.env.TAG || GIT_SHA_SHORT; const BUILD_TARGET = process.env.TARGET || 'x86_64-unknown-linux-gnu'; const RUST_SERVICES = ['app', 'gitserver', 'email-worker', 'git-hook', 'operator', 'static']; diff --git a/scripts/deploy.js b/scripts/deploy.js index db8e9fe..5353365 100644 --- a/scripts/deploy.js +++ b/scripts/deploy.js @@ -9,7 +9,7 @@ * * Environment: * REGISTRY - Docker registry (default: harbor.gitdata.me/gta_team) - * TAG - Image tag (default: latest) + * TAG - Image tag (default: git short SHA) * NAMESPACE - Kubernetes namespace (default: gitdata) * RELEASE - Helm release name (default: gitdata) * KUBECONFIG - Path to kubeconfig (default: ~/.kube/config) @@ -20,7 +20,8 @@ const path = require('path'); const fs = require('fs'); const REGISTRY = process.env.REGISTRY || 'harbor.gitdata.me/gta_team'; -const TAG = process.env.TAG || process.env.GITHUB_SHA?.substring(0, 8) || 'latest'; +const GIT_SHA_SHORT = execSync('git rev-parse --short HEAD', {encoding: 'utf8'}).trim(); +const TAG = process.env.TAG || process.env.GITHUB_SHA?.substring(0, 8) || GIT_SHA_SHORT; const NAMESPACE = process.env.NAMESPACE || 'gitdataai'; const RELEASE = process.env.RELEASE || 'gitdata'; const CHART_PATH = path.join(__dirname, '..', 'deploy'); diff --git a/scripts/push.js b/scripts/push.js index bf9c982..7df6ddb 100644 --- a/scripts/push.js +++ b/scripts/push.js @@ -8,7 +8,7 @@ * * Environment: * REGISTRY - Docker registry (default: harbor.gitdata.me/gta_team) - * TAG - Image tag (default: latest) + * TAG - Image tag (default: git short SHA) * DOCKER_USER - Registry username * DOCKER_PASS - Registry password */ @@ -16,7 +16,8 @@ const { execSync } = require('child_process'); const REGISTRY = process.env.REGISTRY || 'harbor.gitdata.me/gta_team'; -const TAG = process.env.TAG || new Date().toISOString().slice(0, 13).replace('T', '-'); +const GIT_SHA_SHORT = execSync('git rev-parse --short HEAD', {encoding: 'utf8'}).trim(); +const TAG = process.env.TAG || GIT_SHA_SHORT; const DOCKER_USER = process.env.DOCKER_USER || process.env.HARBOR_USERNAME; const DOCKER_PASS = process.env.DOCKER_PASS || process.env.HARBOR_PASSWORD;