release
All checks were successful
Build Docker Images / build-and-push (push) Successful in 1m19s

This commit is contained in:
Michał Zieliński
2025-10-13 22:08:44 +02:00
parent bc3a76b82b
commit 27433d1bd5

View File

@@ -25,14 +25,37 @@ function replaceInFile(file, mapToken) {
}
(async () => {
const secrets = JSON.parse(process.env.SECRETS || '{}');
const variables = JSON.parse(process.env.VARIABLES || '{}');
// DEFENSIVE: handle null/undefined gracefully
let secrets = {};
let variables = {};
try {
secrets = JSON.parse(process.env.SECRETS || '{}');
} catch (e) {
console.warn('⚠️ Failed to parse SECRETS:', e.message);
}
try {
variables = JSON.parse(process.env.VARIABLES || '{}');
} catch (e) {
console.warn('⚠️ Failed to parse VARIABLES:', e.message);
}
const RUN_ID = process.env.RUN_ID || process.env.GITHUB_RUN_ID || '';
console.log(`📦 Loaded ${Object.keys(secrets).length} secrets, ${Object.keys(variables).length} variables`);
const mapToken = (token) => {
if (token === 'BUILDID') return RUN_ID;
// Try variables first, then secrets
return variables[token] ?? secrets[token];
// Check variables first, then secrets
if (variables && variables[token] != null) {
return variables[token];
}
if (secrets && secrets[token] != null) {
return secrets[token];
}
return null;
};
const files = [
@@ -45,14 +68,14 @@ function replaceInFile(file, mapToken) {
process.exit(1);
}
console.log(` Tokenizing ${files.length} file(s):`);
console.log(`🔎 Tokenizing ${files.length} file(s):`);
files.forEach(f => console.log(` - ${f}`));
const missing = new Set();
// First pass: replace tokens
for (const file of files) {
console.log(`\n Processing: ${file}`);
console.log(`\n📝 Processing: ${path.basename(file)}`);
replaceInFile(file, mapToken);
}
@@ -69,7 +92,8 @@ function replaceInFile(file, mapToken) {
if (missing.size > 0) {
console.error(`\n❌ Missing values for tokens: ${Array.from(missing).join(', ')}`);
console.error('\nMake sure these secrets/variables are configured in Gitea repo settings.');
console.error('\n💡 Make sure these secrets/variables are configured in Gitea repo settings:');
console.error(' Settings → Secrets → Add secret');
process.exit(1);
}