Bug 1759830

Summary: No caddy package in EPEL-8
Product: [Fedora] Fedora EPEL Reporter: chotaire+fedora
Component: caddyAssignee: Carl George 🤠 <carl>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: epel8CC: carl, fschwarz, go-sig, madko, zebob.m
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: caddy-2.6.4-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-08-25 00:52:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1774139    
Bug Blocks:    

Description chotaire+fedora 2019-10-09 08:43:20 UTC
Description of problem:

There is currently no caddy package for EPEL-8. A package exists for EPEL-7. Would it be possible for the package maintainer to branch this?


Version-Release number of selected component (if applicable):

Caddy v1.0.3

Comment 1 Carl George 2019-10-09 15:18:09 UTC
I would love to, but there are some blockers that need to be addressed first.

Caddy 1.0.3 requires at least golang 1.12, and RHEL 8 currently only has 1.11.  According to the beta release notes, RHEL 8.1 will includes 1.12.

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8-beta/html/8.1_release_notes/new-features#BZ-1731502

Additionally, none of the golang libraries that caddy needs are available in RHEL 8 or EPEL 8.  If it were just a few I would list them here, but it is literally all of them in the spec file.  I'm happy to revisit this once the EL8 golang situation is in a better place.

Comment 2 Edouard Bourguignon 2020-04-13 11:48:16 UTC
Hi,

we now have golang 1.12.12, any news concernant the missing golang libraries ?

Best regards,
Edouard

Comment 3 Carl George 🤠 2020-04-15 00:21:41 UTC
I've been working with the Caddy upstream on packaging their new major version.  They have made it clear that they don't intend to maintain v1 at all once v2 comes out.  Due to that, I'm not going to add v1 to EPEL8 to have it rot.  But v2 already requires at least golang 1.14.  That is in addition to whatever dependencies v2 settles on (that has been significantly in flux during their v2 betas).

I'm not happy with this situation either.  I suggest making your complaints know upstream, specifically that you can't compile Caddy from source on golang 1.12 or 1.13.

Comment 4 Carl George 🤠 2020-10-31 04:36:32 UTC
RHEL 8.3 will include golang 1.14, so once that's available in the EPEL8 buildroot I'll be able to proceed with this.

Comment 5 Felix Schwarz 2021-03-03 16:38:16 UTC
Sorry for the detours but any change EPEL 7 could get caddy 2.x as well? EPEL 7 ships golang 1.15.5 so it might be possible? (As you mentioned caddy 1.x is basically unmaintained.)

Oh, and RHEL 8.3 was released a few days ago so I guess soon it should be available for EPEL 8 :-)

Comment 6 Carl George 🤠 2021-03-16 17:13:31 UTC
Updating epel7's caddy package from 1.x to 2.x will require following EPEL's incompatible upgrade policy [0].  I can't justify that unless there are significant vulnerabilities discovered in 1.x.  Upstream provides a copr repo [1] that you can use if you would like to opt in to 2.x on el7.

I tried rebuilding the rawhide spec for epel8, but it failed.  I discovered that Fedora's golang macros are not available there yet, and are blocked by a request against redhat-rpm-config [2].  I'd like to see if that can be resolved to avoid heavy modification of the spec file to work without the golang macros.

[0] https://fedoraproject.org/wiki/EPEL_incompatible_upgrades_policy
[1] https://caddyserver.com/docs/install#fedora-redhat-centos
[2] bug 1774139

Comment 7 Robert-André Mauchin 🐧 2021-03-28 16:47:29 UTC
(In reply to Carl George 🤠 from comment #6)
> Updating epel7's caddy package from 1.x to 2.x will require following EPEL's
> incompatible upgrade policy [0].  I can't justify that unless there are
> significant vulnerabilities discovered in 1.x.  Upstream provides a copr
> repo [1] that you can use if you would like to opt in to 2.x on el7.
> 
Could you create a caddy2 package on EPEL7?

> I tried rebuilding the rawhide spec for epel8, but it failed.  I discovered
> that Fedora's golang macros are not available there yet, and are blocked by
> a request against redhat-rpm-config [2].  I'd like to see if that can be
> resolved to avoid heavy modification of the spec file to work without the
> golang macros.
> 
Sadjy this didn't go through, the solution is to bundle the deps with go mod vendor. Check for example: https://src.fedoraproject.org/rpms/rclone/blob/epel8/f/rclone.spec

Comment 8 Fedora Update System 2023-08-16 02:00:54 UTC
FEDORA-EPEL-2023-0b57e19163 has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2023-0b57e19163

Comment 9 Carl George 🤠 2023-08-16 03:55:06 UTC
An update on this, I've given up on caddy dependencies and vendor everything now, even in Fedora.  I've eliminated as many golang macros as possible to improve portability.  RHEL 8 currently has golang 1.19, which lines up best with caddy 2.6, which is what I've submitted for EPEL 8 (please test and provide karma).  EPEL 9 is still currently on caddy 2.4, and I'm putting together an incompatible update proposal to bring it up to 2.6 to match EPEL 8.

Comment 10 Fedora Update System 2023-08-17 01:22:56 UTC
FEDORA-EPEL-2023-0b57e19163 has been pushed to the Fedora EPEL 8 testing repository.

You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2023-0b57e19163

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2023-08-25 00:52:38 UTC
FEDORA-EPEL-2023-0b57e19163 has been pushed to the Fedora EPEL 8 stable repository.
If problem still persists, please make note of it in this bug report.