reason:/run/syscontainer-tools/netns/container id and container network namespace mount propagation, however, umount may fail during poststop, resulting in mount failure in the second prestart stage, so if you find that there are still mounts, you need to execute poststop first Work in and umount. Signed-off-by: yangjiaqi <yangjiaqi16@huawei.com>
171 lines
4.8 KiB
RPMSpec
171 lines
4.8 KiB
RPMSpec
#Basic Information
|
|
Name: syscontainer-tools
|
|
Version: 0.9
|
|
Release: 57
|
|
Summary: syscontainer tools for IT, work with iSulad
|
|
License: Mulan PSL v2
|
|
URL: https://gitee.com/openeuler/syscontainer-tools
|
|
Source0: https://gitee.com/openeuler/syscontainer-tools/repository/archive/v%{version}.tar.gz
|
|
BuildRoot: %{_tmppath}/%{name}-root
|
|
|
|
Patch1: 0001-fix-failed-build-with-golang-1.15.5.patch
|
|
Patch2: 0002-syscontainer-tools-build-security-option.patch
|
|
Patch3: 0003-enable-external-linkmode-for-cgo-build.patch
|
|
Patch4: 0004-add-dt-test.patch
|
|
Patch5: 0005-add-riscv64-to-syscall-build.patch
|
|
Patch6: 0006-syscontainer-tools-Add-sw64-architecture.patch
|
|
Patch7: 0007-support-ipv6.patch
|
|
Patch8: 0008-use-file-locks-to-avoid-remounting-the-sharepath-mas.patch
|
|
Patch9: 0009-clean-up-run-syscontainer-tools-netns-containerid-di.patch
|
|
|
|
#Dependency
|
|
BuildRequires: glibc-static
|
|
BuildRequires: golang > 1.6
|
|
Requires: iSulad
|
|
Requires: util-linux
|
|
|
|
%description
|
|
This is syscontainer tools, to make it work, you need a isulad and util-linux
|
|
|
|
#Build sections
|
|
%prep
|
|
%autosetup -n %{name}-v%{version} -p1
|
|
|
|
%build
|
|
make init && make
|
|
|
|
%install
|
|
HOOK_DIR=$RPM_BUILD_ROOT/var/lib/isulad/hooks
|
|
ISULAD_TOOLS_DIR=$RPM_BUILD_ROOT/usr/local/bin
|
|
ISULAD_TOOLS_WRAPPER=$RPM_BUILD_ROOT/lib/udev
|
|
|
|
mkdir -p -m 0700 ${HOOK_DIR}
|
|
mkdir -p -m 0750 ${ISULAD_TOOLS_DIR}
|
|
mkdir -p -m 0750 ${ISULAD_TOOLS_WRAPPER}
|
|
|
|
install -m 0750 build/syscontainer-hooks ${HOOK_DIR}
|
|
install -m 0750 build/syscontainer-tools ${ISULAD_TOOLS_DIR}
|
|
install -m 0750 hack/syscontainer-tools_wrapper ${ISULAD_TOOLS_WRAPPER}/syscontainer-tools_wrapper
|
|
|
|
%check
|
|
make localtest
|
|
|
|
#Install and uninstall scripts
|
|
%pre
|
|
|
|
%preun
|
|
|
|
%post
|
|
GRAPH=`isula info | grep -Eo "iSulad Root Dir:.+" | grep -Eo "\/.*"`
|
|
if [ "$GRAPH" == "" ]; then
|
|
GRAPH="/var/lib/isulad"
|
|
fi
|
|
|
|
if [[ "$GRAPH" != "/var/lib/isulad" ]]; then
|
|
mkdir -p -m 0550 $GRAPH/hooks
|
|
install -m 0550 -p /var/lib/isulad/hooks/syscontainer-hooks $GRAPH/hooks
|
|
|
|
echo
|
|
echo "=================== WARNING! ================================================"
|
|
echo " 'iSulad Root Dir' is $GRAPH, move /var/lib/isulad/hooks/syscontainer-hooks to $GRAPH/hooks"
|
|
echo "============================================================================="
|
|
echo
|
|
fi
|
|
HOOK_SPEC=/etc/syscontainer-tools
|
|
HOOK_DIR=${GRAPH}/hooks
|
|
mkdir -p -m 0750 ${HOOK_SPEC}
|
|
mkdir -p -m 0550 ${HOOK_DIR}
|
|
cat << EOF > ${HOOK_SPEC}/hookspec.json
|
|
{
|
|
"prestart": [
|
|
{
|
|
"path": "${HOOK_DIR}/syscontainer-hooks",
|
|
"args": ["syscontainer-hooks", "--state", "prestart"],
|
|
"env": []
|
|
}
|
|
],
|
|
"poststart":[
|
|
{
|
|
"path": "${HOOK_DIR}/syscontainer-hooks",
|
|
"args": ["syscontainer-hooks", "--state", "poststart"],
|
|
"env": []
|
|
}
|
|
],
|
|
"poststop":[
|
|
{
|
|
"path": "${HOOK_DIR}/syscontainer-hooks",
|
|
"args": ["syscontainer-hooks", "--state", "poststop"],
|
|
"env": []
|
|
}
|
|
]
|
|
}
|
|
EOF
|
|
chmod 0640 ${HOOK_SPEC}/hookspec.json
|
|
|
|
%postun
|
|
|
|
#Files list
|
|
%files
|
|
%defattr(0550,root,root,0550)
|
|
/usr/local/bin/syscontainer-tools
|
|
%attr(0550,root,root) /var/lib/isulad/hooks
|
|
%attr(0550,root,root) /var/lib/isulad/hooks/syscontainer-hooks
|
|
%attr(0550,root,root) /lib/udev/syscontainer-tools_wrapper
|
|
|
|
|
|
#Clean section
|
|
%clean
|
|
rm -rfv %{buildroot}
|
|
|
|
%changelog
|
|
* Thu Aug 17 2023 yangjiaqi<yangjiaqi16@huawei.com> - 0.9-57
|
|
- Type:bugfix
|
|
- CVE:NA
|
|
- SUG:restart
|
|
- DESC:clean up run/syscontainer-tools/netns/container_id directory residues in the prestart phase
|
|
|
|
* Tue Aug 15 2023 yangjiaqi<yangjiaqi16@huawei.com> - 0.9-56
|
|
- Type:bugfix
|
|
- CVE:NA
|
|
- SUG:restart
|
|
- DESC:use file locks to avoid remounting the sharepath/master dir
|
|
|
|
* Thu Aug 10 2023 yangjiaqi<yangjiaqi16@huawei.com> - 0.9-55
|
|
- Type:bugfix
|
|
- CVE:NA
|
|
- SUG:restart
|
|
- DESC:support ip6
|
|
|
|
* Wed Aug 09 2023 yangjiaqi<yangjiaqi16@huawei.com> - 0.9-54
|
|
- isolate sw patch by code to avoid rolling back patch
|
|
|
|
* Fri Jun 30 2023 wujie <wujie@nj.iscas.ac.cn> - 0.9-53
|
|
- add riscv64 to syscall_linux_64.go build
|
|
|
|
* Thu Nov 17 2022 yangjiaqi<yangjiaqi16@huawei.com> - 0.9-52
|
|
- fix source
|
|
|
|
* Thu Oct 27 2022 wuzx<wuzx1226@qq.com> - 0.9-51
|
|
- Add sw64 architecture
|
|
|
|
* Mon Oct 17 2022 vegbir <yangjiaqi16@huawei.com> - 0.9-50
|
|
- add dt-test
|
|
|
|
* Thu Sep 02 2021 zhangsong234 <zhangsong34@huawei.com> - 0.9-49
|
|
- DESC: enable external linkmode for cgo build
|
|
|
|
* Fri Jul 30 2021 chenyanpanHW <chenyanpan@huawei.com> - 0.9-48
|
|
- DESC: delete -Sgit from %autosetup
|
|
|
|
* Mon Feb 08 2021 zhangsong234<zhangsong34@huawei.com> - 0.9-47
|
|
- update version to 0.9-47
|
|
|
|
* Wed Dec 23 2020 wangkang101<873229877@qq.com> - 0.9-3
|
|
- fix failed build with golang 1.15.5
|
|
|
|
* Mon Sep 07 2020 wangkang101<873229877@qq.com> - 0.9-2
|
|
- modify url of source0
|
|
|
|
* Tue Apr 26 2020 Zhangsong<zhangsong34@huawei.com> - 0.9-1
|
|
- release version 0.9
|