perf: split renovate into low-memory manager batches
Some checks failed
CICD / Build and Publish CICD Base Image (push) Waiting to run
CICD / Build and Publish CICD Base Image (pull_request) Successful in 47s
CICD / E2E Tests Failure Postmortem (push) Has been cancelled
CICD / Build and Push CICD Image (push) Has been cancelled
CICD / Build CICD Image Failure Postmortem (push) Has been cancelled
CICD / Backend Tests (push) Has been cancelled
CICD / Pre-commit Checks (push) Has been cancelled
CICD / Frontend Tests (push) Has been cancelled
CICD / Backend Doctests (push) Has been cancelled
CICD / Frontend Dependency Audit (push) Has been cancelled
CICD / Backend Dependency Audit (push) Has been cancelled
CICD / CICD Tests Complete (push) Has been cancelled
CICD / Build Backend Base Image (push) Has been cancelled
CICD / Build Frontend Base Image (push) Has been cancelled
CICD / Build Integration Tester Image (push) Has been cancelled
CICD / Production Image Failures Postmortem (push) Has been cancelled
CICD / Source Lanes Failure Postmortem (push) Has been cancelled
CICD / Runtime Black-Box Integration Tests (push) Has been cancelled
CICD / Build E2E Tester Image (push) Has been cancelled
CICD / Build Backend Main Image (push) Has been cancelled
CICD / Build Frontend Main Image (push) Has been cancelled
CICD / Production Images Complete (push) Has been cancelled
CICD / Integration Tests Failure Postmortem (push) Has been cancelled
CICD / End-to-End Tests (push) Has been cancelled
CICD / Build and Push CICD Image (pull_request) Successful in 1h14m16s
CICD / Build CICD Image Failure Postmortem (pull_request) Has been skipped
CICD / Pre-commit Checks (pull_request) Successful in 7m39s
CICD / Backend Tests (pull_request) Failing after 9m8s
CICD / Backend Doctests (pull_request) Successful in 21s
CICD / Frontend Tests (pull_request) Successful in 1m51s
CICD / Frontend Dependency Audit (pull_request) Failing after 1m22s
CICD / Backend Dependency Audit (pull_request) Failing after 2m13s
CICD / Source Lanes Failure Postmortem (pull_request) Successful in 32s
CICD / CICD Tests Complete (pull_request) Failing after 33s
CICD / Build Backend Base Image (pull_request) Has been skipped
CICD / Build Frontend Base Image (pull_request) Has been skipped
CICD / Build Integration Tester Image (pull_request) Has been skipped
CICD / Build E2E Tester Image (pull_request) Has been skipped
CICD / Build Backend Main Image (pull_request) Has been skipped
CICD / Build Frontend Main Image (pull_request) Has been skipped
CICD / Production Images Complete (pull_request) Failing after 41s
CICD / Runtime Black-Box Integration Tests (pull_request) Has been skipped
CICD / End-to-End Tests (pull_request) Has been skipped
CICD / Production Image Failures Postmortem (pull_request) Has been skipped
CICD / Integration Tests Failure Postmortem (pull_request) Has been skipped
CICD / E2E Tests Failure Postmortem (pull_request) Has been skipped

This commit is contained in:
copilotcoder
2026-07-13 21:39:33 -04:00
parent fd46194673
commit 9f9d2dbf45

View File

@@ -350,8 +350,11 @@ jobs:
run_renovate_with_endpoint() {
endpoint="$1"
enabled_managers="$2"
batch_label="$3"
export RENOVATE_ENDPOINT="${endpoint}"
echo "Running Renovate with endpoint: ${RENOVATE_ENDPOINT}"
echo "Running Renovate batch '${batch_label}' with endpoint: ${RENOVATE_ENDPOINT}"
echo "Enabled managers for '${batch_label}': ${enabled_managers}"
# shellcheck disable=SC2086
docker run --rm ${DOCKER_ADD_HOST_ARG} \
@@ -388,20 +391,32 @@ jobs:
git config --global --add "url.${RENOVATE_GIT_REWRITE_TO}.insteadOf" "https://x-access-token:${RENOVATE_TOKEN}@dogar.darkhelm.org/"
git config --global --add "url.${RENOVATE_GIT_REWRITE_TO}.insteadOf" "${RENOVATE_GIT_REWRITE_FROM}"
echo "Configured git dogar->kankali rewrite rules"
renovate --platform "${RENOVATE_PLATFORM}" --endpoint "${RENOVATE_ENDPOINT}" --git-url "${RENOVATE_GIT_URL}" --git-author "${RENOVATE_GIT_AUTHOR}" --onboarding="${RENOVATE_ONBOARDING}" --pr-concurrent-limit "${RENOVATE_PR_CONCURRENT_LIMIT}" --branch-concurrent-limit "${RENOVATE_BRANCH_CONCURRENT_LIMIT}" --osv-vulnerability-alerts="${RENOVATE_OSV_VULNERABILITY_ALERTS}" DarkHelm.org/plex-playlist'
renovate --platform "${RENOVATE_PLATFORM}" --endpoint "${RENOVATE_ENDPOINT}" --git-url "${RENOVATE_GIT_URL}" --git-author "${RENOVATE_GIT_AUTHOR}" --onboarding="${RENOVATE_ONBOARDING}" --pr-concurrent-limit "${RENOVATE_PR_CONCURRENT_LIMIT}" --branch-concurrent-limit "${RENOVATE_BRANCH_CONCURRENT_LIMIT}" --osv-vulnerability-alerts="${RENOVATE_OSV_VULNERABILITY_ALERTS}" --enabled-managers "${enabled_managers}" DarkHelm.org/plex-playlist'
}
if run_renovate_with_endpoint "${BASE_ENDPOINT}" 2>&1 | tee /tmp/renovate.log; then
:
else
primary_status=$?
if [ "${primary_status}" -eq 137 ] || grep -qE '(^|[[:space:]])Killed($|[[:space:]])|exitcode '\''137'\''' /tmp/renovate.log; then
echo "❌ Renovate terminated by OOM/kill signal on primary endpoint; skipping endpoint retry"
exit "${primary_status}"
run_batch_with_fallback() {
enabled_managers="$1"
batch_label="$2"
if run_renovate_with_endpoint "${BASE_ENDPOINT}" "${enabled_managers}" "${batch_label}" 2>&1 | tee -a /tmp/renovate.log; then
return 0
fi
echo "⚠ Renovate run failed with primary endpoint. Retrying with API endpoint form..."
run_renovate_with_endpoint "${API_ENDPOINT}" 2>&1 | tee /tmp/renovate.log
fi
primary_status=$?
if [ "${primary_status}" -eq 137 ]; then
echo "❌ Renovate batch '${batch_label}' terminated by OOM/kill signal on primary endpoint; skipping endpoint retry"
return "${primary_status}"
fi
echo "⚠ Renovate batch '${batch_label}' failed with primary endpoint. Retrying with API endpoint form..."
run_renovate_with_endpoint "${API_ENDPOINT}" "${enabled_managers}" "${batch_label}" 2>&1 | tee -a /tmp/renovate.log
}
: > /tmp/renovate.log
# Run low-memory batches sequentially to keep peak usage below constrained runner limits.
run_batch_with_fallback "docker-compose,dockerfile,github-actions,pep621,custom.regex" "core"
run_batch_with_fallback "npm" "npm"
echo "✓ Renovate execution completed"