Skip to content

Commit 5b6ce17

Browse files
chore: consolidate commits for 2026-07-14
1 parent f8b0e36 commit 5b6ce17

9 files changed

Lines changed: 208 additions & 112 deletions

File tree

.github/dependabot.yml

Lines changed: 93 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,95 @@
11
version: 2
2-
32
updates:
4-
- package-ecosystem: "github-actions"
5-
directory: "/"
6-
schedule:
7-
interval: "weekly"
8-
day: "monday"
9-
time: "06:00"
10-
timezone: "Europe/Zurich"
11-
commit-message:
12-
prefix: "chore(deps)"
13-
labels:
14-
- "dependencies"
15-
- "github-actions"
16-
open-pull-requests-limit: 5
17-
groups:
18-
github-actions:
19-
patterns:
20-
- "*"
21-
22-
- package-ecosystem: "docker"
23-
directory: "/stack/build"
24-
schedule:
25-
interval: "daily"
26-
time: "01:00"
27-
timezone: "Europe/Zurich"
28-
commit-message:
29-
prefix: "chore(deps)"
30-
labels:
31-
- "dependencies"
32-
- "docker"
33-
open-pull-requests-limit: 5
34-
groups:
35-
build-stack-images:
36-
patterns:
37-
- "*"
38-
39-
- package-ecosystem: "docker"
40-
directory: "/stack/run"
41-
schedule:
42-
interval: "daily"
43-
time: "01:00"
44-
timezone: "Europe/Zurich"
45-
commit-message:
46-
prefix: "chore(deps)"
47-
labels:
48-
- "dependencies"
49-
- "docker"
50-
open-pull-requests-limit: 5
51-
groups:
52-
run-stack-images:
53-
patterns:
54-
- "*"
55-
56-
- package-ecosystem: "maven"
57-
directory: "/samples/java"
58-
schedule:
59-
interval: "weekly"
60-
day: "monday"
61-
time: "06:00"
62-
timezone: "Europe/Zurich"
63-
commit-message:
64-
prefix: "chore(deps)"
65-
labels:
66-
- "dependencies"
67-
- "java"
68-
open-pull-requests-limit: 5
69-
groups:
70-
spring-boot:
71-
patterns:
72-
- "org.springframework.boot:*"
73-
maven-dependencies:
74-
patterns:
75-
- "*"
76-
exclude-patterns:
77-
- "org.springframework.boot:*"
78-
79-
- package-ecosystem: "maven"
80-
directory: "/samples/java-native-image"
81-
schedule:
82-
interval: "weekly"
83-
day: "monday"
84-
time: "06:00"
85-
timezone: "Europe/Zurich"
86-
commit-message:
87-
prefix: "chore(deps)"
88-
labels:
89-
- "dependencies"
90-
- "java"
91-
open-pull-requests-limit: 5
92-
groups:
93-
spring-boot:
94-
patterns:
95-
- "org.springframework.boot:*"
96-
maven-dependencies:
97-
patterns:
98-
- "*"
99-
exclude-patterns:
100-
- "org.springframework.boot:*"
101-
# manual-trigger: 2026-04-27T06:12Z
3+
- package-ecosystem: github-actions
4+
directory: /
5+
schedule:
6+
interval: weekly
7+
day: monday
8+
time: 06:00
9+
timezone: Europe/Zurich
10+
commit-message:
11+
prefix: chore(deps)
12+
labels:
13+
- dependencies
14+
- github-actions
15+
open-pull-requests-limit: 5
16+
groups:
17+
github-actions:
18+
patterns:
19+
- '*'
20+
- package-ecosystem: docker
21+
directory: /stack/build
22+
schedule:
23+
interval: daily
24+
time: 06:00
25+
timezone: Europe/Zurich
26+
commit-message:
27+
prefix: chore(deps)
28+
labels:
29+
- dependencies
30+
- docker
31+
open-pull-requests-limit: 5
32+
groups:
33+
build-stack-images:
34+
patterns:
35+
- '*'
36+
- package-ecosystem: docker
37+
directory: /stack/run
38+
schedule:
39+
interval: daily
40+
time: 06:00
41+
timezone: Europe/Zurich
42+
commit-message:
43+
prefix: chore(deps)
44+
labels:
45+
- dependencies
46+
- docker
47+
open-pull-requests-limit: 5
48+
groups:
49+
run-stack-images:
50+
patterns:
51+
- '*'
52+
- package-ecosystem: maven
53+
directory: /samples/java
54+
schedule:
55+
interval: weekly
56+
day: monday
57+
time: 06:00
58+
timezone: Europe/Zurich
59+
commit-message:
60+
prefix: chore(deps)
61+
labels:
62+
- dependencies
63+
- java
64+
open-pull-requests-limit: 5
65+
groups:
66+
spring-boot:
67+
patterns:
68+
- org.springframework.boot:*
69+
maven-dependencies:
70+
patterns:
71+
- '*'
72+
exclude-patterns:
73+
- org.springframework.boot:*
74+
- package-ecosystem: maven
75+
directory: /samples/java-native-image
76+
schedule:
77+
interval: weekly
78+
day: monday
79+
time: 06:00
80+
timezone: Europe/Zurich
81+
commit-message:
82+
prefix: chore(deps)
83+
labels:
84+
- dependencies
85+
- java
86+
open-pull-requests-limit: 5
87+
groups:
88+
spring-boot:
89+
patterns:
90+
- org.springframework.boot:*
91+
maven-dependencies:
92+
patterns:
93+
- '*'
94+
exclude-patterns:
95+
- org.springframework.boot:*

.github/workflows/benchmark.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ jobs:
5757

5858
- name: Set up Java (Spring Boot sample only)
5959
if: matrix.java_version != ''
60-
uses: actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5
60+
uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5
6161
with:
6262
distribution: temurin
6363
java-version: ${{ matrix.java_version }}
@@ -194,7 +194,7 @@ jobs:
194194

195195
- name: Set up Java (Spring Boot sample only)
196196
if: matrix.java_version != ''
197-
uses: actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5
197+
uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5
198198
with:
199199
distribution: temurin
200200
java-version: ${{ matrix.java_version }}
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
name: Dependabot Auto Merge
2+
3+
on:
4+
pull_request_target:
5+
types:
6+
- opened
7+
- reopened
8+
- synchronize
9+
- ready_for_review
10+
11+
permissions:
12+
contents: write
13+
pull-requests: write
14+
15+
jobs:
16+
enable-auto-merge:
17+
if: github.event.pull_request.user.login == 'dependabot[bot]' && github.event.pull_request.draft == false
18+
runs-on: ubuntu-latest
19+
steps:
20+
- name: Approve and enable auto-merge
21+
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd
22+
with:
23+
script: |
24+
const { owner, repo } = context.repo;
25+
const pullNumber = context.payload.pull_request.number;
26+
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
27+
28+
try {
29+
await github.rest.pulls.createReview({
30+
owner,
31+
repo,
32+
pull_number: pullNumber,
33+
event: "APPROVE",
34+
body: "Auto-approving Dependabot pull request."
35+
});
36+
} catch (error) {
37+
console.log(`Approval skipped: ${error.message}`);
38+
}
39+
40+
const data = await github.graphql(
41+
`query($owner: String!, $repo: String!, $pullNumber: Int!) {
42+
repository(owner: $owner, name: $repo) {
43+
mergeCommitAllowed
44+
rebaseMergeAllowed
45+
squashMergeAllowed
46+
pullRequest(number: $pullNumber) {
47+
id
48+
}
49+
}
50+
}`,
51+
{ owner, repo, pullNumber }
52+
);
53+
54+
let mergeMethod = "SQUASH";
55+
if (!data.repository.squashMergeAllowed) {
56+
if (data.repository.rebaseMergeAllowed) {
57+
mergeMethod = "REBASE";
58+
} else if (data.repository.mergeCommitAllowed) {
59+
mergeMethod = "MERGE";
60+
} else {
61+
throw new Error("No merge method is enabled for this repository.");
62+
}
63+
}
64+
65+
const mutation = `mutation($pullRequestId: ID!, $mergeMethod: PullRequestMergeMethod!) {
66+
enablePullRequestAutoMerge(input: { pullRequestId: $pullRequestId, mergeMethod: $mergeMethod }) {
67+
clientMutationId
68+
}
69+
}`;
70+
71+
const variables = {
72+
pullRequestId: data.repository.pullRequest.id,
73+
mergeMethod
74+
};
75+
76+
for (let attempt = 1; attempt <= 6; attempt += 1) {
77+
try {
78+
await github.graphql(mutation, variables);
79+
core.info(`Enabled auto-merge using ${mergeMethod} on attempt ${attempt}.`);
80+
return;
81+
} catch (error) {
82+
const unstable = error.errors?.some((entry) => entry.message?.includes("unstable status")) || error.message?.includes("unstable status");
83+
const missingProtection = error.errors?.some((entry) => entry.message?.includes("Protected branch rules not configured")) || error.message?.includes("Protected branch rules not configured");
84+
85+
if (missingProtection) {
86+
core.info("Skipping auto-merge enablement because the base branch has no protection rules configured.");
87+
return;
88+
}
89+
90+
if (!unstable) {
91+
throw error;
92+
}
93+
94+
if (attempt === 6) {
95+
core.info("Skipping auto-merge enablement because the pull request remained unstable after retries.");
96+
return;
97+
}
98+
99+
core.info(`Pull request still unstable on attempt ${attempt}; retrying in 10 seconds.`);
100+
await sleep(10000);
101+
}
102+
}

.github/workflows/openrewrite.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
3939

4040
- name: Set up Java
41-
uses: actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5
41+
uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5
4242
with:
4343
distribution: temurin
4444
java-version: "25"
@@ -85,7 +85,7 @@ jobs:
8585
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
8686

8787
- name: Set up Java
88-
uses: actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5
88+
uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5
8989
with:
9090
distribution: temurin
9191
java-version: "25"

.github/workflows/quality-gates.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
5959

6060
- name: Set up Java
61-
uses: actions/setup-java@1bcf9fb12cf4aa7d266a90ae39939e61372fe520 # v5
61+
uses: actions/setup-java@0f481fcb613427c0f801b606911222b5b6f3083a # v5
6262
with:
6363
distribution: temurin
6464
java-version: "25"

.github/workflows/scorecard.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ jobs:
4444
publish_results: true
4545

4646
- name: Upload Scorecard SARIF
47-
uses: github/codeql-action/upload-sarif@54f647b7e1bb85c95cddabcd46b0c578ec92bc1a # v4
47+
uses: github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
4848
with:
4949
sarif_file: scorecard-results.sarif
5050
category: scorecard

.github/workflows/security-scan.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,14 @@ jobs:
5050
output-file: hadolint-run.sarif
5151

5252
- name: Upload hadolint SARIF (build image)
53-
uses: github/codeql-action/upload-sarif@54f647b7e1bb85c95cddabcd46b0c578ec92bc1a # v4
53+
uses: github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
5454
if: always()
5555
with:
5656
sarif_file: hadolint-build.sarif
5757
category: hadolint-build
5858

5959
- name: Upload hadolint SARIF (run image)
60-
uses: github/codeql-action/upload-sarif@54f647b7e1bb85c95cddabcd46b0c578ec92bc1a # v4
60+
uses: github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
6161
if: always()
6262
with:
6363
sarif_file: hadolint-run.sarif
@@ -89,7 +89,7 @@ jobs:
8989
github-pat: ${{ secrets.GITHUB_TOKEN }}
9090

9191
- name: Upload Trivy SARIF – filesystem
92-
uses: github/codeql-action/upload-sarif@54f647b7e1bb85c95cddabcd46b0c578ec92bc1a # v4
92+
uses: github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
9393
if: always()
9494
with:
9595
sarif_file: trivy-fs.sarif
@@ -133,7 +133,7 @@ jobs:
133133
github-pat: ${{ secrets.GITHUB_TOKEN }}
134134

135135
- name: Upload Trivy SARIF – build stack image
136-
uses: github/codeql-action/upload-sarif@54f647b7e1bb85c95cddabcd46b0c578ec92bc1a # v4
136+
uses: github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
137137
if: always()
138138
with:
139139
sarif_file: trivy-build-image.sarif
@@ -177,7 +177,7 @@ jobs:
177177
github-pat: ${{ secrets.GITHUB_TOKEN }}
178178

179179
- name: Upload Trivy SARIF – run stack image
180-
uses: github/codeql-action/upload-sarif@54f647b7e1bb85c95cddabcd46b0c578ec92bc1a # v4
180+
uses: github/codeql-action/upload-sarif@99df26d4f13ea111d4ec1a7dddef6063f76b97e9 # v4
181181
if: always()
182182
with:
183183
sarif_file: trivy-run-image.sarif

0 commit comments

Comments
 (0)