#Global macro or variabl %define debug_package %{nil} #Basic Information Name: syscontainer-tools Version: 0.9 Release: 1 Summary: syscontainer tools for IT, work with iSulad License: Mulan PSL v2 URL: https://gitee.com/openeuler/syscontainer-tools Source0: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-root #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 %setup -n %{name} -q %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 #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 * Tue Apr 26 2020 Zhangsong - 0.9-1 - release version 0.9