## START: Set by rpmautospec
## (rpmautospec version 0.2.6)
%define autorelease(e:s:pb:) %{?-p:0.}%{lua:
    release_number = 12;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{?dist}
## END: Set by rpmautospec

# Generated by go2rpm
%bcond_without check
%bcond_with bootstrap

%if %{with bootstrap}
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^golang\\(.*\\)$
%endif

# https://github.com/docker/libkv
%global goipath         github.com/docker/libkv
Version:                0.2.1
%global commit          458977154600b9f23984d9f4b82e79570b5ae12b

%gometa

%global common_description %{expand:
Libkv provides a Go native library to store metadata.

The goal of Libkv is to abstract common store operations for multiple
distributed and/or local Key/Value store backends.

For example, you can use it to store your metadata or for service discovery to
register machines and endpoints inside your cluster.

You can also easily implement a generic Leader Election on top of it (see the
docker/leadership repository).

As of now, Libkv offers support for Consul, Etcd, Zookeeper (Distributed store)
and BoltDB (Local store).}

%global golicenses      LICENSE.code LICENSE.docs
%global godocs          docs README.md

Name:           %{goname}
Release:        %autorelease -b 9
Summary:        Distributed key/value store abstraction library

# Upstream license specification: CC-BY-SA-4.0 and Apache-2.0
License:        CC-BY-SA and ASL 2.0
URL:            %{gourl}
Source0:        %{gosource}

%if %{without bootstrap}
BuildRequires:  golang(github.com/hashicorp/consul/api)
BuildRequires:  golang(github.com/samuel/go-zookeeper/zk)
BuildRequires:  golang(github.com/stretchr/testify/assert)
BuildRequires:  golang(github.com/stretchr/testify/mock)
BuildRequires:  golang(go.etcd.io/bbolt)
BuildRequires:  golang(go.etcd.io/etcd/client/v2)
%endif

%description
%{common_description}

%gopkg

%prep
%goprep
sed -i "s|github.com/coreos/etcd/client|go.etcd.io/etcd/client/v2|" $(find . -name "*.go")

%install
%gopkginstall

%if %{without bootstrap}
%if %{with check}
%check
# store/consul, store/zookeeper: needs network
# store/etcd: needs etcd
%gocheck -d store/consul -d store/etcd -d store/zookeeper
%endif
%endif

%gopkgfiles

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

* Wed Sep 22 2021 Robert-André Mauchin <zebob.m@gmail.com> 0.2.1-19
- Bump to commit %%global commit 458977154600b9f23984d9f4b82e79570b5ae12b

* Sat Aug 21 2021 Robert-André Mauchin <zebob.m@gmail.com> 0.2.1-10
- Unbootstrap

* Sat Aug 21 2021 Robert-André Mauchin <zebob.m@gmail.com> 0.2.1-9
- Fix typo

* Sat Aug 21 2021 Robert-André Mauchin <zebob.m@gmail.com>
- Bootstrap

* Sat Aug 21 2021 Robert-André Mauchin <zebob.m@gmail.com> 0.2.1-8
- Update for etcd 3.5.0

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

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

* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild

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

* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

* Sun May 05 01:20:12 CEST 2019 Robert-André Mauchin <zebob.m@gmail.com> - 0.2.1-1
- Release 0.2.1

* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.11.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.10.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild

* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.9.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.8.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.7.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.6.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Thu Jul 21 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.5.gitb68985b
- https://fedoraproject.org/wiki/Changes/golang1.7

* Mon Feb 22 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0-0.4.gitb68985b
- https://fedoraproject.org/wiki/Changes/golang1.6

* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0-0.3.gitb68985b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Sat Sep 12 2015 jchaloup <jchaloup@redhat.com> - 0-0.2.gitb68985b
- Update to spec-2.1
  resolves: #1250458

* Tue Jul 28 2015 jchaloup <jchaloup@redhat.com> - 0-0.1.gitb68985b
- First package for Fedora
  resolves: #1246766