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,3 +1,15 @@
-------------------------------------------------------------------
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 Wed Jun 13 12:50:43 UTC 2018 - dcassany@suse.com

View File

@ -1,7 +1,7 @@
# #
# spec file for package lxcfs # 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 # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # 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) # license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative. # 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 Name: lxcfs
Version: 2.0.8 Version: 3.0.3
Release: 0 Release: 0
Summary: FUSE filesystem for LXC Summary: FUSE filesystem for LXC
License: Apache-2.0 License: Apache-2.0
Group: System/Management Group: System/Management
Url: http://linuxcontainers.org Url: https://linuxcontainers.org/lxcfs
Source: https://linuxcontainers.org/downloads/%{name}/%{name}-%{version}.tar.gz 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 Source2: %{name}.keyring
BuildRequires: autoconf BuildRequires: autoconf
BuildRequires: automake BuildRequires: automake
BuildRequires: fdupes
BuildRequires: help2man BuildRequires: help2man
BuildRequires: libtool BuildRequires: libtool
BuildRequires: pam-devel BuildRequires: pam-devel
BuildRequires: pkg-config BuildRequires: pkg-config
BuildRequires: systemd
BuildRequires: pkgconfig(fuse) BuildRequires: pkgconfig(fuse)
BuildRoot: %{_tmppath}/%{name}-%{version}-build %{?systemd_requires}
%description %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 %description hooks-lxc
to provide CGroup-aware values. Configuration to add hooks for %{name} so that it automatically interoperates
A cgroupfs-like tree which is container aware. with LXC for all containers.
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.
%prep %prep
%setup %setup
%build %build
autoreconf --force --install autoreconf -vif
%configure --with-distro=suse %configure --with-distro=opensuse
make %{?_smp_mflags} make %{?_smp_mflags}
%install %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 # 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 # any other program. lxcfs will automatically install it to {_libdir}/{name}
# /usr/lib/lxcfs. Note that lxcfs *expects* liblxcfs.so to be found in # which is out of the way of any other users.
# /usr/lib/lxcfs when it cannot find it in the lib.so path. %make_install
mkdir -p %{buildroot}/usr/lib/%{name}/ install -d -m 0755 %{buildroot}%{_sharedstatedir}/%{name}
install -p -m 0755 .libs/liblxcfs.so %{buildroot}/usr/lib/%{name}/
rm -f %{buildroot}%{_libdir}/liblxcfs.so* # systemd service and sysv-init compat wrapper.
rm -f %{buildroot}%{_libdir}/liblxcfs.la 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 %pre
%service_add_pre lxcfs.service %service_add_pre lxcfs.service
@ -102,29 +91,27 @@ rm -f %{buildroot}%{_libdir}/liblxcfs.la
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%doc AUTHORS ChangeLog README %doc AUTHORS README*
%license COPYING %license COPYING
%{_sbindir}/* %{_sbindir}/*
%{_bindir}/* %{_bindir}/*
%{_datadir}/lxc
%{_datadir}/%{name} %{_datadir}/%{name}
%{_mandir}/man1/* %{_mandir}/man1/*
%{_unitdir}/* %{_unitdir}/*
%dir %{_localstatedir}/lib/%{name}
%dir %{_libdir}/%{name} # Mountpoint for lxcfs.
%{_libdir}/%{name}/liblxcfs.la %dir %{_sharedstatedir}/%{name}
%{_libdir}/%{name}/liblxcfs.so
# The lxcfs executable requires liblxcfs.so be installed. It calls dlopen() to # The lxcfs executable requires liblxcfs.so be installed. It calls dlopen() to
# dynamically reload the shared library on upgrade. This is important. Do *not* # 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 # 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 # library! (This shared library allows lxcfs to be updated without having to
# restart it which is good when you have important system containers running!) # restart it which is good when you have important system containers running!)
%dir /usr/lib/%{name} %dir %{_libdir}/%{name}
/usr/lib/%{name}/liblxcfs.so %{_libdir}/%{name}/liblxcfs.so
%files -n pam_cgfs %files hooks-lxc
%defattr(-,root,root) %defattr(-,root,root)
/%{_lib}/security/pam_cgfs.so %{_datadir}/lxc
%changelog %changelog