Skip to content

Commit 82944cc

Browse files
committed
Add workflow to check requirements
Use reqcheck to verify the latest versions of the requirements.
1 parent 761d685 commit 82944cc

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed

.github/workflows/reqcheck.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
name: Check requirements
2+
3+
on:
4+
# Run every monday at noon
5+
schedule:
6+
- cron: 0 12 * * 1
7+
workflow_dispatch:
8+
9+
jobs:
10+
reqcheck:
11+
name: Check for new requirements versions
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
# Get the Git SHA used in WebKit
16+
- name: Determine vcpkg sha
17+
uses: actions/github-script@v8
18+
id: get-sha
19+
with:
20+
result-encoding: string
21+
script: |
22+
const res = await fetch('https://raw.githubusercontent.com/WebKit/WebKit/refs/heads/main/vcpkg-configuration.json');
23+
if (res.ok) {
24+
const data = await res.json();
25+
return data['default-registry']['baseline'];
26+
}
27+
return '';
28+
29+
- uses: actions/checkout@v4
30+
with:
31+
repository: microsoft/vcpkg
32+
ref: ${{ steps.get-sha.outputs.result }}
33+
- uses: actions/checkout@v4
34+
with:
35+
path: WebKitRequirements
36+
37+
# Download reqcheck locally
38+
- name: Download reqcheck
39+
uses: robinraju/release-downloader@v1
40+
with:
41+
repository: WebKitForWindows/reqcheck
42+
latest: true
43+
fileName: reqcheck_linux_amd64.tar.gz
44+
- name: Unzip reqcheck
45+
run: tar -zxvf reqcheck_linux_amd64.tar.gz
46+
- name: Verify reqcheck
47+
run: ./reqcheck --help
48+
- name: Add config
49+
run: cp WebKitRequirements/.reqcheck.yml .reqcheck.yml
50+
51+
# Run the command
52+
- name: Run reqcheck
53+
run: ./reqcheck vcpkg --slack --output-file results.json --overlay WebKitRequirements .
54+
env:
55+
github_public_token: ${{ secrets.GITHUB_TOKEN }}
56+
gitlab_freedesktop_token: ${{ secrets.GITLAB_FREEDESKTOP_TOKEN }}
57+
58+
# Notify the results to WebKit slack
59+
- name: Forward a saved message
60+
uses: slackapi/slack-github-action@v2
61+
with:
62+
payload-file-path: results.json
63+
payload-templated: true
64+
webhook: ${{ secrets.SLACK_WEBHOOK_URL }}
65+
webhook-type: incoming-webhook
66+
env:
67+
SLACK_CHANNEL_ID: windows

0 commit comments

Comments
 (0)