# Generated by go2rpm
%bcond_without check

# https://github.com/nats-io/nats-server
%global goipath         github.com/nats-io/nats-server
Version:                2.1.9

%gometa

%global goname          nats-server
%global goaltipaths     github.com/nats-io/gnatsd github.com/nats-io/nats-server/v2

%global common_description %{expand:
A High Performance NATS Server written in Go and hosted by the Cloud Native
Computing Foundation (CNCF).}

%global golicenses      LICENSE
%global godocs          CODE-OF-CONDUCT.md GOVERNANCE.md MAINTAINERS.md\\\
                        ROADMAP.md TODO.md README.md

Name:           %{goname}
Release:        9%{?dist}
Summary:        High-Performance server for NATS, the cloud native messaging system

# Upstream license specification: Apache-2.0
License:        ASL 2.0
URL:            %{gourl}
Source0:        %{gosource}

BuildRequires:  golang(github.com/nats-io/jwt)
BuildRequires:  golang(github.com/nats-io/nkeys)
BuildRequires:  golang(github.com/nats-io/nuid)
BuildRequires:  golang(golang.org/x/crypto/bcrypt)
BuildRequires:  systemd-rpm-macros
BuildRequires:  help2man
Requires(pre):  shadow-utils

%if %{with check}
# Tests
BuildRequires:  golang(github.com/nats-io/nats.go)
%endif

%description
%{common_description}

%gopkg

%prep
%goprep

%build
%gobuild -o %{gobuilddir}/bin/%{name} %{goipath}


%install
%gopkginstall
install -m 0755 -vd                     %{buildroot}%{_sbindir}
install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_sbindir}/
install -m 0755 -vd                     %{buildroot}%{_mandir}/man1
help2man --no-discard-stderr --no-info --version-string=%{version} %{buildroot}%{_sbindir}/%{name} > %{buildroot}%{_mandir}/man1/%{name}.1
install -m 0755 -vd                      %{buildroot}%{_unitdir}
install -m 0755 -vp util/%{name}.service %{buildroot}%{_unitdir}/
install -m 0755 -vd                         %{buildroot}%{_sysconfdir}
install -m 0755 -vp docker/nats-server.conf %{buildroot}%{_sysconfdir}/
mkdir -p %{buildroot}%{_sharedstatedir}/%{name}

%pre
getent group nats >/dev/null || groupadd -r nats
getent passwd nats >/dev/null || \
    useradd -r -g nats -d %{_sharedstatedir}/%{name} -s /sbin/nologin \
    -c "NATS Server account" nats
exit 0

%post
%systemd_post %{name}.service

%preun
%systemd_preun %{name}.service

%postun
%systemd_postun_with_restart %{name}.service

%if %{with check}
%check
# logger: needs access to syslog
# server, test: need network
%gocheck -d logger -d server -d server/pse -d test
%endif

%files
%license LICENSE
%doc CODE-OF-CONDUCT.md GOVERNANCE.md MAINTAINERS.md ROADMAP.md TODO.md
%doc README.md
%{_sbindir}/*
%config(noreplace) %{_sysconfdir}/%{name}.conf
%{_mandir}/man1/%{name}.1*
%{_unitdir}/%{name}.service
%attr(0750, nats, nats) %dir %{_sharedstatedir}/%{name}

%gopkgfiles

%changelog
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.9-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.9-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Tue Jul 19 2022 Maxwell G <gotmax@e.email> - 2.1.9-7
- Rebuild for CVE-2022-{1705,32148,30631,30633,28131,30635,30632,30630,1962} in
  golang

* Sat Jun 18 2022 Robert-André Mauchin <zebob.m@gmail.com> - 2.1.9-6
- Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191,
  CVE-2022-29526, CVE-2022-30629

* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.9-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.9-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild

* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.1.9-3
- Rebuilt for updated systemd-rpm-macros
  See https://pagure.io/fesco/issue/2583.

* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild

* Sat Dec 26 14:01:50 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2.1.9-1
- Update to 2.1.9
- Close: rhbz#1875804
- Security fix for CVE-2020-26892
- Fix: rhbz#1903719
- Security fix for CVE-2020-26521
- Fix: rhbz#1903716

* Thu Jul 30 06:57:58 CEST 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2.1.7-3
- Add alternative import path

* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

* Thu Jun 18 15:09:38 CEST 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2.1.7-1
- Update to 2.1.7

* Sat Feb 01 22:29:20 CET 2020 Robert-André Mauchin <zebob.m@gmail.com> - 2.1.4-1
- Update to 2.1.4

* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild

* Tue May 14 00:55:18 CEST 2019 Robert-André Mauchin <zebob.m@gmail.com> - 2.0.2-1
- Release 2.0.2

* Tue May 14 00:55:18 CEST 2019 Robert-André Mauchin <zebob.m@gmail.com> - 2.0.0-1.rc8
- Initial package