Skip to content

Build and test Pekko with Scala 3 #285

Build and test Pekko with Scala 3

Build and test Pekko with Scala 3 #285

Workflow file for this run

name: Build and test Pekko with Scala 3
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
permissions: {}
concurrency:
# Only run once for latest commit per ref and cancel other (previous) runs.
group: ci-scala3-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: Test
runs-on: ubuntu-20.04
if: github.repository == 'apache/incubator-pekko'
strategy:
matrix:
command:
- testkit/test actor-tests/test
- actor-testkit-typed/test actor-typed-tests/test
- bench-jmh/test
- cluster/test cluster-tools/test cluster-typed/test distributed-data/test cluster-metrics/test cluster-sharding/test cluster-sharding-typed/test
- discovery/test coordination/test
- persistence/test persistence-shared/test persistence-query/test persistence-typed/test persistence-testkit/test persistence-tck/test persistence-typed-tests/test
- pki/test slf4j/test
- serialization-jackson/test
- stream/test stream-testkit/test stream-tests/test stream-typed/test stream-typed-tests/test
- stream-tests-tck/test
- remote/test remote-tests/test protobuf-v3/test
fail-fast: true
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
- name: Setup Java 11
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11
- name: Cache Coursier cache
uses: coursier/cache-action@v6
- name: Enable jvm-opts
run: cp .jvmopts-ci .jvmopts
- name: Compile and run tests on Scala 3
# note that this is not running any multi-jvm tests (yet) because multi-in-test=false
run: |
sbt \
-Dpekko.log.timestamps=true \
-Dpekko.test.timefactor=2 \
-Dpekko.actor.testkit.typed.timefactor=2 \
-Dpekko.test.multi-in-test=false \
-Dpekko.test.tags.exclude=gh-exclude,timing \
-Dmultinode.XX:MetaspaceSize=128M \
-Dmultinode.Xms256M \
-Dmultinode.Xmx256M \
-Dmultinode.XX:+AlwaysActAsServerClassMachine \
"+~ 3 ${{ matrix.command }}"
# comment out email actions until we have an email address to use (and we need to get INFRA to whitelist dawidd6/action-send-mail)
#- name: Email on failure
# if: ${{ failure() }}
# uses: dawidd6/action-send-mail@v3
# with:
# server_address: smtp.gmail.com
# server_port: 465
# username: ${{secrets.MAIL_USERNAME}}
# password: ${{secrets.MAIL_PASSWORD}}
# subject: "Failed: ${{ github.workflow }} / ${{ github.job }}"
# to: [email protected]
# from: Akka CI (GHActions)
# body: |
# Job ${{ github.job }} in workflow ${{ github.workflow }} of ${{github.repository}} failed!
# https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}