Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 19 additions & 54 deletions .github/workflows/auto-jdk-os-matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,66 +6,31 @@ on:
branches: [ 'main', '[0-9]+.[0-9]+.[Xx]', 'v[0-9]+.[0-9]+.[Xx]']
pull_request:
paths-ignore: [ '**/*.html', '**/*.md', '**/*.txt', '**/LICENSE', '**/NOTICE' ]
# The branches below must be a subset of the branches above
branches: [ 'main', '[0-9]+.[0-9]+.[Xx]', 'v[0-9]+.[0-9]+.[Xx]']
workflow_dispatch:
workflow_dispatch:

env:
MAVEN_OPTS: -Xmx4g -Xms1g
MAVEN_ARGS: "-B -Dmaven.javadoc.skip=true -Dgpg.skip=true"
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build:
name: Build, Test, Install
runs-on: ${{ matrix.os }}

run-matrix:
strategy:
fail-fast: false
matrix:
jdk: [ 25 ]
os: [ windows-latest, ubuntu-latest, macos-latest ]

steps:
- name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
uses: actions/checkout@v4
with:
persist-credentials: false

- name: Install Matrix JDK
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.jdk }}
distribution: 'temurin'
java-package: jdk
architecture: x64
cache: 'maven' # performance optimization
overwrite-settings: true # ensures the runner's .m2/settings.xml is current

- name: Verify Toolchain Configuration
shell: bash
run: |
if [ -f ~/.m2/toolchains.xml ]; then
cat ~/.m2/toolchains.xml
else
echo "toolchains.xml not found in ~/.m2/"
fi

- name: Echo Java & Maven Version
run: mvn -version #also prints java-version

- name: Print Current workflow
run: cat .github/workflows/auto-jdk-os-matrix.yml

- name: Test
run: mvn clean test

- name: Install
run: mvn clean install "-DskipTests=true" "-Dmaven.clean.failOnError=false" #windows os hack


# Architecture options: x86, x64, armv7, aarch64, ppc64le
# Lifecycle: validate, compile, test, package, verify, install, deploy
# -B batch mode, never stops for user input
# -V show Version without stopping
# -X debug mode
# -q quiet, only show errors
include:
- os: windows-latest
arch: x64
- os: ubuntu-latest
arch: x64
- os: macos-latest
arch: aarch64

# Reference the reusable workflow on the "workflows" branch
uses: apache/datasketches-memory/.github/workflows/reusable-jdk-os-matrix.yml@workflows
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we can simply inline the reuseable workflows at the main branch. Either under .github/workflows or under a new directory.

Copy link
Member Author

@leerho leerho Mar 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

According to GitHub Docs, the reusable workflows (RWFs) can have the location syntax:
{owner}/{repo}/.github/workflows/{filename}@{ref} #in a different repo
OR
./.github/workflows/{filename}@{ref} #in the same repo
where {ref} can be a branch, tag, or gitHash.

I would prefer having the RWFs in a separate branch ... or a common repo ... hmm...
I have it in a separate branch here, but these RWFs would be identical to what we would need for DS-Java.
Perhaps a better idea would be to put these in a "workflows" branch on DS-Java. It would be a natural common place for the various java repos. Since trying to share RWFs across different languages may be too cumbersome.

If I move this "workflows" branch to DS-java, would you approve?

with:
jdk_version: ${{ matrix.jdk }}
os_type: ${{ matrix.os }}
java_arch: ${{ matrix.arch }}
13 changes: 0 additions & 13 deletions DS-Java-Memory-24.code-workspace

This file was deleted.

4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@
-->

[![Build Status](https://travis-ci.org/apache/datasketches-memory.svg?branch=master)](https://travis-ci.org/apache/datasketches-memory)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.datasketches/datasketches-memory/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.apache.datasketches/datasketches-memory)
[![Coverage Status](https://coveralls.io/repos/github/apache/datasketches-memory/badge.svg?branch=master)](https://coveralls.io/github/apache/datasketches-memory?branch=master)
[![Maven Central](https://img.shields.io/maven-central/v/org.apache.datasketches/datasketches-memory)](https://central.sonatype.com/artifact/org.apache.datasketches/datasketches-memory)
[![Coverage Status](https://coveralls.io/repos/github/apache/datasketches-memory/badge.svg?branch=main)](https://coveralls.io/github/apache/datasketches-memory?branch=main)

=================

Expand Down
Loading