diff --git a/README.md b/README.md index f2d5649..2ded776 100644 --- a/README.md +++ b/README.md @@ -145,10 +145,10 @@ jobs: contents: read id-token: write # for OpenID Connect authentication with CodSpeed steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v3 + - uses: actions/checkout@v7 + - uses: actions/setup-python@v7 with: - python-version: "3.9" + python-version: "3.13" - name: Install dependencies run: pip install -r requirements.txt @@ -179,17 +179,17 @@ on: workflow_dispatch: jobs: - name: Run benchmarks benchmarks: + name: Run benchmarks runs-on: ubuntu-latest permissions: # optional for public repositories contents: read id-token: write # for OpenID Connect authentication with CodSpeed steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Setup rust toolchain, cache and cargo-codspeed binary - uses: moonrepo/setup-rust@v0 + uses: moonrepo/setup-rust@v1 with: channel: stable cache-target: release @@ -231,9 +231,9 @@ jobs: contents: read id-token: write # for OpenID Connect authentication with CodSpeed steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v7 - name: Install dependencies run: npm install diff --git a/examples/cli-commands-codspeed.yml b/examples/cli-commands-codspeed.yml new file mode 100644 index 0000000..4b4f510 --- /dev/null +++ b/examples/cli-commands-codspeed.yml @@ -0,0 +1,29 @@ +name: CodSpeed + +on: + push: + branches: + - "main" # or "master" + pull_request: # required to have reports on PRs + # `workflow_dispatch` allows CodSpeed to trigger backtest + # performance analysis in order to generate initial data. + workflow_dispatch: + +permissions: # optional for public repositories + contents: read + id-token: write # for OpenID Connect authentication with CodSpeed + +jobs: + codspeed: + name: Run benchmarks + runs-on: codspeed-macro-arm64-graviton-ubuntu-22-04 + steps: + - uses: actions/checkout@v7 + + # Install your toolchain and build your executable here. + + - name: Run the benchmarks defined in codspeed.yml + uses: CodSpeedHQ/action@v5 + with: + mode: walltime + # No `run` input: the action runs the benchmarks of codspeed.yml. diff --git a/examples/cpp-cmake-codspeed.yml b/examples/cpp-cmake-codspeed.yml index 282c195..d26c1f4 100644 --- a/examples/cpp-cmake-codspeed.yml +++ b/examples/cpp-cmake-codspeed.yml @@ -18,7 +18,7 @@ jobs: name: Run benchmarks runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Build C++ benchmarks run: | diff --git a/examples/go-codspeed.yml b/examples/go-codspeed.yml index 2411987..774c8fc 100644 --- a/examples/go-codspeed.yml +++ b/examples/go-codspeed.yml @@ -16,12 +16,12 @@ permissions: # optional for public repositories jobs: codspeed: name: Run benchmarks - runs-on: codspeed-macro + runs-on: codspeed-macro-arm64-graviton-ubuntu-22-04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Setup Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v7 with: go-version: stable diff --git a/examples/java-gradle-codspeed.yml b/examples/java-gradle-codspeed.yml new file mode 100644 index 0000000..45e3f85 --- /dev/null +++ b/examples/java-gradle-codspeed.yml @@ -0,0 +1,34 @@ +name: CodSpeed + +on: + push: + branches: + - "main" # or "master" + pull_request: # required to have reports on PRs + # `workflow_dispatch` allows CodSpeed to trigger backtest + # performance analysis in order to generate initial data. + workflow_dispatch: + +permissions: # optional for public repositories + contents: read + id-token: write # for OpenID Connect authentication with CodSpeed + +jobs: + codspeed: + name: Run benchmarks + runs-on: codspeed-macro-arm64-graviton-ubuntu-22-04 + steps: + - uses: actions/checkout@v7 + with: + submodules: recursive # the CodSpeed JMH fork is a submodule + + - uses: actions/setup-java@v6 + with: + distribution: temurin + java-version: 21 + + - name: Run Java benchmarks + uses: CodSpeedHQ/action@v5 + with: + mode: walltime # the JVM integration only supports walltime mode + run: ./gradlew jmh --no-daemon # a Gradle daemon would outlive the build and keep this step waiting diff --git a/examples/kotlin-gradle-codspeed.yml b/examples/kotlin-gradle-codspeed.yml new file mode 100644 index 0000000..94b4e02 --- /dev/null +++ b/examples/kotlin-gradle-codspeed.yml @@ -0,0 +1,34 @@ +name: CodSpeed + +on: + push: + branches: + - "main" # or "master" + pull_request: # required to have reports on PRs + # `workflow_dispatch` allows CodSpeed to trigger backtest + # performance analysis in order to generate initial data. + workflow_dispatch: + +permissions: # optional for public repositories + contents: read + id-token: write # for OpenID Connect authentication with CodSpeed + +jobs: + codspeed: + name: Run benchmarks + runs-on: codspeed-macro-arm64-graviton-ubuntu-22-04 + steps: + - uses: actions/checkout@v7 + with: + submodules: recursive # the CodSpeed JMH fork is a submodule + + - uses: actions/setup-java@v6 + with: + distribution: temurin + java-version: 21 + + - name: Run Kotlin benchmarks + uses: CodSpeedHQ/action@v5 + with: + mode: walltime # the JVM integration only supports walltime mode + run: ./gradlew jmh --no-daemon # a Gradle daemon would outlive the build and keep this step waiting diff --git a/examples/nodejs-typescript-codspeed.yml b/examples/nodejs-typescript-codspeed.yml index be57026..3ebdc12 100644 --- a/examples/nodejs-typescript-codspeed.yml +++ b/examples/nodejs-typescript-codspeed.yml @@ -18,9 +18,9 @@ jobs: name: Run benchmarks runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - - uses: actions/setup-node@v3 + - uses: actions/setup-node@v7 - name: Install dependencies run: npm install diff --git a/examples/python-pytest-codspeed.yml b/examples/python-pytest-codspeed.yml index f0c0153..7bc8f61 100644 --- a/examples/python-pytest-codspeed.yml +++ b/examples/python-pytest-codspeed.yml @@ -18,11 +18,11 @@ jobs: name: Run benchmarks runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - - uses: actions/setup-python@v3 + - uses: actions/setup-python@v7 with: - python-version: "3.9" + python-version: "3.13" - name: Install dependencies run: pip install -r requirements.txt diff --git a/examples/rust-cargo-codspeed.yml b/examples/rust-cargo-codspeed.yml index e93fcda..22fdaff 100644 --- a/examples/rust-cargo-codspeed.yml +++ b/examples/rust-cargo-codspeed.yml @@ -18,10 +18,10 @@ jobs: name: Run benchmarks runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Setup rust toolchain, cache and cargo-codspeed binary - uses: moonrepo/setup-rust@v0 + uses: moonrepo/setup-rust@v1 with: channel: stable cache-target: release diff --git a/examples/scala-gradle-codspeed.yml b/examples/scala-gradle-codspeed.yml new file mode 100644 index 0000000..74a3fe1 --- /dev/null +++ b/examples/scala-gradle-codspeed.yml @@ -0,0 +1,34 @@ +name: CodSpeed + +on: + push: + branches: + - "main" # or "master" + pull_request: # required to have reports on PRs + # `workflow_dispatch` allows CodSpeed to trigger backtest + # performance analysis in order to generate initial data. + workflow_dispatch: + +permissions: # optional for public repositories + contents: read + id-token: write # for OpenID Connect authentication with CodSpeed + +jobs: + codspeed: + name: Run benchmarks + runs-on: codspeed-macro-arm64-graviton-ubuntu-22-04 + steps: + - uses: actions/checkout@v7 + with: + submodules: recursive # the CodSpeed JMH fork is a submodule + + - uses: actions/setup-java@v6 + with: + distribution: temurin + java-version: 21 + + - name: Run Scala benchmarks + uses: CodSpeedHQ/action@v5 + with: + mode: walltime # the JVM integration only supports walltime mode + run: ./gradlew jmh --no-daemon # a Gradle daemon would outlive the build and keep this step waiting