You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by sl...@apache.org on 2026/08/03 22:35:56 UTC

(maven-mvnd) branch feat/mvnd-1x-mimir created (now e6203c2f)

This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a change to branch feat/mvnd-1x-mimir
in repository https://gitbox.apache.org/repos/asf/maven-mvnd.git


      at e6203c2f Enable Mimir build cache in CI

This branch includes the following new commits:

     new e6203c2f Enable Mimir build cache in CI

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



(maven-mvnd) 01/01: Enable Mimir build cache in CI

Posted by sl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

slachiewicz pushed a commit to branch feat/mvnd-1x-mimir
in repository https://gitbox.apache.org/repos/asf/maven-mvnd.git

commit e6203c2f8f5ce97b21c3cfdda424c0d367c15ca5
Author: Sylwester Lachiewicz <sl...@apache.org>
AuthorDate: Tue Aug 4 00:35:50 2026 +0200

    Enable Mimir build cache in CI
    
    Ports the Mimir setup master already has to mvnd-1.x: an extensions file
    and daemon properties under .github, a Prepare Mimir step, and a
    GitHub-cached ~/.mimir/local in both the default and the native jobs.
    
    Two differences from master, both forced by Maven 3:
    
    - mvnd-1.x builds with the 3.9.14 wrapper, and Maven 3 only reads a
      project-wide core extensions file. The user-wide ~/.m2/extensions.xml
      that master uses is Maven 4-rc-5+ only, so the file is copied to
      .mvn/extensions.xml instead. That file is currently an empty
      <extensions/> element, so nothing is lost by overwriting it, and no
      plugin here checks for a clean working tree.
    
    - The extension ships as eu.maveniverse.maven.mimir:extension3, the
      single artifact covering both Maven 3 and Maven 4 since 0.8.0.
    
    Cache keys use the mimir2- prefix to match master. Caches from the
    default branch are visible to other branches, so sharing the prefix only
    works because both branches are on the same 0.12.0 cache format.
    
    Co-Authored-By: Claude Opus 5 (1M context) <no...@anthropic.com>
---
 .github/ci-extensions.xml           | 24 ++++++++++++++++++++++++
 .github/ci-mimir-daemon.properties  | 21 +++++++++++++++++++++
 .github/workflows/early-access.yaml | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 77 insertions(+)

diff --git a/.github/ci-extensions.xml b/.github/ci-extensions.xml
new file mode 100644
index 00000000..1a8b036e
--- /dev/null
+++ b/.github/ci-extensions.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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.
+-->
+<extensions>
+  <extension>
+    <groupId>eu.maveniverse.maven.mimir</groupId>
+    <artifactId>extension3</artifactId>
+    <version>0.12.0</version>
+  </extension>
+</extensions>
diff --git a/.github/ci-mimir-daemon.properties b/.github/ci-mimir-daemon.properties
new file mode 100644
index 00000000..2ff8ff1d
--- /dev/null
+++ b/.github/ci-mimir-daemon.properties
@@ -0,0 +1,21 @@
+#
+#  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.
+#
+
+# Mimir Daemon properties
+
+# Disable JGroups; we don't want/use LAN cache sharing
+mimir.jgroups.enabled=false
diff --git a/.github/workflows/early-access.yaml b/.github/workflows/early-access.yaml
index 40295bf7..d7c96410 100644
--- a/.github/workflows/early-access.yaml
+++ b/.github/workflows/early-access.yaml
@@ -46,6 +46,22 @@ jobs:
           java-version: ${{ env.JAVA_VERSION }}
           distribution: 'temurin'
 
+      - name: 'Prepare Mimir'
+        shell: bash
+        run: |
+          mkdir -p ~/.mimir
+          cp .github/ci-extensions.xml .mvn/extensions.xml
+          cp .github/ci-mimir-daemon.properties ~/.mimir/daemon.properties
+
+      - name: 'Handle Mimir caches'
+        uses: actions/cache@v6
+        with:
+          path: ~/.mimir/local
+          key: mimir2-${{ runner.os }}-default-${{ hashFiles('**/pom.xml') }}
+          restore-keys: |
+            mimir2-${{ runner.os }}-default-
+            mimir2-${{ runner.os }}-
+
       - name: 'Run default (non-native) build'
         run: ./mvnw verify -Dmrm=false -V -B -ntp -e -s .mvn/release-settings.xml
 
@@ -99,6 +115,22 @@ jobs:
           distribution: 'graalvm'
           github-token: ${{ secrets.GITHUB_TOKEN }}
 
+      - name: 'Prepare Mimir'
+        shell: bash
+        run: |
+          mkdir -p ~/.mimir
+          cp .github/ci-extensions.xml .mvn/extensions.xml
+          cp .github/ci-mimir-daemon.properties ~/.mimir/daemon.properties
+
+      - name: 'Handle Mimir caches'
+        uses: actions/cache@v6
+        with:
+          path: ~/.mimir/local
+          key: mimir2-${{ runner.os }}-native-${{ hashFiles('**/pom.xml') }}
+          restore-keys: |
+            mimir2-${{ runner.os }}-native-
+            mimir2-${{ runner.os }}-
+
       - name: 'Maven clean'
         run: ./mvnw clean -Dmrm=false -V -B -ntp -e