1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- %if 0%{!?version:1}
- %global version 2.0.2
- %endif
- %if 0%{!?release:1}
- %global release 1%{?dist}
- %endif
- Name: milvus
- Version: %{version}
- Release: %{release}
- Summary: Milvus V2 RPM
- License: Apache License 2.0
- Requires(preun): libstdc++ libgomp tbb-devel
- # tbb-devel actually provides it, but not defined
- Provides: libtbb.so()(64bit)
- BuildArch: x86_64
- %description
- Milvus is an open-source vector database built to power embedding similarity search and AI applications.
- Milvus makes unstructured data search more accessible, and provides a consistent user experience regardless of the deployment environment.
- %install
- # dir
- mkdir -p %{buildroot}/usr/bin/
- mkdir -p %{buildroot}/lib64/milvus
- mkdir -p %{buildroot}/etc/milvus/configs/advanced
- mkdir -p %{buildroot}/etc/systemd/system/
- mkdir -p %{buildroot}/etc/ld.so.conf.d/
- # bin
- echo 'export MILVUSCONF=/etc/milvus/configs/' > %{buildroot}/usr/bin/milvus
- echo 'milvus-server $@' >> %{buildroot}/usr/bin/milvus
- chmod 755 %{buildroot}/usr/bin/milvus
- install -m 755 bin/milvus %{buildroot}/usr/bin/milvus-server
- install -m 755 bin/etcd %{buildroot}/usr/bin/milvus-etcd
- install -m 755 bin/minio %{buildroot}/usr/bin/milvus-minio
- # lib
- install -m 755 lib/libknowhere.so %{buildroot}/lib64/milvus/libknowhere.so
- install -m 755 lib/libmilvus_core.so %{buildroot}/lib64/milvus/libmilvus_core.so
- install -m 755 /usr/lib/libopenblas-r0.3.9.so %{buildroot}/lib64/milvus/libopenblas.so.0
- install -m 755 lib/libngt.so.1.12.0 %{buildroot}/lib64/milvus/libngt.so.1
- install -m 755 /usr/lib64/libgfortran.so.4.0.0 %{buildroot}/lib64/milvus/libgfortran.so.4
- # conf
- install -m 755 configs/milvus.yaml %{buildroot}/etc/milvus/configs/milvus.yaml
- install -m 755 configs/advanced/etcd.yaml %{buildroot}/etc/milvus/configs/advanced/etcd.yaml
- # service
- install -m 644 services/milvus.service %{buildroot}/etc/systemd/system/milvus.service
- install -m 644 services/milvus-etcd.service %{buildroot}/etc/systemd/system/milvus-etcd.service
- install -m 644 services/milvus-minio.service %{buildroot}/etc/systemd/system/milvus-minio.service
- # ldconf
- echo '/usr/lib64/milvus' >> %{buildroot}/etc/ld.so.conf.d/milvus.conf
- chmod 644 %{buildroot}/etc/ld.so.conf.d/milvus.conf
- %post
- # update ld, systemd cache
- ldconfig
- systemctl daemon-reload
- %preun
- # disable service before remove
- systemctl stop milvus
- systemctl disable milvus
- rm -rf /lib64/milvus
- rm -rf /etc/milvus
- %postun
- # update ld, systemd cache
- ldconfig
- systemctl daemon-reload
- %files
- /usr/bin/milvus
- /usr/bin/milvus-server
- /usr/bin/milvus-etcd
- /usr/bin/milvus-minio
- /lib64/milvus/libknowhere.so
- /lib64/milvus/libmilvus_core.so
- /lib64/milvus/libopenblas.so.0
- /lib64/milvus/libngt.so.1
- /lib64/milvus/libgfortran.so.4
- /etc/milvus/configs/milvus.yaml
- /etc/milvus/configs/advanced/etcd.yaml
- /etc/systemd/system/milvus.service
- /etc/systemd/system/milvus-etcd.service
- /etc/systemd/system/milvus-minio.service
- /etc/ld.so.conf.d/milvus.conf
- %changelog
- # let's skip this for now
|