perf: stabilize batched renovate runs
Some checks failed
CICD / Build and Publish CICD Base Image (push) Successful in 1m6s
CICD / E2E Tests Failure Postmortem (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 / Build and Push CICD Image (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 / 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 / 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 / Integration Tests Failure Postmortem (push) Has been cancelled
CICD / End-to-End Tests (push) Has been cancelled
Some checks failed
CICD / Build and Publish CICD Base Image (push) Successful in 1m6s
CICD / E2E Tests Failure Postmortem (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 / Build and Push CICD Image (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 / 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 / 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 / Integration Tests Failure Postmortem (push) Has been cancelled
CICD / End-to-End Tests (push) Has been cancelled
This commit is contained in:
@@ -290,7 +290,7 @@ jobs:
|
||||
SELECTED_TOKEN_SOURCE="${SELECTED_TOKEN_RESULT%%:*}"
|
||||
SELECTED_TOKEN="${SELECTED_TOKEN_RESULT#*:}"
|
||||
export RENOVATE_TOKEN="${SELECTED_TOKEN}"
|
||||
RENOVATE_HOST_RULES_PAYLOAD="[{\"matchHost\":\"${ENDPOINT_AUTHORITY}\",\"token\":\"${SELECTED_TOKEN}\",\"authType\":\"Token-Only\"},{\"matchHost\":\"registry.npmjs.org\",\"timeout\":90000,\"concurrentRequestLimit\":2},{\"matchHost\":\"pypi.org\",\"timeout\":90000,\"concurrentRequestLimit\":2},{\"matchHost\":\"files.pythonhosted.org\",\"timeout\":90000,\"concurrentRequestLimit\":2},{\"matchHost\":\"mcr.microsoft.com\",\"timeout\":90000,\"concurrentRequestLimit\":2}]"
|
||||
RENOVATE_HOST_RULES_PAYLOAD="[{\"matchHost\":\"${ENDPOINT_AUTHORITY}\",\"token\":\"${SELECTED_TOKEN}\",\"authType\":\"Token-Only\"},{\"matchHost\":\"registry.npmjs.org\",\"timeout\":90000,\"concurrentRequestLimit\":1},{\"matchHost\":\"pypi.org\",\"timeout\":90000,\"concurrentRequestLimit\":2},{\"matchHost\":\"files.pythonhosted.org\",\"timeout\":90000,\"concurrentRequestLimit\":2},{\"matchHost\":\"mcr.microsoft.com\",\"timeout\":90000,\"concurrentRequestLimit\":2}]"
|
||||
|
||||
# Authenticate GitHub datasource calls to avoid anonymous GraphQL rate limiting.
|
||||
if [ -n "${RENOVATE_GITHUB_COM_TOKEN:-}" ]; then
|
||||
@@ -348,13 +348,28 @@ jobs:
|
||||
unset RENOVATE_IGNORE_SCHEDULE
|
||||
fi
|
||||
|
||||
# Multi-batch runs must not prune branches created by earlier batches.
|
||||
export RENOVATE_PRUNE_STALE_BRANCHES="false"
|
||||
|
||||
run_renovate_with_endpoint() {
|
||||
endpoint="$1"
|
||||
enabled_managers="$2"
|
||||
batch_label="$3"
|
||||
batch_node_args="${RENOVATE_NODE_ARGS}"
|
||||
batch_pr_limit="${RENOVATE_PR_CONCURRENT_LIMIT}"
|
||||
batch_branch_limit="${RENOVATE_BRANCH_CONCURRENT_LIMIT}"
|
||||
|
||||
if [ "${batch_label}" = "npm" ]; then
|
||||
batch_node_args="--max-old-space-size=384"
|
||||
batch_pr_limit="1"
|
||||
batch_branch_limit="1"
|
||||
fi
|
||||
|
||||
export RENOVATE_ENDPOINT="${endpoint}"
|
||||
echo "Running Renovate batch '${batch_label}' with endpoint: ${RENOVATE_ENDPOINT}"
|
||||
echo "Enabled managers for '${batch_label}': ${enabled_managers}"
|
||||
echo "Node args for '${batch_label}': ${batch_node_args}"
|
||||
echo "PR/branch limits for '${batch_label}': ${batch_pr_limit}/${batch_branch_limit}"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
docker run --rm ${DOCKER_ADD_HOST_ARG} \
|
||||
@@ -375,12 +390,13 @@ jobs:
|
||||
-e RENOVATE_GIT_AUTHOR \
|
||||
-e RENOVATE_ONBOARDING \
|
||||
-e RENOVATE_REQUIRE_CONFIG \
|
||||
-e RENOVATE_PR_CONCURRENT_LIMIT \
|
||||
-e RENOVATE_BRANCH_CONCURRENT_LIMIT \
|
||||
-e RENOVATE_NODE_ARGS \
|
||||
-e RENOVATE_PR_CONCURRENT_LIMIT="${batch_pr_limit}" \
|
||||
-e RENOVATE_BRANCH_CONCURRENT_LIMIT="${batch_branch_limit}" \
|
||||
-e RENOVATE_NODE_ARGS="${batch_node_args}" \
|
||||
-e RENOVATE_OSV_VULNERABILITY_ALERTS \
|
||||
-e RENOVATE_FETCH_CHANGELOGS \
|
||||
-e RENOVATE_IGNORE_SCHEDULE \
|
||||
-e RENOVATE_PRUNE_STALE_BRANCHES \
|
||||
-e RENOVATE_ENABLED_MANAGERS="${enabled_managers}" \
|
||||
--entrypoint /bin/sh \
|
||||
"${RENOVATE_IMAGE}" \
|
||||
@@ -416,7 +432,7 @@ jobs:
|
||||
: > /tmp/renovate.log
|
||||
|
||||
# Run low-memory batches sequentially to keep peak usage below constrained runner limits.
|
||||
run_batch_with_fallback "docker-compose,dockerfile,custom.regex" "containers"
|
||||
run_batch_with_fallback "docker-compose,dockerfile" "containers"
|
||||
run_batch_with_fallback "github-actions,pep621" "python-and-actions"
|
||||
run_batch_with_fallback "npm" "npm"
|
||||
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
"dockerfile",
|
||||
"github-actions",
|
||||
"npm",
|
||||
"pep621",
|
||||
"regex"
|
||||
"pep621"
|
||||
],
|
||||
"packageRules": [
|
||||
{
|
||||
@@ -104,26 +103,6 @@
|
||||
"enabled": false
|
||||
}
|
||||
],
|
||||
"customManagers": [
|
||||
{
|
||||
"description": "Update Python version in Dockerfiles",
|
||||
"customType": "regex",
|
||||
"fileMatch": ["^Dockerfile.*$"],
|
||||
"matchStrings": ["FROM python:(?<currentValue>\\d+\\.\\d+)"],
|
||||
"datasourceTemplate": "docker",
|
||||
"depNameTemplate": "python",
|
||||
"versioningTemplate": "loose"
|
||||
},
|
||||
{
|
||||
"description": "Update Node.js version in Dockerfiles",
|
||||
"customType": "regex",
|
||||
"fileMatch": ["^Dockerfile.*$"],
|
||||
"matchStrings": ["FROM node:(?<currentValue>\\d+)"],
|
||||
"datasourceTemplate": "docker",
|
||||
"depNameTemplate": "node",
|
||||
"versioningTemplate": "node"
|
||||
}
|
||||
],
|
||||
"osvVulnerabilityAlerts": false,
|
||||
"vulnerabilityAlerts": {
|
||||
"enabled": true,
|
||||
|
||||
Reference in New Issue
Block a user