reneeb / OPM-Maker

Build and test packages for ticketsystems.
6 stars 7 forks source link
hacktoberfest otobo znuny

Build Status Kwalitee status GitHub issues CPAN Cover Status

NAME

OPM::Maker - Module/App to build and test OPM packages for Znuny, OTOBO, ((OTRS)) Community edition.

VERSION

version 1.17

DESCRIPTION

If you do customizing for ticketing systems like Znuny, OTOBO or ((OTRS)) Community Edition, you need to be able to check your package: Are all files of the package included in the file list in the sopm file? Is the sopm file valid? And you need to create the OPM file. There is xxxx.Console.pl (where xxxx is either otobo or otrs) included in stanrdard installations, but sometimes you might not have a ticket system installed on the machine where you want to build the package (e.g. when you build the package in a CI/CD job).

OPM::Maker provides opmbuild that is a small tool for several tasks. At the moment it supports:

Currently under development:

PARSING HUGE FILES

The commands index and dependencies parse ticketsystem addons. And those addons can become quite huge (the Znuny ITSM bundle is about 27M big). Usually the parser rejects such huge files, but that behaviour was changed as of version 1.10.

Parsing XML files can lead to security issues (loading external entities, application runs out of memory, ...), so those commands work as follows:

Development

The distribution is contained in a Git repository, so simply clone the repository

$ git clone https://github.com/reneeb/OPM-Maker.git

and change into the newly-created directory.

$ cd OPM-Maker

The project uses Dist::Zilla to build the distribution, hence this will need to be installed before continuing:

$ cpanm Dist::Zilla

To install the required prequisite packages, run the following set of commands:

$ dzil authordeps --missing | cpanm
$ dzil listdeps --author --missing | cpanm

The distribution can be tested like so:

$ dzil test

To run the full set of tests (including author and release-process tests), add the --author and --release options:

$ dzil test --author --release

AUTHOR

Renee Baecker reneeb@cpan.org

COPYRIGHT AND LICENSE

This software is Copyright (c) 2017 by Renee Baecker.

This is free software, licensed under:

The Artistic License 2.0 (GPL Compatible)