Skip to content

Commit

Permalink
add 1.1 builds (#1630)
Browse files Browse the repository at this point in the history
  • Loading branch information
pjfanning authored Dec 28, 2024
1 parent 8473abe commit bfa37ff
Show file tree
Hide file tree
Showing 3 changed files with 236 additions and 0 deletions.
162 changes: 162 additions & 0 deletions .github/workflows/nightly-1.1-builds.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# Licensed to the Apache Software Foundation (ASF) under one or more
# license agreements; and to You under the Apache License, version 2.0:
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# This file is part of the Apache Pekko project, which was derived from Akka.
#

name: Nightly Builds (1.1)

on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:

permissions: {}

jobs:
pekko-cluster-metrics-sigar:
name: Pekko Cluster Metrics Test with Sigar
runs-on: ubuntu-22.04
if: github.repository == 'apache/pekko'
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
ref: 1.1.x

- name: Setup Java 11
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11

- name: Install sbt
uses: sbt/setup-sbt@v1

- name: Cache Coursier cache
uses: coursier/cache-action@v6

- name: Enable jvm-opts
run: cp .jvmopts-ci .jvmopts

- name: sbt cluster-metrics/test
env:
DEVELOCITY_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }}
run: |-
sbt \
-Djava.security.egd=file:/dev/./urandom \
-Dpekko.test.sigar=true \
-Dpekko.cluster.assert=on \
-Dpekko.test.timefactor=2 \
-Dpekko.actor.testkit.typed.timefactor=2 \
-Dpekko.test.tags.exclude=gh-exclude,timing \
-Dpekko.log.timestamps=true \
-Dmultinode.XX:MetaspaceSize=128M \
-Dmultinode.Xms256M \
-Dmultinode.Xmx256M \
-Dmultinode.Xlog:gc \
-Dmultinode.XX:+AlwaysActAsServerClassMachine \
clean cluster-metrics/test
pekko-classic-remoting-tests:
name: Pekko Classic Remoting Tests
runs-on: ubuntu-22.04
if: github.repository == 'apache/pekko'
strategy:
fail-fast: false
matrix:
command:
- cluster/test distributed-data/test cluster-tools/test cluster-metrics/test
- cluster-sharding/test
- cluster-typed/test cluster-sharding-typed/test
steps:
- name: Checkout
uses: actions/checkout@v4
with:
# we don't know what commit the last tag was it's safer to get entire repo so previousStableVersion resolves
fetch-depth: 0
fetch-tags: true
ref: 1.0.x

- name: Setup Java 11
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11

- name: Install sbt
uses: sbt/setup-sbt@v1

- name: Cache Coursier cache
uses: coursier/cache-action@v6

- name: Enable jvm-opts
run: cp .jvmopts-ci .jvmopts

- name: sbt ${{ matrix.command }}
env:
DEVELOCITY_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }}
# note that this is not running any multi-jvm tests because multi-in-test=false
run: |-
sbt \
-Djava.security.egd=file:/dev/./urandom \
-Dpekko.remote.artery.enabled=off \
-Dpekko.test.timefactor=2 \
-Dpekko.actor.testkit.typed.timefactor=2 \
-Dpekko.test.tags.exclude=gh-exclude,timing \
-Dpekko.test.multi-in-test=false \
-Dpekko.cluster.assert=on \
clean ${{ matrix.command }}
jdk-nightly-build:
name: JDK ${{ matrix.javaVersion }} / Scala ${{ matrix.scalaVersion }}
runs-on: ubuntu-22.04
if: github.repository == 'apache/pekko'
strategy:
fail-fast: false
matrix:
# No need to specify the full Scala version. Only the Scala
# binary version is required and Pekko build will set the right
# full version from it.
scalaVersion: ["2.12.x", "2.13.x", "3.3.x"]
javaVersion: [8, 11, 17, 21]
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
ref: 1.0.x

- name: Setup Java ${{ matrix.javaVersion }}
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ matrix.javaVersion }}

- name: Install sbt
uses: sbt/setup-sbt@v1

- name: Cache Coursier cache
uses: coursier/cache-action@v6

- name: Enable jvm-opts
run: cp .jvmopts-ci .jvmopts

- name: Compile and Test
env:
DEVELOCITY_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }}
# note that this is not running any multi-jvm tests because multi-in-test=false
run: |-
sbt \
-Dpekko.cluster.assert=on \
-Dpekko.log.timestamps=true \
-Dpekko.test.timefactor=2 \
-Dpekko.actor.testkit.typed.timefactor=2 \
-Dpekko.test.tags.exclude=gh-exclude,timing \
-Dpekko.test.multi-in-test=false \
clean "++ ${{ matrix.scalaVersion }} test" checkTestsHaveRun
1 change: 1 addition & 0 deletions .github/workflows/publish-1.1-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ jobs:
with:
fetch-depth: 0
fetch-tags: true
ref: 1.1.x

- name: Setup Java 11
uses: actions/setup-java@v4
Expand Down
73 changes: 73 additions & 0 deletions .github/workflows/publish-1.1-nightly.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

# Based on Apache Arrow's java-nightly workflow
# https://github.com/apache/arrow/blob/master/.github/workflows/java_nightly.yml
name: Publish nightly 1.1 snapshots

on:
workflow_dispatch:
schedule:
- cron: "0 0 * * *"

permissions:
contents: read

jobs:
publish-nightly:
name: Publish 1.1 nightly
runs-on: ubuntu-22.04
if: github.repository == 'apache/pekko'
env:
DEVELOCITY_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true
ref: 1.1.x

- name: Setup Java 11
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 11

- name: Install sbt
uses: sbt/setup-sbt@v1

- name: Cache Coursier cache
uses: coursier/cache-action@v6

- name: Install Graphviz
run: |-
sudo apt-get install graphviz
- name: Report MIMA incompatibility issues
run: |-
sbt +mimaReportBinaryIssues
- name: Publish to Apache Maven repo
env:
NEXUS_USER: ${{ secrets.NEXUS_USER }}
NEXUS_PW: ${{ secrets.NEXUS_PW }}
run: sbt +publish

- name: Build Documentation
run: |-
sbt -Dpekko.genjavadoc.enabled=true -Dpekko.genlicensereport.enabled=true docs/paradox unidoc

0 comments on commit bfa37ff

Please sign in to comment.