Accepting request 689181 from Virtualization:containers

Should be staged with 689178.

- Update to version 3.0.3. The changelog is fairly significant from 2.x, but
  the main difference is tha the PAM module has been moved to the LXC project,
  and is no longer hosted in lxcfs.
- Rework packaging to be a more modern openSUSE-style.

OBS-URL: https://build.opensuse.org/request/show/689181
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lxcfs?expand=0&rev=6
This commit is contained in:
Dominique Leuenberger 2019-03-28 21:48:53 +00:00 committed by Git OBS Bridge
commit b5605076ca
6 changed files with 75 additions and 76 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2e3eff42803276a06b777205206f2c1592ce95da15f3486c7317230d59c19b45
size 416820

View File

@ -1,16 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQIcBAABCgAGBQJZ6OkPAAoJEMY4l01keS1n0GwP/jFmuYn5jLN+NdLV2mW2F7MD
7C4pyQ5C8S+ogV6kbAtwMqjhBLDbwpfqB+V5kU1Pgyln1V0Q5T9uOI8CCyqsDdPO
0ysoiM3hHAvIPN7xi702ZLN7eOxIUscji5Paj+eAQEcyqb59wzsrsp2VlcUN2wsh
bzsFoEau7PuBJwQBXOyr/befxHNHBi6yjwbnEDY2HMu2z9joMOjUrTh6PsOR6hSA
oZ2lmIFdoR5nMkRwv1oAkesndt03/fk7GSq9G0MObYaYA2+EkYLw7NGRRZhY02dt
4GTqhiBOzcO74YxsH9AyXNFvd7BjE/V/wfasbpwLUyP3wgiJ6r6G07+X4m/hE2Os
IFYiBJ8FuwAuj1YwqhC4YitLPQmO85dJ9MGlQoNEZQxVIfxbHHM5CfHv+xYp9Nhu
Ep7jvlyHjdM+kuDUMjYfBU6UU+hMhYWGQRWJ8NwueQWuwxmvJ65CG0T/1ozaBJpQ
+8DNZyrJqmDyBVGC0BqvGXyZLlBh7XWW9IeJr/S7JCashwgr+LBZ1zpXe6d5Emrt
4dSfJcJLvZIqgMPzZUbDuhMrjLRZ8G3c/GLJYATQTrxpkuvF+HH1GQw9FwbawuoS
XguUE/wSbXCIRSR1hEXLsjdDJYCh7QDf1lbQq+YQPP8O1cCEahIjewWzwesWZe1N
/l7BPxzkGFfMEmihmghf
=//q3
-----END PGP SIGNATURE-----

3
lxcfs-3.0.3.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:890aa30d960d9b1e53b0c0712bf645c1f1924f750e32cd090f368c1338bd462f
size 401975

16
lxcfs-3.0.3.tar.gz.asc Normal file
View File

@ -0,0 +1,16 @@
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEYC9WdmPlk7y9FPM4xjiXTWR5LWcFAlv3EkoACgkQxjiXTWR5
LWc6GRAA1d9oxUhRVOzFYheSddXXY8eOx9EGV7YA9fTHddudiWFeqjAQYIJfDll7
oQzofwgj5sZI6WTwfmfj08Z1IQ0tlZeDUT8Gp6baW91bgxkNdy4ayQ7MK6hWnBH9
wXjSOpt2jBVy0jCBzRSERT5H3UhnQgrh2oOK/jZ63+vc6YUC4Qo2uqmFBIEhBG5q
gCb7N4XJQm7qnOsBhJAxelKsBw4eJf68LYLq3F2SyyH2KIJhii4j91vKUTaaTNbw
zT5syWEjOArqY8ov1rLq6teQ+ut5DvL1sEVo3Vfb1FfY0V18qQMZOl361X/4OUzn
KN2OQP5tesfxGM0xd0u8H4rIAAUZnybZSHNjVoNp2M0J/HBQ5VGXoPFgHkl0dnaG
cXsOSVqL5uMsKGvfV4aPZWss/TKQ0nGX8tkPgNGgIWQDMmcjYlZf2Ri8ulF5DkiE
hLAN6yduE4OWDVsA+X2CG6IjpDdnUpeEihHb8bO8H5FC08zTDMp0OpOwbKpEAuhy
Zovv7JGjoHPHLz0+7m7oZU1QtWVt9+0DHcflH86U/bN5hsPrkhkj4QZ7HpvS1ops
e2fAE23kg+S4b6ixnThBPM6FEc4+bBDzJEeP7Q8hu6Txk/9dL0xrp6pSrJaxKOO1
40t9JpoSrFKhMtEhv8GgvpWQIRAnl2J1EPZAkrYOPf1N+dndudc=
=6C0D
-----END PGP SIGNATURE-----

View File

@ -1,7 +1,19 @@
-------------------------------------------------------------------
Tue Mar 26 02:28:48 UTC 2019 - Aleksa Sarai <asarai@suse.com>
- Update to version 3.0.3. The changelog is fairly significant from 2.x, but
the main difference is tha the PAM module has been moved to the LXC project,
and is no longer hosted in lxcfs.
-------------------------------------------------------------------
Tue Mar 26 00:09:22 UTC 2019 - Aleksa Sarai <asarai@suse.com>
- Rework packaging to be a more modern openSUSE-style.
-------------------------------------------------------------------
Wed Jun 13 12:50:43 UTC 2018 - dcassany@suse.com
- Make use of %license macro
- Make use of %license macro
-------------------------------------------------------------------
Tue Oct 31 19:34:47 UTC 2017 - opensuse_buildservice@ojkastl.de

View File

@ -1,7 +1,7 @@
#
# spec file for package lxcfs
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -12,81 +12,70 @@
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: lxcfs
Version: 2.0.8
Version: 3.0.3
Release: 0
Summary: FUSE filesystem for LXC
License: Apache-2.0
Group: System/Management
Url: http://linuxcontainers.org
Url: https://linuxcontainers.org/lxcfs
Source: https://linuxcontainers.org/downloads/%{name}/%{name}-%{version}.tar.gz
Source1: https://linuxcontainers.org/downloads/%{name}/%{name}-%{version}.tar.gz.asc#/%{name}-%{version}.tar.gz.asc
Source1: https://linuxcontainers.org/downloads/%{name}/%{name}-%{version}.tar.gz.asc
Source2: %{name}.keyring
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: fdupes
BuildRequires: help2man
BuildRequires: libtool
BuildRequires: pam-devel
BuildRequires: pkg-config
BuildRequires: systemd
BuildRequires: pkgconfig(fuse)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{?systemd_requires}
%description
LXCFS is a simple userspace filesystem designed to work around some current limitations of the Linux kernel.
LXCFS is a small FUSE filesystem written with the intention of making Linux
containers feel more like a virtual machine. It started as a side-project of
LXC but is usable by any runtime.
Specifically, it's providing two main things
%package hooks-lxc
Summary: LXC hooks for %{name}
Group: System/Management
Requires: %{name} = %{version}
Supplements: packageand(%{name}:lxc)
BuildArch: noarch
A set of files which can be bind-mounted over their /proc originals
to provide CGroup-aware values.
A cgroupfs-like tree which is container aware.
The code is pretty simple, written in C using libfuse and glib.
The main driver for this work was the need to run systemd based containers as a regular unprivileged user
while still allowing systemd inside the container to interact with cgroups.
Now with the introduction of the cgroup namespace in the Linux kernel, that part is no longer necessary
on recent kernels and focus is now on making containers feel more like a real independent system through
the proc masking feature.
%package -n pam_cgfs
Summary: CGroup FS pam module
Group: System/Libraries
%description -n pam_cgfs
When a user logs in, this pam module will create cgroups which the user may
administer, either for all controllers or for any controllers listed on the
command line.
%description hooks-lxc
Configuration to add hooks for %{name} so that it automatically interoperates
with LXC for all containers.
%prep
%setup
%build
autoreconf --force --install
%configure --with-distro=suse
autoreconf -vif
%configure --with-distro=opensuse
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot} %{?_smp_mflags}
install -d -m 0755 %{buildroot}%{_unitdir}
install -p -m 0644 config/init/systemd/*.service %{buildroot}%{_unitdir}/
install -d -m 0755 %{buildroot}%{_sbindir}
ln -sf service %{buildroot}%{_sbindir}/rc%{name}
install -d -m 0755 %{buildroot}%{_includedir}/%{name}
rm bindings.h
install -d -m 0755 %{buildroot}%{_localstatedir}/lib/%{name}/
# The shared library liblxcfs.so used by lxcfs is not supposed to be used by
# any other program. So we follow best practice and install it in
# /usr/lib/lxcfs. Note that lxcfs *expects* liblxcfs.so to be found in
# /usr/lib/lxcfs when it cannot find it in the lib.so path.
mkdir -p %{buildroot}/usr/lib/%{name}/
install -p -m 0755 .libs/liblxcfs.so %{buildroot}/usr/lib/%{name}/
rm -f %{buildroot}%{_libdir}/liblxcfs.so*
rm -f %{buildroot}%{_libdir}/liblxcfs.la
# any other program. lxcfs will automatically install it to {_libdir}/{name}
# which is out of the way of any other users.
%make_install
install -d -m 0755 %{buildroot}%{_sharedstatedir}/%{name}
# systemd service and sysv-init compat wrapper.
install -D -m 0644 config/init/systemd/%{name}.service %{buildroot}%{_unitdir}/%{name}.service
mkdir -p %{buildroot}%{_sbindir}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
# Clean up.
find %{buildroot} -type f -name '*.la' -delete
%fdupes %{buildroot}
%pre
%service_add_pre lxcfs.service
@ -102,29 +91,27 @@ rm -f %{buildroot}%{_libdir}/liblxcfs.la
%files
%defattr(-,root,root)
%doc AUTHORS ChangeLog README
%doc AUTHORS README*
%license COPYING
%{_sbindir}/*
%{_bindir}/*
%{_datadir}/lxc
%{_datadir}/%{name}
%{_mandir}/man1/*
%{_unitdir}/*
%dir %{_localstatedir}/lib/%{name}
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/liblxcfs.la
%{_libdir}/%{name}/liblxcfs.so
# Mountpoint for lxcfs.
%dir %{_sharedstatedir}/%{name}
# The lxcfs executable requires liblxcfs.so be installed. It calls dlopen() to
# dynamically reload the shared library on upgrade. This is important. Do *not*
# split into a separate package and do not turn this into a versioned shared
# library! (This shared library allows lxcfs to be updated without having to
# restart it which is good when you have important system containers running!)
%dir /usr/lib/%{name}
/usr/lib/%{name}/liblxcfs.so
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/liblxcfs.so
%files -n pam_cgfs
%files hooks-lxc
%defattr(-,root,root)
/%{_lib}/security/pam_cgfs.so
%{_datadir}/lxc
%changelog