Files
deb-changelog-action/README.md
Max P. ba7b9f2928
All checks were successful
Auto Changelog & Release / release (push) Successful in 8s
feat: modularize scripts and improve project architecture
- Added `lib/utils.sh` and `lib/logging.sh` for reusable utility and logging functions.
- Updated `run.sh` and `scripts/generate-changelog.sh` to use the new utility and logging functions (`validate_arg`, `log_info`, `log_error`).
- Add `config.env` for better clarity and updated all references in the project.
- Enhanced documentation in `README.md` to reflect the new configuration file and usage instructions.
- Improved error handling and logging consistency across scripts.
2025-07-02 12:59:16 +02:00

1.5 KiB

Auto Debian Package Changelog Generation

This project provides a streamlined solution for generating Debian-compatible changelogs using git-cliff.

Features

  • Modularized scripts for better maintainability.
  • Centralized configuration via .env file.
  • Enhanced logging with multiple log levels.
  • Support for custom git-cliff configurations.

Usage

Prerequisites

Ensure the following tools are installed:

  • git
  • git-cliff
  • sed

Running the Script Locally

To generate a changelog locally, use the run.sh script:

curl -sL https://https://git.0xmax42.io/actions/deb-changelog-action/raw/branch/main/run.sh | bash -s -- \
         --version v0 \
         --tag v2.9.1 \
         --package_name mypkg \
         --author_name "Max Mustermann" \
         --author_email max@example.com \
         [--output_file debian/changelog] \
         [--cliff_config path/to/cliff.toml]

Configuration

The config.env file contains default configurations:

  • REPO_URL: Repository URL for cloning.
  • OUTPUT_FILE: Default output file for the changelog.
  • CLIFF_CONFIG: Default configuration file for git-cliff.

Logging

Logs are categorized into three levels:

  • INFO: General information.
  • WARN: Warnings about potential issues.
  • ERROR: Critical errors that require attention.

Testing

Unit tests for the scripts can be added using bats.

Contributing

Feel free to submit issues or pull requests to improve the project.

License

This project is licensed under the MIT License.