Add the ability to build rpm packages in a parameterized way
This commit is contained in:
parent
2753c669e3
commit
5a10cf2216
@ -20,6 +20,20 @@ while [ "$1" != "" ]; do
|
||||
shift
|
||||
fi
|
||||
;;
|
||||
|
||||
-p | --product )
|
||||
if [ "$2" != "" ]; then
|
||||
PRODUCT=$2
|
||||
shift
|
||||
fi
|
||||
;;
|
||||
|
||||
-ps | --productsysname )
|
||||
if [ "$2" != "" ]; then
|
||||
PRODUCT_SYSNAME=$2
|
||||
shift
|
||||
fi
|
||||
;;
|
||||
|
||||
-? | -h | --help )
|
||||
echo " Usage: bash build.sh [PARAMETER] [[PARAMETER], ...]"
|
||||
@ -40,11 +54,12 @@ while [ "$1" != "" ]; do
|
||||
shift
|
||||
done
|
||||
|
||||
PRODUCT="docspace"
|
||||
PRODUCT="${PRODUCT:-"docspace"}"
|
||||
PRODUCT_SYSNAME="${PRODUCT_SYSNAME:-"onlyoffice"}"
|
||||
BASE_DIR="/var/www/${PRODUCT}"
|
||||
PATH_TO_CONF="/etc/onlyoffice/${PRODUCT}"
|
||||
STORAGE_ROOT="/var/www/onlyoffice/Data"
|
||||
LOG_DIR="/var/log/onlyoffice/${PRODUCT}"
|
||||
PATH_TO_CONF="/etc/${PRODUCT_SYSNAME}/${PRODUCT}"
|
||||
STORAGE_ROOT="/var/www/${PRODUCT_SYSNAME}/Data"
|
||||
LOG_DIR="/var/log/${PRODUCT_SYSNAME}/${PRODUCT}"
|
||||
DOTNET_RUN="/usr/bin/dotnet"
|
||||
NODE_RUN="/usr/bin/node"
|
||||
APP_URLS="http://127.0.0.1"
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
cd %{_builddir}/buildtools
|
||||
|
||||
bash install/common/systemd/build.sh -pm "rpm"
|
||||
bash install/common/systemd/build.sh -pm "rpm" -p %{product} -ps %{product_sysname}
|
||||
|
||||
bash install/common/build-frontend.sh --srcpath %{_builddir} -di "false"
|
||||
bash install/common/build-backend.sh --srcpath %{_builddir}
|
||||
@ -10,23 +10,23 @@ bash install/common/publish-backend.sh --srcpath %{_builddir}/server
|
||||
|
||||
rename -f -v "s/product([^\/]*)$/%{product}\$1/g" install/common/*
|
||||
|
||||
rm -f config/nginx/onlyoffice-login.conf
|
||||
rm -f config/nginx/%{product_sysname}-login.conf
|
||||
find config/ -type f -regex '.*\.\(test\|dev\).*' -delete
|
||||
|
||||
if ! grep -q 'var/www/%{product}' config/nginx/*.conf; then find config/nginx/ -name "*.conf" -exec sed -i "s@\(var/www/\)@\1%{product}/@" {} +; fi
|
||||
|
||||
json -I -f config/appsettings.services.json -e "this.logPath=\"/var/log/onlyoffice/%{product}\"" -e "this.socket={ 'path': '../ASC.Socket.IO/' }" \
|
||||
json -I -f config/appsettings.services.json -e "this.logPath=\"/var/log/%{product_sysname}/%{product}\"" -e "this.socket={ 'path': '../ASC.Socket.IO/' }" \
|
||||
-e "this.ssoauth={ 'path': '../ASC.SsoAuth/' }" -e "this.logLevel=\"warning\"" -e "this.core={ 'products': { 'folder': '%{buildpath}/products', 'subfolder': 'server'} }"
|
||||
json -I -f config/appsettings.json -e "this.core.notify.postman=\"services\"" -e "this['debug-info'].enabled=\"false\"" -e "this.web.samesite=\"None\""
|
||||
json -I -f config/apisystem.json -e "this.core.notify.postman=\"services\""
|
||||
json -I -f %{_builddir}/publish/web/public/scripts/config.json -e "this.wrongPortalNameUrl=\"\""
|
||||
|
||||
sed 's_\(minlevel=\)"[^"]*"_\1"Warn"_g' -i config/nlog.config
|
||||
sed 's/teamlab.info/onlyoffice.com/g' -i config/autofac.consumers.json
|
||||
sed 's/teamlab.info/%{product_sysname}.com/g' -i config/autofac.consumers.json
|
||||
|
||||
sed -e 's_etc/nginx_etc/openresty_g' -e 's/listen\s\+\([0-9]\+\);/listen 127.0.0.1:\1;/g' -i config/nginx/*.conf
|
||||
sed -i "s#\$public_root#/var/www/%{product}/public/#g" config/nginx/onlyoffice.conf
|
||||
sed -e 's/$router_host/127.0.0.1/g' -e 's/this_host\|proxy_x_forwarded_host/host/g' -e 's/proxy_x_forwarded_proto/scheme/g' -e 's/proxy_x_forwarded_port/server_port/g' -e 's_includes_/etc/openresty/includes_g' -i install/docker/config/nginx/onlyoffice-proxy*.conf
|
||||
sed -i "s#\$public_root#/var/www/%{product}/public/#g" config/nginx/%{product_sysname}.conf
|
||||
sed -e 's/$router_host/127.0.0.1/g' -e 's/this_host\|proxy_x_forwarded_host/host/g' -e 's/proxy_x_forwarded_proto/scheme/g' -e 's/proxy_x_forwarded_port/server_port/g' -e 's_includes_/etc/openresty/includes_g' -i install/docker/config/nginx/%{product_sysname}-proxy*.conf
|
||||
sed -e '/.pid/d' -e '/temp_path/d' -e 's_etc/nginx_etc/openresty_g' -e 's/\.log/-openresty.log/g' -i install/docker/config/nginx/templates/nginx.conf.template
|
||||
sed -i "s_\(.*root\).*;_\1 \"/var/www/%{product}\";_g" -i install/docker/config/nginx/letsencrypt.conf
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
%attr(744, root, root) %{_bindir}/%{product}-configuration
|
||||
|
||||
%files api
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/studio/ASC.Web.Api/
|
||||
/usr/lib/systemd/system/%{product}-api.service
|
||||
%dir %{buildpath}/studio/
|
||||
@ -12,13 +12,13 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files api-system
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.ApiSystem/
|
||||
/usr/lib/systemd/system/%{product}-api-system.service
|
||||
%dir %{buildpath}/services/
|
||||
|
||||
%files backup
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Data.Backup/
|
||||
/usr/lib/systemd/system/%{product}-backup.service
|
||||
%dir %{buildpath}/services/
|
||||
@ -29,21 +29,21 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files common
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%config %attr(640, onlyoffice, onlyoffice) %{_sysconfdir}/onlyoffice/%{product}/*
|
||||
%exclude %{_sysconfdir}/onlyoffice/%{product}/openresty
|
||||
%exclude %{_sysconfdir}/onlyoffice/%{product}/nginx
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%config %attr(640, %{product_sysname}, %{product_sysname}) %{_sysconfdir}/%{product_sysname}/%{product}/*
|
||||
%exclude %{_sysconfdir}/%{product_sysname}/%{product}/openresty
|
||||
%exclude %{_sysconfdir}/%{product_sysname}/%{product}/nginx
|
||||
%{_docdir}/%{name}-%{version}-%{release}/
|
||||
%config %{_sysconfdir}/logrotate.d/%{product}-common
|
||||
%{_var}/log/onlyoffice/%{product}/
|
||||
%dir %{_sysconfdir}/onlyoffice/
|
||||
%dir %{_sysconfdir}/onlyoffice/%{product}/
|
||||
%dir %{_sysconfdir}/onlyoffice/%{product}/.private/
|
||||
%dir %{_var}/www/onlyoffice/Data
|
||||
%dir %{_var}/log/onlyoffice/
|
||||
%{_var}/log/%{product_sysname}/%{product}/
|
||||
%dir %{_sysconfdir}/%{product_sysname}/
|
||||
%dir %{_sysconfdir}/%{product_sysname}/%{product}/
|
||||
%dir %{_sysconfdir}/%{product_sysname}/%{product}/.private/
|
||||
%dir %{_var}/www/%{product_sysname}/Data
|
||||
%dir %{_var}/log/%{product_sysname}/
|
||||
|
||||
%files files-services
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/products/ASC.Files/service/
|
||||
/usr/lib/systemd/system/%{product}-files-services.service
|
||||
%dir %{buildpath}/products/
|
||||
@ -53,7 +53,7 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files notify
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Notify/
|
||||
/usr/lib/systemd/system/%{product}-notify.service
|
||||
%dir %{buildpath}/services/
|
||||
@ -64,7 +64,7 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files files
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/products/ASC.Files/server/
|
||||
/usr/lib/systemd/system/%{product}-files.service
|
||||
%dir %{buildpath}/products/
|
||||
@ -73,20 +73,20 @@
|
||||
%dir %{buildpath}/products/ASC.People/server/
|
||||
|
||||
%files proxy
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%config %{_sysconfdir}/openresty/includes/*
|
||||
%config %{_sysconfdir}/openresty/conf.d/*
|
||||
%config %{_sysconfdir}/openresty/html/*
|
||||
%attr(744, root, root) %{_bindir}/%{product}-ssl-setup
|
||||
%config %{_sysconfdir}/onlyoffice/%{product}/openresty/nginx.conf.template
|
||||
%dir %{_sysconfdir}/onlyoffice/
|
||||
%dir %{_sysconfdir}/onlyoffice/%{product}/
|
||||
%dir %{_sysconfdir}/onlyoffice/%{product}/openresty/
|
||||
%config %{_sysconfdir}/%{product_sysname}/%{product}/openresty/nginx.conf.template
|
||||
%dir %{_sysconfdir}/%{product_sysname}/
|
||||
%dir %{_sysconfdir}/%{product_sysname}/%{product}/
|
||||
%dir %{_sysconfdir}/%{product_sysname}/%{product}/openresty/
|
||||
%{buildpath}/public/
|
||||
%{buildpath}/client/
|
||||
|
||||
%files studio-notify
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Studio.Notify/
|
||||
/usr/lib/systemd/system/%{product}-studio-notify.service
|
||||
%dir %{buildpath}/services/
|
||||
@ -97,7 +97,7 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files people-server
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/products/ASC.People/server/
|
||||
/usr/lib/systemd/system/%{product}-people-server.service
|
||||
%dir %{buildpath}/products/
|
||||
@ -106,7 +106,7 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files socket
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Socket.IO/
|
||||
/usr/lib/systemd/system/%{product}-socket.service
|
||||
%dir %{buildpath}/services/
|
||||
@ -115,7 +115,7 @@
|
||||
%dir %{buildpath}/products/ASC.People/
|
||||
|
||||
%files studio
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/studio/ASC.Web.Studio/
|
||||
/usr/lib/systemd/system/%{product}-studio.service
|
||||
%dir %{buildpath}/studio/
|
||||
@ -126,50 +126,50 @@
|
||||
%dir %{buildpath}/products/ASC.Files/server/
|
||||
|
||||
%files ssoauth
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.SsoAuth/
|
||||
/usr/lib/systemd/system/%{product}-ssoauth.service
|
||||
%dir %{buildpath}/services/
|
||||
|
||||
%files clear-events
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.ClearEvents/
|
||||
/usr/lib/systemd/system/%{product}-clear-events.service
|
||||
%dir %{buildpath}/services/
|
||||
|
||||
%files backup-background
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Data.Backup.BackgroundTasks/
|
||||
/usr/lib/systemd/system/%{product}-backup-background.service
|
||||
%dir %{buildpath}/services/
|
||||
|
||||
%files radicale
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/Tools/radicale/
|
||||
%dir %{buildpath}/Tools/
|
||||
|
||||
%files doceditor
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/products/ASC.Files/editor/
|
||||
/usr/lib/systemd/system/%{product}-doceditor.service
|
||||
%dir %{buildpath}/products/
|
||||
%dir %{buildpath}/products/ASC.Files/
|
||||
|
||||
%files migration-runner
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Migration.Runner/
|
||||
/usr/lib/systemd/system/%{product}-migration-runner.service
|
||||
%dir %{buildpath}/services/
|
||||
|
||||
%files login
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/products/ASC.Login/login
|
||||
/usr/lib/systemd/system/%{product}-login.service
|
||||
%dir %{buildpath}/products/
|
||||
%dir %{buildpath}/products/ASC.Login/
|
||||
|
||||
%files healthchecks
|
||||
%defattr(-, onlyoffice, onlyoffice, -)
|
||||
%defattr(-, %{product_sysname}, %{product_sysname}, -)
|
||||
%{buildpath}/services/ASC.Web.HealthChecks.UI
|
||||
/usr/lib/systemd/system/%{product}-healthchecks.service
|
||||
%dir %{buildpath}/services/
|
||||
|
@ -1,7 +1,7 @@
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
mkdir -p "%{buildroot}/usr/lib/systemd/system/"
|
||||
mkdir -p "%{buildroot}/%{_var}/www/onlyoffice/Data"
|
||||
mkdir -p "%{buildroot}/%{_var}/www/%{product_sysname}/Data"
|
||||
mkdir -p "%{buildroot}%{buildpath}/Tools/radicale/plugins/"
|
||||
mkdir -p "%{buildroot}%{buildpath}/studio/ASC.Web.Studio/"
|
||||
mkdir -p "%{buildroot}%{buildpath}/studio/ASC.Web.Api/"
|
||||
@ -26,12 +26,12 @@ mkdir -p "%{buildroot}%{buildpath}/products/ASC.Files/editor/"
|
||||
mkdir -p "%{buildroot}%{buildpath}/products/ASC.Files/editor/.next/"
|
||||
mkdir -p "%{buildroot}%{buildpath}/products/ASC.Files/client/"
|
||||
mkdir -p "%{buildroot}%{buildpath}/client/"
|
||||
mkdir -p "%{buildroot}%{_var}/log/onlyoffice/%{product}/"
|
||||
mkdir -p "%{buildroot}%{_var}/log/%{product_sysname}/%{product}/"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/openresty/includes/"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/openresty/conf.d/"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/openresty/html/"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/onlyoffice/%{product}/openresty"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/onlyoffice/%{product}/.private/"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/%{product_sysname}/%{product}/openresty"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/%{product_sysname}/%{product}/.private/"
|
||||
mkdir -p "%{buildroot}%{_sysconfdir}/logrotate.d"
|
||||
mkdir -p "%{buildroot}%{_docdir}/%{name}-%{version}-%{release}/"
|
||||
mkdir -p "%{buildroot}%{_bindir}/"
|
||||
@ -58,16 +58,16 @@ cp -rf %{_builddir}/server/publish/products/ASC.Files/server/* "%{buildroot}%{bu
|
||||
cp -rf %{_builddir}/server/LICENSE "%{buildroot}%{_docdir}/%{name}-%{version}-%{release}/"
|
||||
cp -rf %{_builddir}/server/ASC.Migration.Runner/service/* "%{buildroot}%{buildpath}/services/ASC.Migration.Runner/"
|
||||
cp -rf %{_builddir}/buildtools/install/RadicalePlugins/* "%{buildroot}%{buildpath}/Tools/radicale/plugins/"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/templates/nginx.conf.template "%{buildroot}%{_sysconfdir}/onlyoffice/%{product}/openresty/nginx.conf.template"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/onlyoffice-proxy.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/onlyoffice-proxy.conf"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/onlyoffice-proxy.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/onlyoffice-proxy.conf.template"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/onlyoffice-proxy-ssl.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/onlyoffice-proxy-ssl.conf.template"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/templates/nginx.conf.template "%{buildroot}%{_sysconfdir}/%{product_sysname}/%{product}/openresty/nginx.conf.template"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/%{product_sysname}-proxy.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/%{product_sysname}-proxy.conf"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/%{product_sysname}-proxy.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/%{product_sysname}-proxy.conf.template"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/%{product_sysname}-proxy-ssl.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/%{product_sysname}-proxy-ssl.conf.template"
|
||||
cp -rf %{_builddir}/buildtools/install/docker/config/nginx/letsencrypt.conf "%{buildroot}%{_sysconfdir}/openresty/includes/letsencrypt.conf"
|
||||
cp -rf %{_builddir}/buildtools/install/common/systemd/modules/* "%{buildroot}/usr/lib/systemd/system/"
|
||||
cp -rf %{_builddir}/buildtools/install/common/logrotate/product-common "%{buildroot}%{_sysconfdir}/logrotate.d/%{product}-common"
|
||||
cp -rf %{_builddir}/buildtools/install/common/%{product}-ssl-setup "%{buildroot}%{_bindir}/%{product}-ssl-setup"
|
||||
cp -rf %{_builddir}/buildtools/install/common/%{product}-configuration "%{buildroot}%{_bindir}/%{product}-configuration"
|
||||
cp -rf %{_builddir}/buildtools/config/nginx/onlyoffice*.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/"
|
||||
cp -rf %{_builddir}/buildtools/config/nginx/includes/onlyoffice*.conf "%{buildroot}%{_sysconfdir}/openresty/includes/"
|
||||
cp -rf %{_builddir}/buildtools/config/nginx/%{product_sysname}*.conf "%{buildroot}%{_sysconfdir}/openresty/conf.d/"
|
||||
cp -rf %{_builddir}/buildtools/config/nginx/includes/%{product_sysname}*.conf "%{buildroot}%{_sysconfdir}/openresty/includes/"
|
||||
cp -rf %{_builddir}/buildtools/config/nginx/html/*.html "%{buildroot}%{_sysconfdir}/openresty/html/"
|
||||
cp -rf %{_builddir}/buildtools/config/* "%{buildroot}%{_sysconfdir}/onlyoffice/%{product}/"
|
||||
cp -rf %{_builddir}/buildtools/config/* "%{buildroot}%{_sysconfdir}/%{product_sysname}/%{product}/"
|
||||
|
@ -46,7 +46,7 @@ AutoReqProv: no
|
||||
BuildArch: noarch
|
||||
%description notify
|
||||
The service which launches additional services
|
||||
related to notifications about DocSpace events:
|
||||
related to notifications about %{product_name} events:
|
||||
NotifySenderService which sends messages from the base,
|
||||
and NotifyCleanerService which removes messages
|
||||
|
||||
@ -156,7 +156,7 @@ BuildArch: noarch
|
||||
%description ssoauth
|
||||
The service responsible for enabling and configuring
|
||||
SAML-based single sign-on (SSO) authentication to provide a more quick,
|
||||
easy and secure way to access DocSpace for users
|
||||
easy and secure way to access %{product_name} for users
|
||||
|
||||
%package clear-events
|
||||
Packager: %{packager}
|
||||
|
@ -2,8 +2,11 @@
|
||||
%define _build_id_links none
|
||||
%define __os_install_post /usr/lib/rpm/brp-compress %{nil}
|
||||
|
||||
%global product docspace
|
||||
%global product_name DocSpace
|
||||
%global product %{?another_product:%{another_product}}%{!?another_product:docspace}
|
||||
%global product_name %{?another_product_name:%{another_product_name}}%{!?another_product_name:DocSpace}
|
||||
%global product_sysname %{?another_product_sysname:%{another_product_sysname}}%{!?another_product_sysname:onlyoffice}
|
||||
%global url %{?another_url:%{another_url}}%{!?another_url:http://onlyoffice.com}
|
||||
%global vendor %{?another_vendor:%{another_vendor}}%{!?another_vendor:Ascensio System SIA}
|
||||
%global buildpath %{_var}/www/%{product}
|
||||
|
||||
Name: %{product}
|
||||
@ -15,16 +18,16 @@ Release: %{release}
|
||||
AutoReqProv: no
|
||||
|
||||
BuildArch: noarch
|
||||
URL: http://onlyoffice.com
|
||||
Vendor: Ascensio System SIA
|
||||
URL: %{url}
|
||||
Vendor: %{vendor}
|
||||
Packager: %{packager}
|
||||
License: AGPLv3
|
||||
|
||||
Source0: https://github.com/ONLYOFFICE/%{product}-buildtools/archive/master.tar.gz#/buildtools.tar.gz
|
||||
Source1: https://github.com/ONLYOFFICE/%{product}-client/archive/master.tar.gz#/client.tar.gz
|
||||
Source2: https://github.com/ONLYOFFICE/%{product}-server/archive/master.tar.gz#/server.tar.gz
|
||||
Source3: https://github.com/ONLYOFFICE/document-templates/archive/main/community-server.tar.gz#/DocStore.tar.gz
|
||||
Source4: https://github.com/ONLYOFFICE/dictionaries/archive/master.tar.gz#/dictionaries.tar.gz
|
||||
Source0: https://github.com/%{toupper:product_sysname}/%{product}-buildtools/archive/master.tar.gz#/buildtools.tar.gz
|
||||
Source1: https://github.com/%{toupper:product_sysname}/%{product}-client/archive/master.tar.gz#/client.tar.gz
|
||||
Source2: https://github.com/%{toupper:product_sysname}/%{product}-server/archive/master.tar.gz#/server.tar.gz
|
||||
Source3: https://github.com/%{toupper:product_sysname}/document-templates/archive/main/community-server.tar.gz#/DocStore.tar.gz
|
||||
Source4: https://github.com/%{toupper:product_sysname}/dictionaries/archive/master.tar.gz#/dictionaries.tar.gz
|
||||
Source5: %{product}.rpmlintrc
|
||||
|
||||
BuildRequires: nodejs >= 18.0
|
||||
@ -54,7 +57,7 @@ Requires: %name-studio = %version-%release
|
||||
Requires: %name-studio-notify = %version-%release
|
||||
|
||||
%description
|
||||
ONLYOFFICE DocSpace is a new way to collaborate on documents with teams,
|
||||
%{toupper:product_sysname} %{product_name} is a new way to collaborate on documents with teams,
|
||||
clients, partners, etc., based on the concept of rooms - special spaces with
|
||||
predefined permissions.
|
||||
|
||||
@ -80,14 +83,14 @@ cp %{SOURCE5} .
|
||||
|
||||
%pre common
|
||||
|
||||
getent group onlyoffice >/dev/null || groupadd -r onlyoffice
|
||||
getent passwd onlyoffice >/dev/null || useradd -r -g onlyoffice -s /sbin/nologin onlyoffice
|
||||
getent group %{product_sysname} >/dev/null || groupadd -r %{product_sysname}
|
||||
getent passwd %{product_sysname} >/dev/null || useradd -r -g %{product_sysname} -s /sbin/nologin %{product_sysname}
|
||||
|
||||
%pre proxy
|
||||
|
||||
# (DS v1.1.3) Removing old nginx configs to prevent conflicts before upgrading on OpenResty.
|
||||
if [ -f /etc/nginx/conf.d/onlyoffice.conf ]; then
|
||||
rm -rf /etc/nginx/conf.d/onlyoffice*
|
||||
if [ -f /etc/nginx/conf.d/%{product_sysname}.conf ]; then
|
||||
rm -rf /etc/nginx/conf.d/%{product_sysname}*
|
||||
systemctl reload nginx
|
||||
fi
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user