@@ -332,3 +332,66 @@ jobs:
332332 type : stream
333333 topic : ${{ github.repository }} scheduled job failure
334334 content : ${{ github.server_url}}/${{ github.repository }}/actions/runs/${{ github.run_id }} failed.
335+
336+ arm64-macos :
337+ runs-on : macos-14
338+
339+ strategy :
340+ fail-fast : false
341+ matrix :
342+ include :
343+ - name : " arm64 macOS [release]"
344+ target : test-stress-ubench-release
345+ - name : " arm64 macOS [debug]"
346+ target : test-stress-ubench-debug
347+ - name : " arm64 macOS [cd] [release]"
348+ target : test-stress-ubench-with-cd-release
349+ - name : " arm64 macOS [cd] [debug]"
350+ target : test-stress-ubench-with-cd-debug
351+ - name : " arm64 macOS [release]"
352+ target : test-stress-tcp-open-close-release
353+ - name : " arm64 macOS [debug]"
354+ target : test-stress-tcp-open-close-debug
355+ - name : " arm64 macOS [cd] [release]"
356+ target : test-stress-tcp-open-close-with-cd-release
357+ - name : " arm64 macOS [cd] [debug]"
358+ target : test-stress-tcp-open-close-with-cd-debug
359+
360+ name : ${{matrix.target}}:${{ matrix.name }}
361+ steps :
362+ - name : Checkout
363+ uses : actions/checkout@v4.1.1
364+ - name : Restore Libs Cache
365+ id : restore-libs
366+ uses : actions/cache/restore@v4
367+ with :
368+ path : build/libs
369+ key : libs-arm64-macos-14-${{ hashFiles('Makefile', 'CMakeLists.txt', 'lib/CMakeLists.txt') }}
370+ - name : Build Libs
371+ if : steps.restore-libs.outputs.cache-hit != 'true'
372+ run : make libs build_flags=-j8
373+ - name : Save Libs Cache
374+ if : steps.restore-libs.outputs.cache-hit != 'true'
375+ uses : actions/cache/save@v4
376+ with :
377+ path : build/libs
378+ key : libs-arm64-macos-14-${{ hashFiles('Makefile', 'CMakeLists.txt', 'lib/CMakeLists.txt') }}
379+ - name : Build Debug Runtime
380+ run : |
381+ make configure config=debug
382+ make build config=debug
383+ - name : Configure networking
384+ run : bash .ci-scripts/macOS-configure-networking.bash
385+ - name : Run Stress Test
386+ run : make ${{ matrix.target }} config=debug usedebugger=lldb
387+ - name : Send alert on failure
388+ if : ${{ failure() }}
389+ uses : zulip/github-actions-zulip/send-message@e4c8f27c732ba9bd98ac6be0583096dea82feea5
390+ with :
391+ api-key : ${{ secrets.ZULIP_SCHEDULED_JOB_FAILURE_API_KEY }}
392+ email : ${{ secrets.ZULIP_SCHEDULED_JOB_FAILURE_EMAIL }}
393+ organization-url : ' https://ponylang.zulipchat.com/'
394+ to : notifications
395+ type : stream
396+ topic : ${{ github.repository }} scheduled job failure
397+ content : ${{ github.server_url}}/${{ github.repository }}/actions/runs/${{ github.run_id }} failed.
0 commit comments