Skip to content

Under compilation

Under compilation #465

Workflow file for this run

name: CI
env:
FORCE_COLOR: '1'
on:
push:
branches:
- main
tags:
- "v*"
pull_request:
branches:
- main
permissions:
id-token: write
pages: write
contents: read
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
build:
name: Build and Test
strategy:
matrix:
os: [ubuntu-latest]
scala: [3]
java: [temurin@25]
project: [js, jvm]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@main
with:
fetch-depth: 0
fetch-tags: true
- if: matrix.project == 'jvm'
name: formatCheck
run: ./mill mill.scalalib.scalafmt.ScalafmtModule/checkFormatAll __.sources
- uses: coursier/setup-action@main
with:
jvm: ${{ matrix.java }}
- uses: coursier/cache-action@main
- if: matrix.project == 'jvm'
name: playwright
run: cs launch com.microsoft.playwright:playwright:1.51.0 -M "com.microsoft.playwright.CLI" -- install --only-shell
- name: Compile
run: ./mill core.${{matrix.project}}.compile
- name: test
run: ./mill core.test.${{matrix.project}}
- name: Publish Test Report
uses: mikepenz/action-junit-report@v5
if: always()
with:
fail_on_failure: false
include_passed: false
detailed_summary: true
annotate_only: true
require_tests: false
report_paths: 'out/**/test-report.xml'
publish:
if: github.repository == 'Quafadas/dedav4s' && contains(github.ref, 'refs/tags/')
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
with:
fetch-depth: 0
fetch-tags: true
- uses: actions/setup-java@main
with:
distribution: 'temurin'
java-version: 25
- name: Publish to Maven Central
run: ./mill mill.javalib.SonatypeCentralPublishModule/
env:
MILL_PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }}
MILL_PGP_SECRET_BASE64: ${{ secrets.PGP_SECRET }}
MILL_SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
MILL_SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
# Check that we can _generate_ the docs, but don't run upload / pages actions to actually deploy them for pull requests.
site_pr_check:
if: github.event_name == 'pull_request'
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/setup-java@v4
with:
java-version: 17
distribution: 'temurin'
- uses: actions/checkout@main
with:
fetch-depth: 0
fetch-tags: true
- run: ./mill site.siteGen
site:
if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main'
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/setup-java@v4
with:
java-version: 17
distribution: 'temurin'
- uses: actions/checkout@main
with:
fetch-depth: 0
fetch-tags: true
- run: ./mill site.siteGen
- name: Setup Pages
uses: actions/configure-pages@main
- uses: actions/upload-artifact@main
with:
name: page
path: out/site/laika/generateSite.dest
if-no-files-found: error
deploy:
needs: site
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@main
with:
name: page
path: .
- uses: actions/configure-pages@main
- uses: actions/upload-pages-artifact@main
with:
path: .
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@main