Blob Blame History Raw
# Run tests in check section
%bcond_without check

# https://github.com/Yubico/yubihsm-connector
%global goipath         github.com/Yubico/yubihsm-connector
%global summary         Backend to talk to YubiHSM 2

Name:           yubihsm-connector
Version:        2.0.0
Release:        1%{?dist}
Summary:        YubiHSM Connector
License:        ASL 2.0

%gometa

URL:            %{gourl}
Source0:        %{gourl}/archive/%{version}/%{name}-%{version}.tar.gz

%{?systemd_requires}
Requires(pre): shadow-utils
BuildRequires: systemd-rpm-macros
BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang}
BuildRequires: golang(github.com/kardianos/service)
BuildRequires: golang(github.com/thorduri/go-libusb/usb)
BuildRequires: golang(github.com/sirupsen/logrus)
BuildRequires: golang(github.com/sirupsen/logrus/hooks/syslog)
BuildRequires: golang(github.com/spf13/cobra)
BuildRequires: golang(github.com/spf13/viper)
BuildRequires: golang(gopkg.in/yaml.v2)
Recommends:    yubihsm-shell

%description
%{summary}

%package devel
Summary:       %{summary}
BuildArch:     noarch


%description devel
%{summary}

This package contains library source intended for
building other packages which use import path with
%{goipath} prefix.

%prep
%forgeautosetup
rm -rf vendor/

#%%gosetup -q

%build
%gobuildroot
pushd src/yubihsm-connector/
go generate
popd
%gobuild -o _bin/yubihsm-connector %{goipath}/src/yubihsm-connector/

%install
install -Dpm 0755 _bin/yubihsm-connector %{buildroot}%{_bindir}/yubihsm-connector
install -Dpm 0644  deb/yubihsm-connector.yaml %{buildroot}%{_sysconfdir}/yubihsm-connector.yaml
install -Dpm 0644  deb/yubihsm-connector.service %{buildroot}%{_unitdir}/yubihsm-connector.service
install -Dpm 0644  deb/70-yubihsm-connector.rules %{buildroot}%{_udevrulesdir}/70-yubihsm-connector.rules

%if %{with check}
%check
%gochecks
%endif

%pre
getent group yubihsm-connector >/dev/null || groupadd -r yubihsm-connector
getent passwd yubihsm-connector >/dev/null || \
    useradd -r -g yubihsm-connector -M -s /sbin/nologin \
    -c "YubiHSM connector account" yubihsm-connector \
    --system
exit 0


%post
%systemd_post yubihsm-connector.service


%preun
%systemd_preun yubihsm-connector.service


%postun
%systemd_postun_with_restart yubihsm-connector.service

#define license tag if not already defined
%{!?_licensedir:%global license %doc}


%files
%license LICENSE
%{_bindir}/yubihsm-connector
%config(noreplace) %{_sysconfdir}/yubihsm-connector.yaml
%{_unitdir}/yubihsm-connector.service
%{_udevrulesdir}/70-yubihsm-connector.rules

%changelog
* Thu Jan 31 2019 Jakub Jelen <jjelen@redhat.com> - 2.0.0-1
- First package for Fedora