From cd383d9776492657305e6ed457a5702589b111abf1f6d588bcb946f9de28764c Mon Sep 17 00:00:00 2001 From: Alexandre Vicenzi Date: Thu, 21 Sep 2023 15:04:52 +0000 Subject: [PATCH 1/2] Accepting request 1112835 from home:avicenzi:branches:server:http Fix build OBS-URL: https://build.opensuse.org/request/show/1112835 OBS-URL: https://build.opensuse.org/package/show/server:http/caddy?expand=0&rev=34 --- caddy.changes | 5 +++++ caddy.spec | 2 ++ 2 files changed, 7 insertions(+) diff --git a/caddy.changes b/caddy.changes index 1a39c0a..ae07929 100644 --- a/caddy.changes +++ b/caddy.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Thu Sep 21 14:20:37 UTC 2023 - Alexandre Vicenzi + +- Require groupadd and useradd to fix failing build + ------------------------------------------------------------------- Thu Aug 17 22:55:36 UTC 2023 - jkowalczyk@suse.com diff --git a/caddy.spec b/caddy.spec index 063ada3..f8dd597 100644 --- a/caddy.spec +++ b/caddy.spec @@ -40,6 +40,8 @@ Source3: caddy.service Source4: index.html Source5: bash-completion Source6: zsh-completion +BuildRequires: /usr/sbin/groupadd +BuildRequires: /usr/sbin/useradd BuildRequires: golang-packaging BuildRequires: systemd-rpm-macros BuildRequires: golang(API) >= 1.20 From b5bdf64e5e8c240c23e75c2e4a22adb0326f79172e0192d8071cf046ca2b9028 Mon Sep 17 00:00:00 2001 From: Alexandre Vicenzi Date: Fri, 22 Sep 2023 14:48:31 +0000 Subject: [PATCH 2/2] Accepting request 1113034 from home:avicenzi:branches:server:http Switch to sysusers OBS-URL: https://build.opensuse.org/request/show/1113034 OBS-URL: https://build.opensuse.org/package/show/server:http/caddy?expand=0&rev=35 --- caddy.changes | 2 +- caddy.spec | 15 ++++++++------- caddy.sysusers | 2 ++ 3 files changed, 11 insertions(+), 8 deletions(-) create mode 100644 caddy.sysusers diff --git a/caddy.changes b/caddy.changes index ae07929..61b8378 100644 --- a/caddy.changes +++ b/caddy.changes @@ -1,7 +1,7 @@ ------------------------------------------------------------------- Thu Sep 21 14:20:37 UTC 2023 - Alexandre Vicenzi -- Require groupadd and useradd to fix failing build +- Switch to sysuser for user setup ------------------------------------------------------------------- Thu Aug 17 22:55:36 UTC 2023 - jkowalczyk@suse.com diff --git a/caddy.spec b/caddy.spec index f8dd597..6130b83 100644 --- a/caddy.spec +++ b/caddy.spec @@ -40,12 +40,13 @@ Source3: caddy.service Source4: index.html Source5: bash-completion Source6: zsh-completion -BuildRequires: /usr/sbin/groupadd -BuildRequires: /usr/sbin/useradd +Source7: caddy.sysusers BuildRequires: golang-packaging BuildRequires: systemd-rpm-macros +BuildRequires: sysuser-tools BuildRequires: golang(API) >= 1.20 %{?systemd_requires} +%{sysusers_requires} %{go_provides} # Make sure that the binary is not getting stripped. %{go_nostrip} @@ -70,6 +71,8 @@ CGO_ENABLED=0 go build -v -buildmode=pie -mod=vendor -ldflags "-s -w" -o caddy cmd/caddy/main.go +%sysusers_generate_pre %{SOURCE7} %{name} %{name}.conf + %install install -d %{buildroot}/%{_sbindir} install -D -p -m 0755 %{name} %{buildroot}%{_bindir}/%{name} @@ -80,6 +83,7 @@ install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/%{name}/Caddyfile # service install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}.service ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} +install -Dpm0644 %{SOURCE7} %{buildroot}%{_sysusersdir}/%{name}.conf # data directory install -d -m 0750 %{buildroot}%{_sharedstatedir}/%{name} @@ -91,9 +95,7 @@ install -D -p -m 0644 %{SOURCE4} %{buildroot}%{_datadir}/%{name}/index.html install -D -p -m 0644 %{SOURCE5} %{buildroot}%{_datadir}/bash-completion/completions/%{name} install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_datadir}/zsh/site-functions/_%{name} -%pre -getent group %{name} >/dev/null || %{_sbindir}/groupadd -r %{name} -getent passwd %{name} >/dev/null || %{_sbindir}/useradd -r -g %{name} -d %{_sharedstatedir}/%{name} -s /bin/false -c "Caddy web server" %{name} +%pre -f %{name}.pre %service_add_pre %{name}.service %post @@ -111,10 +113,9 @@ getent passwd %{name} >/dev/null || %{_sbindir}/useradd -r -g %{name} -d %{_shar %doc AUTHORS README.md %{_bindir}/%{name} %{_datadir}/%{name} - %{_unitdir}/%{name}.service %{_sbindir}/rc%{name} - +%{_sysusersdir}/%{name}.conf %dir %{_sysconfdir}/%{name} %config(noreplace) %{_sysconfdir}/%{name}/Caddyfile %attr(0750,%{name},%{name}) %dir %{_sharedstatedir}/%{name} diff --git a/caddy.sysusers b/caddy.sysusers new file mode 100644 index 0000000..9952eac --- /dev/null +++ b/caddy.sysusers @@ -0,0 +1,2 @@ +# Type Name ID GECOS [HOME] +u caddy - "Caddy web server" /var/lib/caddy