import cockpit-238.1-1.el8

This commit is contained in:
CentOS Sources 2021-03-30 09:26:44 -04:00 committed by Stepan Oksanichenko
parent 3b14f51d59
commit ca9b844954
3 changed files with 131 additions and 119 deletions

View File

@ -1 +1 @@
dfb45151b16145a9b9fae12fb30dc2cd4370852e SOURCES/cockpit-222.1.tar.xz
e96e3ae84e9873afa290d6e4dd861021d93bc341 SOURCES/cockpit-238.1.tar.xz

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/cockpit-222.1.tar.xz
SOURCES/cockpit-238.1.tar.xz

View File

@ -1,7 +1,23 @@
# This spec file has been automatically updated
Version: 222.1
Version: 238.1
Release: 1%{?dist}
#
# Copyright (C) 2014-2020 Red Hat, Inc.
#
# Cockpit is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
#
# Cockpit is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with Cockpit; If not, see <http://www.gnu.org/licenses/>.
#
# This file is maintained at the following location:
# https://github.com/cockpit-project/cockpit/blob/master/tools/cockpit.spec
#
@ -24,26 +40,8 @@ Release: 1%{?dist}
%define rhel %{centos}
%endif
%if "%{!?__python3:1}"
%define __python3 /usr/bin/python3
%endif
# for testing this already gets set in fedora.install, as we want the target
# VERSION_ID, not the mock chroot's one
%if "%{!?os_version_id:1}"
%define os_version_id %(. /etc/os-release; echo $VERSION_ID)
%endif
%define _hardened_build 1
# define to build the dashboard
%define build_dashboard 1
# build basic packages like cockpit-bridge
%define build_basic 1
# build optional extensions like cockpit-docker
%define build_optional 0
%define __lib lib
%if 0%{?rhel}
@ -63,11 +61,30 @@ License: LGPLv2+
URL: https://cockpit-project.org/
%if %{defined wip}
Source0: cockpit-%{version}.tar.gz
Source0: cockpit-%{version}.tar.xz
%else
Source0: https://github.com/cockpit-project/cockpit/releases/download/%{version}/cockpit-%{version}.tar.xz
%endif
# in RHEL 8 the source package is duplicated: cockpit (building basic packages like cockpit-{bridge,system})
# and cockpit-appstream (building optional packages like cockpit-{machines,pcp})
# This split does not apply to EPEL/COPR.
# In Fedora ELN/RHEL 9+ there is just one source package, which ships rpms in both BaseOS and AppStream
%if 0%{?rhel} == 8 && 0%{?epel} == 0
%if "%{name}" == "cockpit"
%define build_basic 1
%define build_optional 0
%else
%define build_basic 0
%define build_optional 1
%endif
%else
%define build_basic 1
%define build_optional 1
%endif
BuildRequires: gcc
BuildRequires: pkgconfig(gio-unix-2.0)
BuildRequires: pkgconfig(json-glib-1.0)
@ -75,9 +92,10 @@ BuildRequires: pkgconfig(polkit-agent-1) >= 0.105
BuildRequires: pam-devel
BuildRequires: autoconf automake
BuildRequires: make
BuildRequires: /usr/bin/python3
BuildRequires: gettext >= 0.19.7
%if %{defined build_dashboard}
%if 0%{?build_basic}
BuildRequires: libssh-devel >= 0.8.5
%endif
BuildRequires: openssl-devel
@ -88,7 +106,7 @@ BuildRequires: libxslt-devel
BuildRequires: glib-networking
BuildRequires: sed
BuildRequires: glib2-devel >= 2.37.4
BuildRequires: glib2-devel >= 2.50.0
# this is for runtimedir in the tls proxy ace21c8879
BuildRequires: systemd-devel >= 235
%if 0%{?suse_version}
@ -123,13 +141,6 @@ Recommends: (cockpit-storaged if udisks2)
Recommends: cockpit-packagekit
Suggests: cockpit-pcp
%ifarch x86_64 %{arm} aarch64 ppc64le i686 s390x
%if 0%{?fedora} == 31 && 0%{?build_optional}
%define build_docker 1
Recommends: (cockpit-docker if /usr/bin/docker)
%endif
%endif
%if 0%{?rhel} == 0
Recommends: (cockpit-networkmanager if NetworkManager)
Suggests: cockpit-selinux
@ -154,6 +165,9 @@ exec 2>&1
--docdir=%_defaultdocdir/%{name} \
%endif
--with-pamdir='%{pamdir}' \
%if 0%{?build_basic} == 0
--disable-ssh \
%endif
%{?vdo_on_demand:--with-vdo-package='"vdo"'}
make -j4 %{?extra_flags} all
@ -174,33 +188,28 @@ exec 2>&1
%{?testsuite_skip} make -j4 check %{?testsuite_fail}
%install
make install DESTDIR=%{buildroot}
%make_install
make install-tests DESTDIR=%{buildroot}
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pam.d
install -p -m 644 tools/cockpit.pam $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/cockpit
rm -f %{buildroot}/%{_libdir}/cockpit/*.so
# shipped in firewalld since 0.6, everywhere in Fedora/RHEL 8
rm -f %{buildroot}/%{_prefix}/%{__lib}/firewalld/services/cockpit.xml
install -D -p -m 644 AUTHORS COPYING README.md %{buildroot}%{_docdir}/cockpit/
# only ship deprecated PatternFly API for stable releases
%if 0%{?fedora} <= 33 || 0%{?rhel} <= 8
ln -s cockpit.css.gz %{buildroot}/%{_datadir}/cockpit/base1/patternfly.css.gz
%endif
# Build the package lists for resource packages
echo '%dir %{_datadir}/cockpit/base1' > base.list
echo '%dir %{_datadir}/cockpit/base1/fonts' >> base.list
find %{buildroot}%{_datadir}/cockpit/base1 -type f >> base.list
find %{buildroot}%{_datadir}/cockpit/base1 -type f -o -type l >> base.list
echo '%{_sysconfdir}/cockpit/machines.d' >> base.list
echo %{buildroot}%{_datadir}/polkit-1/actions/org.cockpit-project.cockpit-bridge.policy >> base.list
echo '%dir %{_datadir}/cockpit/ssh' >> base.list
find %{buildroot}%{_datadir}/cockpit/ssh -type f >> base.list
echo '%{_libexecdir}/cockpit-ssh' >> base.list
%if %{defined build_dashboard}
echo '%dir %{_datadir}/cockpit/dashboard' >> dashboard.list
find %{buildroot}%{_datadir}/cockpit/dashboard -type f >> dashboard.list
%else
rm -rf %{buildroot}/%{_datadir}/cockpit/dashboard
touch dashboard.list
%endif
echo '%dir %{_datadir}/cockpit/pcp' >> pcp.list
find %{buildroot}%{_datadir}/cockpit/pcp -type f >> pcp.list
@ -216,6 +225,9 @@ find %{buildroot}%{_datadir}/cockpit/systemd -type f >> system.list
echo '%dir %{_datadir}/cockpit/users' >> system.list
find %{buildroot}%{_datadir}/cockpit/users -type f >> system.list
echo '%dir %{_datadir}/cockpit/metrics' >> system.list
find %{buildroot}%{_datadir}/cockpit/metrics -type f >> system.list
echo '%dir %{_datadir}/cockpit/kdump' >> kdump.list
find %{buildroot}%{_datadir}/cockpit/kdump -type f >> kdump.list
@ -243,25 +255,19 @@ find %{buildroot}%{_datadir}/cockpit/selinux -type f >> selinux.list
echo '%dir %{_datadir}/cockpit/playground' > tests.list
find %{buildroot}%{_datadir}/cockpit/playground -type f >> tests.list
%if 0%{?build_docker}
echo '%dir %{_datadir}/cockpit/docker' > docker.list
find %{buildroot}%{_datadir}/cockpit/docker -type f >> docker.list
%else
rm -rf %{buildroot}/%{_datadir}/cockpit/docker
rm -f %{buildroot}/%{_prefix}/share/metainfo/org.cockpit-project.cockpit-docker.metainfo.xml
touch docker.list
%endif
echo '%dir %{_datadir}/cockpit/static' > static.list
find %{buildroot}%{_datadir}/cockpit/static -type f >> static.list
# when not building basic packages, remove their files
%if 0%{?build_basic} == 0
for pkg in base1 branding motd kdump networkmanager selinux shell sosreport ssh static systemd tuned users; do
for pkg in base1 branding motd kdump networkmanager selinux shell sosreport ssh static systemd tuned users metrics; do
rm -r %{buildroot}/%{_datadir}/cockpit/$pkg
rm -f %{buildroot}/%{_datadir}/metainfo/org.cockpit-project.cockpit-${pkg}.metainfo.xml
done
for data in doc locale man pixmaps polkit-1; do
rm -r %{buildroot}/%{_datadir}/$data
done
for lib in systemd tmpfiles.d firewalld; do
for lib in systemd tmpfiles.d; do
rm -r %{buildroot}/%{_prefix}/%{__lib}/$lib
done
for libexec in cockpit-askpass cockpit-session cockpit-ws cockpit-tls cockpit-wsinstance-factory cockpit-desktop; do
@ -275,7 +281,7 @@ rm -f %{buildroot}%{_datadir}/metainfo/cockpit.appdata.xml
# when not building optional packages, remove their files
%if 0%{?build_optional} == 0
for pkg in apps dashboard docker machines packagekit pcp playground storaged; do
for pkg in apps machines packagekit pcp playground storaged; do
rm -rf %{buildroot}/%{_datadir}/cockpit/$pkg
done
# files from -tests
@ -286,17 +292,15 @@ rm -r %{buildroot}/%{_libexecdir}/cockpit-pcp %{buildroot}/%{_localstatedir}/lib
rm -f %{buildroot}/%{_prefix}/share/metainfo/org.cockpit-project.cockpit-machines.metainfo.xml
# files from -storaged
rm -f %{buildroot}/%{_prefix}/share/metainfo/org.cockpit-project.cockpit-storaged.metainfo.xml
# files from -docker
rm -f %{buildroot}/%{_prefix}/share/metainfo/org.cockpit-project.cockpit-docker.metainfo.xml
%endif
sed -i "s|%{buildroot}||" *.list
%if 0%{?suse_version}
# remove brandings that don't match the distro as they may contain
# stale symlinks
# remove brandings with stale symlinks. Means they don't match
# the distro.
pushd %{buildroot}/%{_datadir}/cockpit/branding
ls -1 | (. /etc/os-release; grep -v "default\|$ID") | xargs rm -vr
find -L * -type l -printf "%H\n" | sort -u | xargs rm -rv
popd
# need this in SUSE as post build checks dislike stale symlinks
install -m 644 -D /dev/null %{buildroot}/run/cockpit/motd
@ -306,18 +310,6 @@ install -m 644 -D /dev/null %{buildroot}/run/cockpit/motd
%define find_debug_info %{_rpmconfigdir}/find-debuginfo.sh %{?_missing_build_ids_terminate_build:--strict-build-id} %{?_include_minidebuginfo:-m} %{?_find_debuginfo_dwz_opts} %{?_find_debuginfo_opts} %{?_debugsource_packages:-S debugsourcefiles.list} "%{_builddir}/%{?buildsubdir}"
# Redefine how debug info is built to slip in our extra debug files
%define __debug_install_post \
%{find_debug_info} \
cat debug.partial >> %{_builddir}/%{?buildsubdir}/debugfiles.list \
%{nil}
# Build the package lists for debug package, and move debug files to installed locations
find %{buildroot}/usr/src/debug%{_datadir}/cockpit -type f -o -type l > debug.partial
sed -i "s|%{buildroot}/usr/src/debug||" debug.partial
sed -n 's/\.map\(\.gz\)\?$/\0/p' *.list >> debug.partial
sed -i '/\.map\(\.gz\)\?$/d' *.list
tar -C %{buildroot}/usr/src/debug -cf - . | tar -C %{buildroot} -xf -
%endif
# /suse_version
rm -rf %{buildroot}/usr/src/debug
@ -361,10 +353,15 @@ troubleshooting, interactive command-line sessions, and more.
Summary: Cockpit bridge server-side component
Requires: glib-networking
Provides: cockpit-ssh = %{version}-%{release}
# cockpit-ssh moved from dashboard to bridge in 171
Conflicts: cockpit-dashboard < 170.x
# PR #10430 dropped workaround for ws' inability to understand x-host-key challenge
Conflicts: cockpit-ws < 181.x
# 233 dropped jquery.js, pages started to bundle it (commit 049e8b8dce)
Conflicts: cockpit-dashboard < 233
Conflicts: cockpit-networkmanager < 233
Conflicts: cockpit-storaged < 233
Conflicts: cockpit-system < 233
Conflicts: cockpit-tests < 233
Conflicts: cockpit-docker < 233
%description bridge
The Cockpit bridge component installed server side and runs commands on the
@ -404,13 +401,14 @@ Provides: cockpit-shell = %{version}-%{release}
Provides: cockpit-systemd = %{version}-%{release}
Provides: cockpit-tuned = %{version}-%{release}
Provides: cockpit-users = %{version}-%{release}
Obsoletes: cockpit-dashboard
%if 0%{?rhel}
Provides: cockpit-networkmanager = %{version}-%{release}
Obsoletes: cockpit-networkmanager
Requires: NetworkManager >= 1.6
Provides: cockpit-kdump = %{version}-%{release}
Requires: kexec-tools
Recommends: polkit
Recommends: (sudo or polkit)
Recommends: PackageKit
Recommends: NetworkManager-team
Recommends: setroubleshoot-server >= 3.3.3
@ -425,10 +423,9 @@ Recommends: (reportd >= 0.7.1 if abrt)
%endif
# NPM modules which are also available as packages
Provides: bundled(js-jquery) = 3.5.1
Provides: bundled(js-moment) = 2.25.3
Provides: bundled(nodejs-flot) = 0.8.3
Provides: bundled(js-moment) = 2.29.1
Provides: bundled(xstatic-bootstrap-datepicker-common) = 1.9.0
Provides: bundled(xstatic-patternfly-common) = 3.59.4
Provides: bundled(xstatic-patternfly-common) = 3.59.5
%description system
This package contains the Cockpit shell and system configuration interfaces.
@ -440,15 +437,11 @@ This package contains the Cockpit shell and system configuration interfaces.
Summary: Cockpit Web Service
Requires: glib-networking
Requires: openssl
Requires: glib2 >= 2.37.4
Requires: glib2 >= 2.50.0
Conflicts: firewalld < 0.6.0-1
Recommends: sscg >= 2.3
Recommends: system-logos
Requires: systemd >= 235
Suggests: sssd-dbus
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description ws
The Cockpit Web Service listens on the network, and authenticates users.
@ -456,7 +449,7 @@ The Cockpit Web Service listens on the network, and authenticates users.
If sssd-dbus is installed, you can enable client certificate/smart card
authentication via sssd/FreeIPA.
%files ws -f cockpit.lang
%files ws -f cockpit.lang -f static.list
%doc %{_mandir}/man1/cockpit-desktop.1.gz
%doc %{_mandir}/man5/cockpit.conf.5.gz
%doc %{_mandir}/man8/cockpit-ws.8.gz
@ -495,8 +488,6 @@ authentication via sssd/FreeIPA.
%{_libexecdir}/cockpit-tls
%{_libexecdir}/cockpit-desktop
%attr(4750, root, cockpit-wsinstance) %{_libexecdir}/cockpit-session
%attr(775, -, wheel) %{_localstatedir}/lib/cockpit
%{_datadir}/cockpit/static
%{_datadir}/cockpit/branding
%pre ws
@ -506,6 +497,7 @@ getent group cockpit-wsinstance >/dev/null || groupadd -r cockpit-wsinstance
getent passwd cockpit-wsinstance >/dev/null || useradd -r -g cockpit-wsinstance -d /nonexisting -s /sbin/nologin -c "User for cockpit-ws instances" cockpit-wsinstance
%post ws
%tmpfiles_create cockpit-tempfiles.conf
%systemd_post cockpit.socket
# firewalld only partially picks up changes to its services files without this
test -f %{_bindir}/firewall-cmd && firewall-cmd --reload --quiet || true
@ -674,46 +666,14 @@ Cockpit support for reading PCP metrics and loading PCP archives.
%{_localstatedir}/lib/pcp/config/pmlogconf/tools/cockpit
%post -n cockpit-pcp
# HACK - https://bugzilla.redhat.com/show_bug.cgi?id=1185764
# We can't use "systemctl reload-or-try-restart" since systemctl might
# be out of sync with reality.
/usr/share/pcp/lib/pmlogger condrestart
%if %{defined build_dashboard}
%package -n cockpit-dashboard
Summary: Cockpit remote server dashboard
BuildArch: noarch
Requires: cockpit-ssh >= 135
Conflicts: cockpit-ws < 135
%description -n cockpit-dashboard
Cockpit page for showing performance graphs for up to 20 remote servers.
%files -n cockpit-dashboard -f dashboard.list
%endif
%if 0%{?build_docker}
%package -n cockpit-docker
Summary: Cockpit user interface for Docker containers
Requires: cockpit-bridge >= 122
Requires: cockpit-shell >= 122
Requires: (docker or moby-engine or docker-ce)
Requires: %{__python3}
%description -n cockpit-docker
The Cockpit components for interacting with Docker and user interface.
This package is not yet complete.
%files -n cockpit-docker -f docker.list
%{_datadir}/metainfo/org.cockpit-project.cockpit-docker.metainfo.xml
%endif
systemctl reload-or-try-restart pmlogger
%package -n cockpit-packagekit
Summary: Cockpit user interface for packages
BuildArch: noarch
Requires: cockpit-bridge >= 186
Requires: PackageKit
Recommends: python3-tracer
%description -n cockpit-packagekit
The Cockpit components for installing OS updates and Cockpit add-ons,
@ -726,6 +686,58 @@ via PackageKit.
# The changelog is automatically generated and merged
%changelog
* Mon Feb 22 2021 Martin Pitt <mpitt@redhat.com> - 238.1-1
- Several UI alignment fixes
- Re-drop unit tests from built packages
- Metrics: Don't show swap column when no swap is present
- Metrics: Don't show duplicate events
* Wed Feb 17 2021 Martin Pitt <mpitt@redhat.com> - 238-1
- Web server: Preserve permissions of administrator-provided certificates
- System: Performance page shows busiest CPU cores
* Fri Feb 05 2021 Martin Pitt <mpitt@redhat.com> - 237-1
- SSH connections to remote machines are only opened when necessary
* Fri Jan 22 2021 Matej Marusak <mmarusak@redhat.com> - 236-1
- fslist channels: Include properties of changed files
- Internal stabilization work
* Fri Jan 08 2021 Martin Pitt <mpitt@redhat.com> - 235-1
- Login: Improved handling of SSH host keys
- Overview: Editable motd
- Adjust tests for sos 4.x to fix gating tests (rhbz#1895912)
* Mon Dec 14 2020 Katerina Koukiou <kkoukiou@redhat.com> - 234-1
- Improved login page
- Improved bridge code after feedback from recent coverity scanning
* Fri Nov 27 2020 Katerina Koukiou <kkoukiou@redht.com> - 233.1-1
- Non-admin users no longer see Cockpit in motd (rhbz#1872562)
- Improved host editing
- Replace system's graph page with a completely new USE method page
- Logging of remote IP addresses
- shell: Any page can be the shell
- Accounts: Allow setting weak passwords (rhbz#1652390)
- Terminal: Fix issue with prompt not returning when clicking reset button in disoconnected session (rhbz#1897430)
* Wed Aug 19 2020 Matej Marusak <mmarusak@redhat.com> - 224.2-1
- lib: Include current directory in FileAutoComplete option listing (rhbz#1866995)
- lib: Make sure that the expandable part of table rows has unique key (rhbz#1865821)
* Wed Aug 05 2020 Matej Marusak <mmarusak@redhat.com> - 224.1-1
- ws: Add key usage and constraints to self-signed server certificate (rhbz#1859812)
* Thu Jul 23 2020 Martin Pitt <mpitt@redhat.com> - 224-1
- More translation updates (rhbz#1820538)
- Some bug fixes on Services page
* Thu Jul 09 2020 Martin Pitt <mpitt@redhat.com> - 223-1
- Webserver: Standard-conformant lifetime of web server Certificate
- Support certificate authentication against Active Directory
- Fix cockpit-desktop privileges (rhbz#1841104)
- Translation updates (rhbz#1820538)
* Fri Jun 26 2020 Martin Pitt <mpitt@redhat.com> - 222.1-1
- Some integration test fixes for dist-git gating