Browse Source

mattermost package creation

Signed-off-by: webbuilder_pel7ppc64bebuilder0 <webbuilder@powerel.org>
master
webbuilder_pel7ppc64bebuilder0 5 years ago
parent
commit
dd3c88804e
  1. 93
      SPECS/mattermost-server.spec

93
SPECS/mattermost-server.spec

@ -0,0 +1,93 @@ @@ -0,0 +1,93 @@
%global _hardened_build 1
%define mattermost_user mattermost
%define mattermost_group mattermost
%define mattermost_home /var/lib/mattermost
%define mattermost_logdir /var/log/mattermost
#%define debug_package %{nil}

Name : mattermost
Version : 5.8.0
Release : 1%{dist}
License : MIT
URL : https://mattermost.io
Summary : Open source Slack-alternative in Golang and React
Source0 : mattermost.service
Source1 : mattermost.logrotate
BuildRequires: golang
BuildRequires: git
Requires : git


%description
Mattermost is a flexible, open source messaging platform
that meets even the most demanding privacy and security standards.


%prep
%setup -T -q -c %{name}-%{version}
export GOPATH=`pwd`
mkdir -p src/github.com/mattermost/
cd src/github.com/mattermost/
git clone https://github.com/mattermost/mattermost-server/


%build
export GOPATH=`pwd`
cd src/github.com/mattermost/mattermost-server/
git checkout tags/v%{version}
go get -d ./...
sed 's/amd64/%{_arch}/g' -i build/release.mk
make build-linux


%install
install -p -D -m 0644 bin/mattermost %{buildroot}%{_bindir}/mattermost
install -p -D -m 0644 bin/platform %{buildroot}%{_bindir}/mattermost-platform
install -p -D -m 0644 bin/interface_generator %{buildroot}%{_bindir}/mattermost-interface_generator
install -p -D -m 0644 %{SOURCE0} %{buildroot}%{_unitdir}/mattermost.service
mkdir -p %{buildroot}%{_sysconfdir}/%{name}
cp -r src/github.com/mattermost/mattermost-server/config/* %{buildroot}%{_sysconfdir}/%{name}/
cp %{buildroot}%{_sysconfdir}/%{name}/default.json %{buildroot}%{_sysconfdir}/%{name}/config.json
mkdir -p %{buildroot}%{_datadir}/%{name}/
cp -r src/github.com/mattermost/mattermost-server/templates/ %{buildroot}%{_datadir}/%{name}/
cp -r src/github.com/mattermost/mattermost-server/fonts/ %{buildroot}%{_datadir}/%{name}/
cp -r src/github.com/mattermost/mattermost-server/i18n/ %{buildroot}%{_datadir}/%{name}/
install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/mattermost
install -p -d -m 0700 %{buildroot}%{mattermost_home}
install -p -d -m 0700 %{buildroot}%{mattermost_logdir}


%pre
getent group %{mattermost_group} > /dev/null || groupadd -r %{mattermost_group}
getent passwd %{mattermost_user} > /dev/null || \
useradd -r -d %{mattermost_home} -g %{mattermost_group} \
-s /bin/bash -c "Mattermost user" %{mattermost_user}
exit 0


%post
%systemd_post mattermost.service


%preun
%systemd_preun mattermost.service


%postun
%systemd_postun mattermost.service


%files
%attr(775,%{mattermost_user},%{mattermost_group}) %{_sysconfdir}/%{name}/
%config(noreplace) %{_sysconfdir}/%{name}/config.json
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%{_bindir}/%{name}
%{_bindir}/%{name}-platform
%{_bindir}/%{name}-interface_generator
%{_datadir}/%{name}/templates/
%{_datadir}/%{name}/fonts/
%{_datadir}/%{name}/i18n/
%{_unitdir}/mattermost.service


%changelog
Loading…
Cancel
Save