From 2d64e92594426853edfabc52f31ce0192ab30cc8 Mon Sep 17 00:00:00 2001 From: liujiangbin11 Date: Sat, 22 Feb 2025 16:49:23 +0800 Subject: [PATCH] Init package --- oedp-1.0.0.tar.gz | Bin 0 -> 16578 bytes oedp.spec | 78 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 oedp-1.0.0.tar.gz create mode 100644 oedp.spec diff --git a/oedp-1.0.0.tar.gz b/oedp-1.0.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..45b08f4343a38384a0403ad7882764ada5acb36a GIT binary patch literal 16578 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 DmKjGK literal 0 HcmV?d00001 diff --git a/oedp.spec b/oedp.spec new file mode 100644 index 0000000..39a89e3 --- /dev/null +++ b/oedp.spec @@ -0,0 +1,78 @@ +%define _python_bytecompile_errors_terminate_build 0 +Name: oedp +Version: 1.0.0 +Release: 1 +Summary: openEuler deploy tool +License: MulanPSL-2.0 +Source0: %{name}-%{version}.tar.gz + +Requires: python3, ansible, python3-prettytable + +%description +openEuler deploy tool + + +%prep +%setup -b 0 -n %{name}-%{version} + + +%build +%define debug_package %{nil} + + +%install +mkdir -p -m 700 %{buildroot}%{_var}/oedp/log +mkdir -p -m 700 %{buildroot}%{_var}/oedp/plugin +mkdir -p -m 700 %{buildroot}%{_var}/oedp/python +mkdir -p -m 700 %{buildroot}%{_var}/oedp/python/venv +mkdir -p -m 700 %{buildroot}%{_usr}/lib/oedp +mkdir -p -m 700 %{buildroot}%{_usr}/share/applications +mkdir -p -m 700 %{buildroot}%{_sysconfdir}/oedp/config +mkdir -p %{buildroot}%{_bindir} + +cp -rdpf %{_builddir}/%{name}-%{version}/src %{buildroot}%{_usr}/lib/oedp +mv %{buildroot}%{_usr}/lib/oedp/src/config/log.conf %{buildroot}%{_sysconfdir}/oedp/config +install -c -m 0400 %{_builddir}/%{name}-%{version}/static/* %{buildroot}%{_usr}/share/applications +install -c -m 0500 %{_builddir}/%{name}-%{version}/oedp.py %{buildroot}%{_bindir}/oedp + + +%post +set -e + +# 创建 Python 虚拟环境 +cd %{_var}/oedp/python/venv +python3 -m venv oedp + +# 创建软连接 +python_version_info=$(python3 --version) +major_minor_version=$(echo ${python_version_info} | awk '{split($2, v, "."); print "python" v[1] "." v[2]}') +site_packages_dir=%{_var}/oedp/python/venv/oedp/lib/${major_minor_version}/site-packages +ln -s %{_usr}/lib/oedp/src %{_var}/oedp/python/venv/oedp/lib/${major_minor_version}/site-packages/src + + +%postun +set -e + +# 删除可能会残留的目录 +rm -rf /var/oedp +rm -rf /usr/lib/oedp + + +%files +%attr(0500,root,root) %dir %{_var}/oedp +%attr(0700,root,root) %dir %{_var}/oedp/log +%attr(0500,root,root) %dir %{_var}/oedp/plugin +%attr(0500,root,root) %dir %{_var}/oedp/python +%attr(0500,root,root) %dir %{_var}/oedp/python/venv +%attr(0500,root,root) %dir %{_usr}/lib/oedp +%attr(0700,root,root) %dir %{_sysconfdir}/oedp/config + +%attr(0600,root,root) %ghost %{_var}/oedp/log/oedp.log +%attr(0500,root,root) %{_usr}/lib/oedp/src/* +%attr(0600,root,root) %config %{_sysconfdir}/oedp/config/log.conf +%attr(0755,root,root) %{_usr}/share/applications/* +%attr(0500,root,root) %{_bindir}/oedp + +%changelog +* Sat Feb 22 2025 Liu Jiangbin - 1.0.0-1 +- init package \ No newline at end of file -- Gitee