Skip to content

Commit 7d80967

Browse files
DineshKumarRAVietND96
authored andcommitted
Automate dependencies repins for Renovate PRs (SeleniumHQ#14709)
Co-authored-by: Viet Nguyen Duc <[email protected]>
1 parent 6bd87a8 commit 7d80967

File tree

4 files changed

+128
-18
lines changed

4 files changed

+128
-18
lines changed

.github/workflows/bazel.yml

+3
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,9 @@ jobs:
8282
steps:
8383
- name: Checkout source tree
8484
uses: actions/checkout@v4
85+
- name: Pull latest changes
86+
if: startsWith(github.head_ref, 'renovate/')
87+
run: git pull origin ${{ github.head_ref }}
8588
- name: Free space
8689
if: inputs.os != 'windows'
8790
run: ./scripts/github-actions/free-disk-space.sh

.github/workflows/ci-rbe.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ on:
1010
jobs:
1111
format:
1212
name: Format
13-
if: github.repository_owner == 'seleniumhq'
13+
if: github.repository_owner == 'seleniumhq' && startsWith(github.head_ref, 'renovate/') != true
1414
uses: ./.github/workflows/bazel.yml
1515
with:
1616
name: Check format script run
@@ -20,7 +20,7 @@ jobs:
2020

2121
test:
2222
name: Test
23-
if: github.repository_owner == 'seleniumhq'
23+
if: github.repository_owner == 'seleniumhq' && startsWith(github.head_ref, 'renovate/') != true
2424
uses: ./.github/workflows/bazel.yml
2525
with:
2626
name: All RBE tests

.github/workflows/ci-renovate-rbe.yml

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: CI - Renovate - RBE
2+
3+
on:
4+
push:
5+
branches:
6+
- renovate/*
7+
workflow_dispatch:
8+
9+
jobs:
10+
format:
11+
runs-on: ubuntu-latest
12+
if: github.repository_owner == 'seleniumhq'
13+
steps:
14+
- name: Checkout Repository
15+
uses: actions/checkout@v4
16+
- name: java - repin dependencies
17+
if: contains(join(github.event.commits.*.message), '[java]')
18+
run: REPIN=1 bazel run @maven//:pin
19+
- name: rust - repin dependencies
20+
if: contains(join(github.event.commits.*.message), '[rust]')
21+
run: CARGO_BAZEL_REPIN=true bazel sync --only=crates
22+
- name: js - repin dependencies
23+
if: contains(join(github.event.commits.*.message), '[js]')
24+
run: bazel run -- @pnpm//:pnpm install --dir $PWD --lockfile-only
25+
- name: dotnet - repin dependencies
26+
if: contains(join(github.event.commits.*.message), '[dotnet]')
27+
run: ./dotnet/update-deps.sh
28+
- name: py - repin dependencies
29+
if: contains(join(github.event.commits.*.message), '[py]')
30+
run: bazel run //py:requirements.update
31+
- name: Commit files
32+
run: |
33+
export CHANGES=$(git status -s)
34+
if [ -n "$CHANGES" ]; then
35+
git config --local user.email "[email protected]"
36+
git config --local user.name "Selenium CI Bot"
37+
git add .
38+
git commit -m 'Repin dependencies'
39+
git push
40+
fi
41+
42+
check-format:
43+
needs: format
44+
name: Check format
45+
if: github.repository_owner == 'seleniumhq'
46+
uses: ./.github/workflows/bazel.yml
47+
with:
48+
name: Check format script run
49+
caching: false
50+
ruby-version: jruby-9.4.8.0
51+
run: ./scripts/github-actions/check-format.sh
52+
53+
test:
54+
name: Test
55+
if: github.repository_owner == 'seleniumhq'
56+
uses: ./.github/workflows/bazel.yml
57+
with:
58+
name: All RBE tests
59+
caching: false
60+
ruby-version: jruby-9.4.8.0
61+
run: ./scripts/github-actions/ci-build.sh

renovate.json

+62-16
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,82 @@
11
{
22
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
33
"extends": ["config:recommended"],
4-
"labels": ["dependencies"],
54
"packageRules": [
65
{
7-
"matchPackageNames": ["bazel", "bazelisk"],
8-
"commitMessageSuffix": "[dotnet][java][js][py][rb][rust]"
6+
"matchManagers": [ "bazel", "bazel-module", "bazelisk" ],
7+
"matchPackageNames": [ "!rules_java", "!rules_jvm_external", "!contrib_rules_jvm", "!rules_dotnet", "!aspect_rules_js", "!aspect_rules_ts", "!rules_nodejs", "!rules_python", "!rules_ruby", "!rules_cc" ],
8+
"matchDatasources": [ "!maven" ],
9+
"commitMessagePrefix": "[dotnet][java][js][py][rb][rust]",
10+
"labels": [ "dependencies", "c-build" ]
911
},
1012
{
11-
"matchPackageNames": ["nuget"],
12-
"commitMessagePrefix": "[dotnet]"
13+
"matchManagers": [ "nuget" ],
14+
"commitMessagePrefix": "[dotnet]",
15+
"labels": [ "dependencies", "c-dotnet" ]
1316
},
1417
{
15-
"matchPackageNames": ["maven"],
16-
"commitMessagePrefix": "[java]"
18+
"matchPackageNames": [ "rules_dotnet" ],
19+
"commitMessagePrefix": "[dotnet]",
20+
"labels": [ "dependencies", "c-dotnet" ]
1721
},
1822
{
19-
"matchPackageNames": ["npm"],
20-
"commitMessagePrefix": "[js]"
23+
"matchManagers": [ "bazel", "bazel-module" ],
24+
"matchDatasources": ["maven"],
25+
"versioning": "maven",
26+
"commitMessagePrefix": "[java]",
27+
"labels": [ "dependencies", "c-java" ]
2128
},
2229
{
23-
"matchPackageNames": ["pip_requirements"],
24-
"commitMessagePrefix": "[py]"
30+
"matchManagers": [ "bazel-module" ],
31+
"matchPackageNames": [ "rules_java", "rules_jvm_external", "contrib_rules_jvm" ],
32+
"commitMessagePrefix": "[java]",
33+
"labels": [ "dependencies", "c-java" ]
2534
},
2635
{
27-
"matchPackageNames": ["bundler", "ruby-version"],
28-
"commitMessagePrefix": "[rb]"
36+
"matchManagers": [ "maven" ],
37+
"commitMessagePrefix": "[java]",
38+
"labels": [ "dependencies", "c-java" ]
2939
},
3040
{
31-
"matchPackageNames": ["cargo"],
32-
"commitMessagePrefix": "[rust]"
41+
"matchManagers": [ "npm" ],
42+
"commitMessagePrefix": "[js]",
43+
"labels": [ "dependencies", "c-nodejs" ]
44+
},
45+
{
46+
"matchPackageNames": [ "aspect_rules_js", "aspect_rules_ts", "rules_nodejs" ],
47+
"commitMessagePrefix": "[js]",
48+
"labels": [ "dependencies", "c-nodejs" ]
49+
},
50+
{
51+
"matchManagers": [ "pip_requirements", "pip_setup" ],
52+
"commitMessagePrefix": "[py]",
53+
"labels": [ "dependencies", "c-py" ]
54+
},
55+
{
56+
"matchPackageNames": [ "rules_python" ],
57+
"commitMessagePrefix": "[py]",
58+
"labels": [ "dependencies", "c-py" ]
59+
},
60+
{
61+
"matchManagers": [ "bundler", "ruby-version" ],
62+
"commitMessagePrefix": "[rb]",
63+
"labels": [ "dependencies", "c-rb" ]
64+
},
65+
{
66+
"matchPackageNames": [ "rules_ruby" ],
67+
"commitMessagePrefix": "[rb]",
68+
"labels": [ "dependencies", "c-rb" ]
69+
},
70+
{
71+
"matchManagers": [ "cargo" ],
72+
"commitMessagePrefix": "[rust]",
73+
"labels": [ "dependencies", "c-rust" ]
74+
},
75+
{
76+
"matchPackageNames": [ "rules_cc" ],
77+
"commitMessagePrefix": "[rust]",
78+
"labels": [ "dependencies", "c-rust" ]
3379
}
3480
],
35-
"prConcurrentLimit": 5
81+
"prConcurrentLimit": 10
3682
}

0 commit comments

Comments
 (0)