Hi,

I am proposing for inclusion a macro set aimed at automating the packaging of 
forge-hosted projects.

— Packaging draft: 
https://fedoraproject.org/wiki/Forge-hosted_projects_packaging_automation
— FPC ticket: https://pagure.io/packaging-committee/issue/719 (without the 
“hasdraft” tag because I don't know how to add it in pagure)
— fedora-rpm-macros RFE with the macro file: 
https://bugzilla.redhat.com/show_bug.cgi?id=1523779

What it does: conversion of a forge url, version, tag, commit set to the values 
expected in rpm specfiles, in optional rpm variables. Computation of the 
corresponding %{dist}.

Objective: centralize forge structure know-how in a single technical place, 
deprecate all the complex manual forge URL handling spread over many Fedora 
spec files, simplify packaging and spend time on more interesting stuff.

What's currently implemented: definitions for github.com and 
code.googlesource.com
(I didn't want to propose stuff I didn't use myself. Adding more definitions is 
trivial. The macros are in Lua which is change-friendly, no arcane rpm syntax 
knowledge is needed).

Please consult packaging draft for full information.

This is a spin-off of the work I'm currently doing on Go packaging, as Go is 
heavily forge-oriented. I took the time to extract the generic non-Go-specific 
forge knowledge in a separate macro file. The macros have been heavily tested 
on real-life Go projects with quite a lot of variance, on EL7 and rawhide. 
That's why they come with built-in error handling.

Regards,

-- 
Nicolas Mailhot
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org

Reply via email to