From 71685f9419d87ae8baecbf93ab85d44728e9b645 Mon Sep 17 00:00:00 2001 From: John Ogle Date: Mon, 11 May 2026 22:11:21 -0700 Subject: [PATCH] fix(renovate): fix openclaw digest replacement and group updates into single PR Two fixes: 1. The regex was splitting the digest as a literal 'sha256:' prefix plus a captured hex group. But the docker datasource's newDigest already includes the 'sha256:' prefix, so the template was producing 'sha256:sha256:...' with the previous fix, or bare hex without it originally. Now the regex captures the full digest value including the prefix, and the template outputs it as-is. 2. Added a packageRule to group tag and digest updates for ghcr.io/openclaw/openclaw into a single PR instead of two separate ones. --- renovate.json | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/renovate.json b/renovate.json index 40aa29e..cd35996 100644 --- a/renovate.json +++ b/renovate.json @@ -27,9 +27,9 @@ "/^packages/openclaw-image/default\\.nix$/" ], "matchStrings": [ - " # renovate: datasource=(?[^\\s]+) depName=(?[^\\s]+)\\n openclawImageTag = \"(?[^\"]+)\";\\n openclawImageDigest = \"sha256:(?[^\"]+)\";" + " # renovate: datasource=(?[^\\s]+) depName=(?[^\\s]+)\\n openclawImageTag = \"(?[^\"]+)\";\\n openclawImageDigest = \"(?[^\"]+)\";" ], - "autoReplaceStringTemplate": " # renovate: datasource={{{datasource}}} depName={{{depName}}}\n openclawImageTag = \"{{{newValue}}}\";\n openclawImageDigest = \"sha256:{{{newDigest}}}\";" + "autoReplaceStringTemplate": " # renovate: datasource={{{datasource}}} depName={{{depName}}}\n openclawImageTag = \"{{{newValue}}}\";\n openclawImageDigest = \"{{{newDigest}}}\";" } ], "packageRules": [ @@ -90,6 +90,16 @@ "matchPackageNames": [ "/google-cookie-retrieval/" ] + }, + { + "description": "Group all openclaw Docker image updates into one PR", + "matchManagers": [ + "regex" + ], + "matchPackageNames": [ + "ghcr.io/openclaw/openclaw" + ], + "groupName": "openclaw" } ] }