Scala 3.3.1 and improve Scala 3 compatibility (#3010) #532
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
tags-ignore: | |
- v* | |
permissions: | |
contents: read | |
concurrency: | |
# Only run once for latest commit per ref and cancel other (previous) runs. | |
group: ci-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
style-compile-mima: | |
name: Compile, Code Style, Binary Compatibility | |
runs-on: ubuntu-22.04 | |
env: | |
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: # https://github.com/olafurpg/setup-scala#faster-checkout-of-big-repos | |
fetch-depth: 100 | |
- name: Fetch tags | |
run: git fetch --depth=100 origin +refs/tags/*:refs/tags/* | |
- name: Set up JDK 11 | |
uses: coursier/[email protected] | |
with: | |
jvm: temurin:1.11 | |
- name: Cache Coursier cache | |
uses: coursier/[email protected] | |
- name: "Code style, compile tests, MiMa. Run locally with: sbt \"verifyCodeStyle; +Test/compile; mimaReportBinaryIssues\"" | |
run: sbt "verifyCodeStyle; +Test/compile; mimaReportBinaryIssues" | |
compile-jdk-8: | |
name: Compile with JDK 8 | |
runs-on: ubuntu-22.04 | |
env: | |
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: # https://github.com/olafurpg/setup-scala#faster-checkout-of-big-repos | |
fetch-depth: 100 | |
- name: Fetch tags | |
run: git fetch --depth=100 origin +refs/tags/*:refs/tags/* | |
- name: Set up JDK 8 | |
uses: coursier/[email protected] | |
with: | |
jvm: adopt:1.8.0-275 | |
- name: Cache Coursier cache | |
uses: coursier/[email protected] | |
- name: "Compile JDK 8" | |
run: sbt compile | |
documentation: | |
name: ScalaDoc, Documentation with Paradox | |
runs-on: ubuntu-22.04 | |
env: | |
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: # https://github.com/olafurpg/setup-scala#faster-checkout-of-big-repos | |
fetch-depth: 100 | |
- name: Fetch tags | |
run: git fetch --depth=100 origin +refs/tags/*:refs/tags/* | |
- name: Set up JDK 11 | |
uses: coursier/[email protected] | |
with: | |
jvm: temurin:1.11 | |
- name: Cache Coursier cache | |
uses: coursier/[email protected] | |
- name: "Create all API docs and create site with Paradox" | |
run: sbt docs/makeSite | |
- name: Run Link Validator | |
run: cs launch net.runne::site-link-validator:0.2.3 -- scripts/link-validator.conf | |
connectors: | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { connector: amqp, pre_cmd: 'docker-compose up -d amqp' } | |
- { connector: avroparquet-tests } | |
- { connector: awslambda } | |
- { connector: aws-event-bridge, pre_cmd: 'docker-compose up -d amazoneventbridge' } | |
- { connector: azure-storage-queue } | |
- { connector: cassandra, pre_cmd: 'docker-compose up -d cassandra' } | |
- { connector: couchbase, pre_cmd: 'docker-compose up -d couchbase_prep' } | |
- { connector: csv } | |
- { connector: dynamodb, pre_cmd: 'docker-compose up -d dynamodb' } | |
- { connector: elasticsearch, pre_cmd: 'docker-compose up -d elasticsearch6 elasticsearch7 opensearch1' } | |
- { connector: file } | |
- { connector: ftp, pre_cmd: './scripts/ftp-servers.sh' } | |
- { connector: geode, pre_cmd: 'docker-compose up -d geode' } | |
- { connector: google-cloud-bigquery } | |
- { connector: google-cloud-bigquery-storage } | |
- { connector: google-cloud-pub-sub, pre_cmd: 'docker-compose up -d gcloud-pubsub-emulator_prep' } | |
- { connector: google-cloud-pub-sub-grpc, pre_cmd: 'docker-compose up -d gcloud-pubsub-emulator_prep' } | |
- { connector: google-cloud-storage } | |
- { connector: google-common } | |
- { connector: google-fcm } | |
# hbase disabled until we resolve why new docker image fails our build: https://github.com/akka/alpakka/issues/2185 | |
# - { connector: hbase, pre_cmd: 'docker-compose up -d hbase' } | |
- { connector: hdfs, pre_cmd: 'file ${HOME}/.cache/coursier/v1/https/repo1.maven.org/maven2/org/typelevel/cats-kernel_2.13/2.0.0/cats-kernel_2.13-2.0.0.jar' } | |
- { connector: huawei-push-kit } | |
- { connector: influxdb, pre_cmd: 'docker-compose up -d influxdb' } | |
- { connector: ironmq, pre_cmd: 'docker-compose up -d ironauth ironmq' } | |
- { connector: jms, pre_cmd: 'docker-compose up -d ibmmq' } | |
- { connector: json-streaming } | |
- { connector: kinesis } | |
- { connector: kudu, pre_cmd: 'docker-compose up -d kudu-master-data kudu-tserver-data kudu-master kudu-tserver' } | |
- { connector: mongodb, pre_cmd: 'docker-compose up -d mongo' } | |
- { connector: mqtt, pre_cmd: 'docker-compose up -d mqtt' } | |
- { connector: mqtt-streaming, pre_cmd: 'docker-compose up -d mqtt' } | |
- { connector: orientdb, pre_cmd: 'docker-compose up -d orientdb' } | |
- { connector: pravega, pre_cmd: 'docker-compose up -d pravega'} | |
- { connector: reference } | |
- { connector: s3 } | |
- { connector: spring-web } | |
- { connector: simple-codecs } | |
- { connector: slick } | |
- { connector: sns, pre_cmd: 'docker-compose up -d amazonsns' } | |
- { connector: solr } | |
- { connector: sqs, pre_cmd: 'docker-compose up -d elasticmq' } | |
- { connector: sse } | |
- { connector: text } | |
- { connector: udp } | |
- { connector: unix-domain-socket } | |
- { connector: xml } | |
env: | |
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
steps: | |
- name: Checkout | |
uses: actions/[email protected] | |
with: # gh-detect-changes.sh compares with the target branch | |
fetch-depth: 0 | |
- name: Detect changes in Alpakka ${{ matrix.connector }} | |
env: | |
CONNECTOR: ${{ matrix.connector }} | |
run: ./scripts/gh-detect-changes.sh "${CONNECTOR}" | |
- name: Set up JDK 8 | |
if: env.execute_build == 'true' | |
uses: coursier/[email protected] | |
with: | |
jvm: temurin:1.8 | |
- name: Cache Coursier cache | |
if: env.execute_build == 'true' | |
uses: coursier/[email protected] | |
- name: ${{ matrix.connector }} | |
if: env.execute_build == 'true' | |
env: | |
CONNECTOR: ${{ matrix.connector }} | |
PRE_CMD: ${{ matrix.pre_cmd }} | |
run: |- | |
$PRE_CMD | |
sbt "${CONNECTOR}/test" | |
- name: Print logs on failure | |
if: failure() | |
run: find . -name "*.log" -exec ./scripts/cat-log.sh {} \; |