Accepting request 1155081 from home:weberho:branches:devel:kubic

- configuration changes:
  * Enhanced default configuration file, including configs for http3 support.
  * Docker configuration has been disabled per default, file provider has been enabled.
    The directory for the file provider has been set to /etc/traefik/conf.d
  * Prepared directories for logging in /var/log/traefik
  * Enhanced default configuration file, including configs for http3 support. Settings
    are disabled per default.
- packaging general:
  * Use standard source-download feature, modified _service file and removed _servicedata
  * packagers can invoke `prepare-sources.sh` to doenload sources and prepare go-packages
    as well as node_modules for the built process.
- frontend packaging:
  * The frontend will now be packaged on OBS to have reproduceable builds.
- Go packaging: 
  * Added upstream patch traefik-fix-int-overflow-with-go-generate-10452.patch to
    allow packaging on 32bit architectures gh#traefik/traefik#10451
  * Enabled CGO because there is no cross compilation needed in OSB (we build
    packages for every distribution/architecture seperately). PIE can not be used
    with CGO enabled for most architectures and is reported as failure sinc go 1.22.
    See https://github.com/golang/go/issues/64875
  * Don't use pie-buildmode for ppc64 and s390x architectures
- Update to version 2.11.0:
  * Enhancements:
    * [middleware] Deprecate IPWhiteList middleware in favor of IPAllowList
    * [redis] Add Redis Sentinel support
    * [server] Add KeepAliveMaxTime and KeepAliveMaxRequests features to entrypoints
    * [sticky-session] Hash WRR sticky cookies
  * Bug fixes:
    * [acme] Update go-acme/lego to v4.15.0
    * [authentication] Fix NTLM and Kerberos
    * [file] Fix file watcher
    * [file] Update github.com/fsnotify/fsnotify to v1.7.0
    * [http3] Update quic-go to v0.40.1
    * [middleware,tcp] Add missing TCP IPAllowList middleware constructor
    * [nomad] Update the Nomad API dependency to v1.7.2
    * [server] Fix ReadHeaderTimeout for PROXY protocol
    * [webui] Fixes the Header Button
    * [webui] Fix URL encode resource's id before calling API endpoints

OBS-URL: https://build.opensuse.org/request/show/1155081
OBS-URL: https://build.opensuse.org/package/show/devel:kubic/traefik?expand=0&rev=27
This commit is contained in:
2024-03-05 13:28:36 +00:00
committed by Git OBS Bridge
parent 66666feeaf
commit 61df38b048
15 changed files with 23806 additions and 50 deletions

View File

@@ -17,23 +17,38 @@
%define project github.com/traefik/traefik
%include %{_sourcedir}/node_modules.spec.inc
%ifarch ppc64 s390x
%define buildmode default
%else
%define buildmode pie
%endif
Name: traefik
Version: 2.10.7
Version: 2.11.0
Release: 0
Summary: The Cloud Native Application Proxy
License: MIT
Group: Productivity/Networking/Web/Proxy
URL: https://traefik.io/
Source0: %{name}-%{version}.tar.gz
Source0: https://github.com/traefik/traefik/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: vendor.tar.gz
Source2: traefik.service
Source3: traefik.toml
Source4: %{name}-%{version}.webui.tar.gz
Source4: package-lock.json
Source5: node_modules.spec.inc
# prepare-sources.sh is used to prepare sources for packaging
Source6: prepare-sources.sh
# PATCH-FIX-UPSTREAM allow packaging on 32bit architectures gh#traefik/traefik#10451
Patch1: traefik-fix-int-overflow-with-go-generate-10452.patch
BuildRequires: go-bindata
BuildRequires: golang-packaging
BuildRequires: local-npm-registry
BuildRequires: systemd-rpm-macros
BuildRequires: (golang(API) >= 1.21 with golang(API) < 1.22)
BuildRequires: yarn
BuildRequires: (golang(API) >= 1.22)
Recommends: podman
%{?systemd_requires}
%{go_provides}
@@ -47,24 +62,26 @@ Etcd, Rancher, Amazon ECS) and configures itself automatically and dynamically.
Pointing Traefik at your orchestrator should be the only configuration step you need.
%prep
%setup -q
%setup -b0 -a1 -q
%autopatch -p1
cd webui
local-npm-registry %{_sourcedir} install --include=dev --legacy-peer-deps
%build
%{goprep} %{project}
# tarball causes "inconsistent vendoring"
tar -xf %{SOURCE1}
# unpack webui
tar -xf %{SOURCE4} -C webui --strip-components=2
pushd webui
export PATH=$PATH:./node_modules/.bin
yarn build
popd
# see script/generate
go generate
build_date=$(date -u -d @${SOURCE_DATE_EPOCH:-$(date +%%s)} +"%%Y%%m%%d")
# see script/binary
CGO_ENABLED=0 GOGC=off go build \
-buildmode=pie \
CGO_ENABLED=1 GOGC=off go build \
-buildmode=%{buildmode} \
-mod=vendor \
-ldflags "-X github.com/traefik/traefik/v2/pkg/version.Version=%{version} \
-X github.com/traefik/traefik/v2/pkg/version.Codename='' \
@@ -83,6 +100,10 @@ ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
# configuration
install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/%{name}/%{name}.toml
mkdir -p %{buildroot}%{_sysconfdir}/%{name}/conf.d
# logging
mkdir -p %{buildroot}%{_localstatedir}/log/%{name}
%pre
%service_add_pre %{name}.service
@@ -106,6 +127,9 @@ install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/%{name}/%{name}.toml
%{_sbindir}/rc%{name}
%dir %{_sysconfdir}/%{name}
%dir %{_sysconfdir}/%{name}/conf.d
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.toml
%attr(750,root,root) %dir %{_localstatedir}/log/%{name}
%changelog