Publish Nightly #611
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: Publish Nightly | |
on: | |
workflow_dispatch: | |
schedule: | |
- cron: "22 0 * * *" | |
jobs: | |
publish: | |
# runs on main repo only | |
if: github.repository == 'apache/pekko-projection' | |
name: Publish | |
runs-on: ubuntu-22.04 | |
env: | |
JAVA_OPTS: -Xms2G -Xmx2G -Xss2M -XX:ReservedCodeCacheSize=256M -Dfile.encoding=UTF-8 | |
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 | |
- name: Setup Java 8 | |
uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: 8 | |
- name: Install sbt | |
uses: sbt/setup-sbt@v1 | |
- name: Publish to Apache Maven repo | |
env: | |
NEXUS_USER: ${{ secrets.NEXUS_USER }} | |
NEXUS_PW: ${{ secrets.NEXUS_PW }} | |
run: sbt +publish | |
publish-docs: | |
name: Publish documentation to nightlies.apache.org | |
runs-on: ubuntu-latest | |
if: github.repository == 'apache/pekko-projection' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
fetch-tags: true | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: 8 | |
- name: Install sbt | |
uses: sbt/setup-sbt@v1 | |
- name: Cache Coursier cache | |
uses: coursier/cache-action@v6 | |
- name: Build Documentation | |
run: |- | |
sbt docs/paradox unidoc | |
env: | |
JAVA_OPTS: "-verbose:gc -Xmx4g" | |
# Create directory structure upfront since rsync does not create intermediate directories otherwise | |
- name: Create nightly directory structure | |
run: |- | |
mkdir -p target/nightly-docs/docs/pekko-projection/${{ github.ref_name }}-snapshot/ | |
mv docs/target/paradox/site/main/ target/nightly-docs/docs/pekko-projection/${{ github.ref_name }}-snapshot/docs | |
mv target/scala-2.13/unidoc target/nightly-docs/docs/pekko-projection/${{ github.ref_name }}-snapshot/api | |
- name: Upload nightly docs | |
uses: ./.github/actions/sync-nightlies | |
with: | |
upload: true | |
switches: --archive --compress --update --delete --progress --relative | |
local_path: target/nightly-docs/./docs/pekko-projection/${{ github.ref_name }}-snapshot # The intermediate dot is to show `--relative` which paths to operate on | |
remote_path: ${{ secrets.NIGHTLIES_RSYNC_PATH }}/pekko/ | |
remote_host: ${{ secrets.NIGHTLIES_RSYNC_HOST }} | |
remote_port: ${{ secrets.NIGHTLIES_RSYNC_PORT }} | |
remote_user: ${{ secrets.NIGHTLIES_RSYNC_USER }} | |
remote_key: ${{ secrets.NIGHTLIES_RSYNC_KEY }} |