2025-05-21 19:22:29 +02:00
2025-05-10 16:01:09 +02:00
2025-05-10 16:01:09 +02:00
2025-05-12 09:56:51 +02:00
2025-05-21 19:22:29 +02:00
2025-05-21 19:22:29 +02:00
2025-05-09 16:39:31 +02:00

logo image

Pommer is an internal Python tool designed to streamline CI workflow generation for Java/Kotlin projects using Maven. It scans your project for pom.xml files, analyzes project metadata, and generates a Gitea CI workflow along with a local build script for convenience.

⚙️ This is the stable, Maven-only branch. For Gradle support, switch to the master branch.


⚠️ Internal Use Only

This tool is for internal use within the local Gitea Instance only. Do not distribute or share externally.


Features

  • 🔍 Automatic discovery of Maven projects (pom.xml)
  • 📦 Parses project metadata (artifact ID, group ID, version, Java/Kotlin usage, etc.)
  • 🏗️ Generates a Gitea CI workflow, compatible with multi-module Maven setups
  • 🧪 Creates a build.sh script for local Maven testing
  • 🎯 Configurable: Target a specific directory or file

Usage

No installation required. Just run with Python 3:

python3 pommer.py

Options

Option Description
-d, --dir Base directory to scan (default: .)
-p, --specific-pom Path to a specific pom.xml file

Examples

  • Scan a specific directory:

    python3 pommer.py --dir path/to/project
    
  • Use a specific POM file:

    python3 pommer.py --specific-pom path/to/pom.xml
    

Output

  • 📄 Gitea Workflow: .gitea/workflows/build.yaml Automates build and artifact upload for all detected Maven projects.

  • 🔧 Build Script: build.sh Local script to build all Maven projects easily.


CI/CD Compile Time Notice

⚠️ Slow compile or stuck builds?

  • Installing JDK and setting up the runner can take time.
  • If its stuck on "Downloading JDK 21", be patient and check network usage.
  • No activity? → Restart the runner.
  • Final build steps are slow but usually fine.
  • Local builds slow? → Expect slower CI/CD times.

Requirements

  • Python 3.7+
  • No third-party dependencies (standard library only)

Notes

  • This branch only supports Maven.
  • For Gradle support, use the gradle-support branch.
  • Java/Kotlin usage is detected automatically.
  • The workflow uses the highest JDK version found.

Support

Contact rattatwinko for help or feature requests.


License

Internal Use Only Not for Distribution

More details are in pommer.py

Description
Tool to make a Action file for Gitea to compile Kotlin MCP's!
Readme 333 KiB
Languages
Python 100%