Skip to content

Commit 0bc67b5

Browse files
authored
Add Windows nightly breakage test (#41)
Rename the existing breakage workflow to clarify it's Linux-only, and add a new Windows breakage test triggered by the ponyc Windows nightly release event.
1 parent 7208e18 commit 0bc67b5

2 files changed

Lines changed: 49 additions & 1 deletion

File tree

.github/workflows/breakage-against-ponyc-latest.yml renamed to .github/workflows/breakage-against-linux-ponyc-latest.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: ponyc update breakage test
1+
name: Linux ponyc update breakage test
22

33
on:
44
repository_dispatch:
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Windows ponyc update breakage test
2+
3+
on:
4+
repository_dispatch:
5+
types: [ponyc-windows-nightly-released]
6+
7+
permissions:
8+
packages: read
9+
10+
jobs:
11+
windows:
12+
name: Verify main against the latest ponyc on Windows
13+
runs-on: windows-2025
14+
steps:
15+
- name: Disable Windows Defender
16+
run: Set-MpPreference -DisableRealtimeMonitoring $true
17+
- uses: actions/checkout@v6.0.2
18+
- name: Cache LibreSSL libs
19+
id: cache-libressl
20+
uses: actions/cache@v5.0.3
21+
with:
22+
path: |
23+
ssl.lib
24+
crypto.lib
25+
tls.lib
26+
key: libressl-${{ runner.os }}-${{ runner.arch }}-${{ hashFiles('.ci-scripts/windows-install-libressl.ps1') }}
27+
- name: Install LibreSSL
28+
if: steps.cache-libressl.outputs.cache-hit != 'true'
29+
run: .ci-scripts\windows-install-libressl.ps1
30+
- name: Test with most recent ponyc nightly
31+
run: |
32+
Invoke-WebRequest https://dl.cloudsmith.io/public/ponylang/nightlies/raw/versions/latest/ponyc-x86-64-pc-windows-msvc.zip -OutFile C:\ponyc.zip;
33+
Expand-Archive -Force -Path C:\ponyc.zip -DestinationPath C:\ponyc;
34+
Invoke-WebRequest https://dl.cloudsmith.io/public/ponylang/releases/raw/versions/latest/corral-x86-64-pc-windows-msvc.zip -OutFile C:\corral.zip;
35+
Expand-Archive -Force -Path C:\corral.zip -DestinationPath C:\ponyc;
36+
$env:PATH = 'C:\ponyc\bin;' + $env:PATH;
37+
.\make.ps1 -Command test 2>&1;
38+
- name: Send alert on failure
39+
if: ${{ failure() }}
40+
uses: zulip/github-actions-zulip/send-message@e4c8f27c732ba9bd98ac6be0583096dea82feea5
41+
with:
42+
api-key: ${{ secrets.ZULIP_SCHEDULED_JOB_FAILURE_API_KEY }}
43+
email: ${{ secrets.ZULIP_SCHEDULED_JOB_FAILURE_EMAIL }}
44+
organization-url: 'https://ponylang.zulipchat.com/'
45+
to: notifications
46+
type: stream
47+
topic: ${{ github.repository }} scheduled job failure
48+
content: ${{ github.server_url}}/${{ github.repository }}/actions/runs/${{ github.run_id }} failed.

0 commit comments

Comments
 (0)