Skip to content

Commit

Permalink
[CI] Add a scheduled workflow for tests and benchmarks (#2822)
Browse files Browse the repository at this point in the history
# Motivation

We want to run our unit tests, integration tests and benchmarks on a
regular schedule to understand how stable they are.

# Modification

This PR adds a scheduled workflow for the three above jobs. It runs it
three times a day so we get enough data throughout the day.

# Result

Continuous feedback about the stability of our tests.
  • Loading branch information
FranzBusch authored Aug 5, 2024
1 parent bd12191 commit 260c899
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 1 deletion.
4 changes: 3 additions & 1 deletion .github/workflows/pull_request_label.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 1
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Check for semver label
uses: ./github/actions/pull_request_label_checker.yml
uses: ".github/actions/pull_request_semver_label_checker/action.yml"
29 changes: 29 additions & 0 deletions .github/workflows/scheduled.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Scheduled

on:
schedule:
- cron: "0 8,20 * * *"

jobs:
unit-tests:
name: Unit tests
uses: ./.github/workflows/unit_tests.yml
with:
linux_5_8_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error"
linux_5_9_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error"
linux_5_10_arguments_override: "-Xswiftc -warnings-as-errors --explicit-target-dependency-import-check error"
linux_nightly_6_0_arguments_override: "--explicit-target-dependency-import-check error"
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error"

benchmarks:
name: Benchmarks
uses: ./.github/workflows/benchmarks.yml
with:
benchmark_package_path: "Benchmarks"

integration-tests:
name: Integration Tests
uses: ./.github/workflows/swift_matrix.yml
with:
name: "Integration tests"
matrix_linux_command: "apt-get update -y -q && apt-get install -y -q lsof dnsutils netcat-openbsd net-tools curl jq && ./scripts/integration_tests.sh"

0 comments on commit 260c899

Please sign in to comment.