# Generated by go2rpm %bcond_without check %bcond_with bootstrap # https://github.com/etcd-io/etcd %global goipath go.etcd.io/etcd %global forgeurl https://github.com/etcd-io/etcd Version: 3.4.14 %gometa %global goipaths0 go.etcd.io/etcd %global goipathsex0 go.etcd.io/etcd/etcdserver/api/v3rpc/ %if %{without bootstrap} %global goipaths1 go.etcd.io/etcd/etcdserver/api/v3rpc/ %endif %global goaltipaths github.com/coreos/etcd go.etcd.io/etcd/v3 %global man_version 3.4.14 %global common_description %{expand: Distributed reliable key-value store for the most critical data of a distributed system.} %global golicenses LICENSE NOTICE %global godocs CONTRIBUTING.md README.md Documentation\\\ README-*.md READMEv2-etcdctl.md %global gosupfiles integration/fixtures/* etcdserver/api/v2http/testdata/* Name: etcd Release: 1%{?dist} Summary: Distributed reliable key-value store for the most critical data of a distributed system # Upstream license specification: Apache-2.0 License: ASL 2.0 URL: %{gourl} Source0: %{gosource} Source1: %{name}.service Source2: %{name}.conf Source3: man-%{man_version}.tar.gz # sh genmanpages.sh path_to_built_source Source10: genmanpages.sh # Not patches to apply here, but used on the source to generate man pages Source11: 0001-hack-etcdmain-to-generate-etcd.1.patch Source12: 0001-hack-to-generate-man-pages.patch # update grpc-go version to v1.32.0 Patch0: 0001-update-grpc-go-version-to-v1.32.0.patch Patch1: 0001-Convert-int-to-string-using-strconv.Itoa.patch BuildRequires: golang(github.com/bgentry/speakeasy) # BuildRequires: golang(github.com/cockroachdb/datadriven) BuildRequires: golang(github.com/coreos/go-semver/semver) BuildRequires: golang(github.com/coreos/go-systemd/daemon) BuildRequires: golang(github.com/coreos/go-systemd/journal) BuildRequires: golang(github.com/coreos/pkg/capnslog) BuildRequires: golang(github.com/creack/pty) BuildRequires: golang(github.com/dgrijalva/jwt-go) BuildRequires: golang(github.com/dustin/go-humanize) BuildRequires: golang(github.com/gogo/protobuf/gogoproto) BuildRequires: golang(github.com/gogo/protobuf/proto) BuildRequires: golang(github.com/golang/groupcache/lru) BuildRequires: golang(github.com/golang/protobuf/proto) BuildRequires: golang(github.com/google/btree) BuildRequires: golang(github.com/google/uuid) %if %{without bootstrap} BuildRequires: golang(github.com/grpc-ecosystem/go-grpc-middleware) %endif BuildRequires: golang(github.com/grpc-ecosystem/go-grpc-prometheus) BuildRequires: golang(github.com/grpc-ecosystem/grpc-gateway/runtime) BuildRequires: golang(github.com/grpc-ecosystem/grpc-gateway/utilities) BuildRequires: golang(github.com/jonboulle/clockwork) BuildRequires: golang(github.com/json-iterator/go) BuildRequires: golang(github.com/modern-go/reflect2) BuildRequires: golang(github.com/olekukonko/tablewriter) BuildRequires: golang(github.com/prometheus/client_golang/prometheus) BuildRequires: golang(github.com/prometheus/client_golang/prometheus/promhttp) BuildRequires: golang(github.com/soheilhy/cmux) BuildRequires: golang(github.com/spf13/cobra) BuildRequires: golang(github.com/spf13/pflag) BuildRequires: golang(github.com/tmc/grpc-websocket-proxy/wsproxy) BuildRequires: golang(github.com/urfave/cli) BuildRequires: golang(github.com/xiang90/probing) BuildRequires: golang(go.etcd.io/bbolt) BuildRequires: golang(go.uber.org/zap) BuildRequires: golang(go.uber.org/zap/zapcore) BuildRequires: golang(golang.org/x/crypto/bcrypt) BuildRequires: golang(golang.org/x/net/context) BuildRequires: golang(golang.org/x/net/http2) BuildRequires: golang(golang.org/x/net/trace) BuildRequires: golang(golang.org/x/time/rate) BuildRequires: golang(google.golang.org/grpc) BuildRequires: golang(google.golang.org/grpc/balancer) BuildRequires: golang(google.golang.org/grpc/codes) BuildRequires: golang(google.golang.org/grpc/connectivity) BuildRequires: golang(google.golang.org/grpc/credentials) BuildRequires: golang(google.golang.org/grpc/grpclog) BuildRequires: golang(google.golang.org/grpc/health) BuildRequires: golang(google.golang.org/grpc/health/grpc_health_v1) BuildRequires: golang(google.golang.org/grpc/keepalive) BuildRequires: golang(google.golang.org/grpc/metadata) # BuildRequires: golang(google.golang.org/grpc/naming) BuildRequires: golang(google.golang.org/grpc/peer) BuildRequires: golang(google.golang.org/grpc/resolver) BuildRequires: golang(google.golang.org/grpc/resolver/dns) BuildRequires: golang(google.golang.org/grpc/resolver/passthrough) BuildRequires: golang(google.golang.org/grpc/status) BuildRequires: golang(gopkg.in/cheggaaa/pb.v1) BuildRequires: golang(gopkg.in/yaml.v2) BuildRequires: golang(sigs.k8s.io/yaml) BuildRequires: python3-devel # BuildRequires: %%{py3_dist sphinx sphinx-rtd-theme} %{?systemd_requires} BuildRequires: systemd Requires(pre): shadow-utils %if %{with check} # Tests BuildRequires: golang(github.com/prometheus/client_model/go) %endif %description %{common_description} %gopkg %prep %setup -q -n man-%{man_version} -T -b 3 %goprep -k %patch0 -p1 %patch1 -p1 rm -rf vendor/ rm -rf cmd/vendor rm -rf raft/rafttest # For compatibility cp -aR etcdserver/api/snap snap cp -aR etcdserver/api/membership etcdserver/membership cp -aR etcdserver/api/v2store store for d in client clientv3 contrib etcdctl functional hack; do mv $d/README.md README-$d.md done mv etcdctl/READMEv2.md READMEv2-etcdctl.md mkdir -p man/man1 cp ../man-%{man_version}/*.1 man/man1/. %if %{without bootstrap} %build %gobuild -o %{gobuilddir}/bin/etcd %{goipath} for cmd in etcdctl; do %gobuild -o %{gobuilddir}/bin/$(basename $cmd) %{goipath}/$cmd done %endif # make -C docs help # make -C docs html %install %gopkginstall %if %{without bootstrap} install -m 0755 -vd %{buildroot}%{_bindir} install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ install -Dpm 0644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service install -dm 0755 %{buildroot}%{_sysconfdir}/%{name} install -pm 644 -t %{buildroot}%{_sysconfdir}/%{name} %{SOURCE2} # install manpages install -d %{buildroot}%{_mandir}/man1 install -pm 644 man/man1/* %{buildroot}%{_mandir}/man1 # And create /var/lib/etcd install -dm 0755 %{buildroot}%{_sharedstatedir}/%{name} %endif %if %{without bootstrap} %if %{with check} %check %gocheck -d clientv3 \ -d e2e \ -d functional/rpcpb \ -d functional/tester \ -d tools/functional-tester/etcd-agent \ -d integration \ -d clientv3/integration \ -d clientv3/balancer \ -d clientv3/naming \ -d clientv3/snapshot \ -d clientv3/ordering \ -d pkg/expect \ -d pkg/flags \ -d pkg/proxy \ -d pkg/tlsutil \ -d pkg/transport \ -d proxy/grpcproxy \ -t raft \ -t tests/e2e %endif %endif %if %{without bootstrap} %pre getent group %{name} >/dev/null || groupadd -r %{name} getent passwd %{name} >/dev/null || useradd -r -g %{name} -d %{_sharedstatedir}/%{name} \ -s /sbin/nologin -c "etcd user" %{name} %post %systemd_post %{name}.service %preun %systemd_preun %{name}.service %postun %systemd_postun %{name}.service %files %license LICENSE NOTICE %doc CONTRIBUTING.md README.md %doc Documentation README-*.md READMEv2-etcdctl.md %{_bindir}/* %config(noreplace) %{_sysconfdir}/%{name} %dir %attr(-,%{name},%{name}) %{_sharedstatedir}/%{name} %{_unitdir}/%{name}.service %{_mandir}/man1/*.1* %endif %gopkgfiles %changelog * Sat Dec 26 16:38:31 CET 2020 Robert-André Mauchin - 3.4.14-1 - Update to 3.4.14 - Close: rhbz#1901781 * Fri Sep 04 00:08:52 CEST 2020 Robert-André Mauchin - 3.4.13-1 - Update to 3.4.13 * Sat Aug 01 2020 Fedora Release Engineering - 3.4.7-3 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Mon Jul 27 2020 Fedora Release Engineering - 3.4.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Sun Apr 05 15:36:23 CEST 2020 Robert-André Mauchin - 3.4.7-1 - Update to 3.4.7 * Mon Feb 17 2020 Elliott Sales de Andrade - 3.3.13-5 - Rebuilt for GHSA-jf24-p9p9-4rjh * Tue Jan 28 2020 Fedora Release Engineering - 3.3.13-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Wed Jul 24 2019 Fedora Release Engineering - 3.3.13-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Wed Jul 10 2019 Elliott Sales de Andrade - 3.3.13-2 - Add Obsoletes for old name * Wed May 08 01:20:48 CEST 2019 Robert-André Mauchin - 3.3.13-1 - Release 3.3.13 * Tue Apr 16 15:51:11 CET 2019 Robert-André Mauchin - 3.3.12-4.20190413gitf29b1ad - etcd.service: do not pass command line flags already defined in environment * Mon Apr 15 15:11:24 CET 2019 Robert-André Mauchin - 3.3.12-3.20190413gitf29b1ad - Fix building of etcd * Sat Apr 13 22:31:30 CET 2019 Robert-André Mauchin - 3.3.12-2.20190413gitf29b1ad - Bump to commit f29b1ada19713544b698dab8c94c97cfa1e83dac * Thu Mar 14 2019 Robert-André Mauchin - 3.3.12-1.20190314gite1ca3b4 - Bump to commit e1ca3b4434945e57e8e3a451cdbde74a903cc8e1 - Add new goipath - Updated patches - Updated man pages * Sun Feb 17 2019 Elliott Sales de Andrade - 3.2.16-6 - Fix broken version specification - Backport variadic parameter fix * Thu Jan 31 2019 Fedora Release Engineering - 3.2.16-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Tue Oct 23 2018 Nicolas Mailhot - 3.2.16-4 - redhat-rpm-config-123 triggers bugs in gosetup, remove it from Go spec files as it’s just an alias - https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/RWD5YATAYAFWKIDZBB7EB6N5DAO4ZKFM/ * Fri Jul 13 2018 Fedora Release Engineering - 3.2.16-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Tue Mar 20 2018 Jan Chaloupka - 3.2.16-2 - Put back the missing prep, post, preun and postun scripts resolves: #1557356 * Fri Mar 09 2018 Jan Chaloupka - 3.2.16-1.git121edf0 - Update to 3.2.16 * Tue Mar 06 2018 Jan Chaloupka - 3.2.7-5.gitbb66589 - Update to spec 3.0 * Wed Feb 07 2018 Fedora Release Engineering - 3.2.7-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Nov 30 2017 Jan Chaloupka - 3.2.7-3 - Polish the spec file * Tue Nov 07 2017 Jan Chaloupka - 3.2.7-2 - Generate man pages * Sun Sep 24 2017 Jan Chaloupka - 3.2.7-1 - Update to 3.2.7 related: #1448611 * Tue Aug 15 2017 Jan Chaloupka - 3.2.5-1 - Update to 3.2.5 resolves: #1448611 * Wed Aug 02 2017 Fedora Release Engineering - 3.1.9-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 3.1.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sun Jun 11 2017 Jan Chaloupka - 3.1.9-1 - Update to 3.1.9 resolves: #1460496 * Mon Jun 05 2017 Jan Chaloupka - 3.1.8-1 Update to 3.1.8 resolves: #1458717 * Tue May 02 2017 Jan Chaloupka - 3.1.7-1 - Update to 3.1.7 resolves: #1447232 * Thu Apr 20 2017 Jan Chaloupka - 3.1.6-1 - Update to 3.1.6 resolves: #1444068 * Tue Mar 28 2017 Jan Chaloupka - 3.1.5-1 - Update to 3.1.5 resolves: #1436452 * Mon Mar 27 2017 Jan Chaloupka - 3.1.4-1 - Update to 3.1.4 resolves: #1435028 * Mon Mar 20 2017 Jan Chaloupka - 3.1.3-1 - Update to v3.1.3 related: #1415341 * Tue Mar 14 2017 Jan Chaloupka - 3.1.0-1 - Update to v3.1.0 related: #1415341 * Fri Feb 10 2017 Fedora Release Engineering - 3.0.17-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Jan 23 2017 Jan Chaloupka - 3.0.17-1 - Update to v3.0.17 etcd-top removed by upstream resolves: #1415622 * Fri Nov 18 2016 jchaloup - 3.0.15-2 - Remove ppc64le architecture restriction resolves: #1396463 * Tue Nov 15 2016 jchaloup - 3.0.15-1 - Update to v3.0.15 related: #1382965 * Mon Nov 07 2016 jchaloup - 3.0.14-1 - Update to v3.0.14 related: #1382965 * Thu Oct 27 2016 jchaloup - 3.0.13-1 - Update to v3.0.13 related: #1382965 * Mon Oct 24 2016 jchaloup - 3.0.12-2 - Extend supported architectures with s390x * Thu Oct 13 2016 jchaloup - 3.0.12-1 - Update to v3.0.12 related: #1382965 * Fri Sep 16 2016 jchaloup - 3.0.9-1 - Update to v3.0.9 related: #1374880 * Wed Sep 14 2016 jchaloup - 3.0.8-1 - Update to v3.0.8 resolves: #1374880 * Fri Sep 09 2016 jchaloup - 3.0.7-1 - Update to v3.0.7 resolves: #1370678 * Tue Aug 16 2016 jchaloup - 3.0.4-2 - Hack test to provide ability to run unit-tests and integration tests Still, keeping it disabled by default as it keeps failing related: #1351818 * Tue Aug 02 2016 jchaloup - 3.0.4-1 - Update to 3.0.4 related: #1351818 * Thu Jul 28 2016 jchaloup - 3.0.2-1 - Update to 3.0.2 resolves: #1351818 * Thu Jul 21 2016 Fedora Release Engineering - 3.0.0-0.2.beta0 - https://fedoraproject.org/wiki/Changes/golang1.7 * Sun May 15 2016 jchaloup - 3.0.0-0.1.beta0 - Update to v3.0.0-beta0 (build from bundled until new deps appear in dist-git) resolves: #1333988 * Sat Apr 30 2016 jchaloup - 2.3.3-1 - Update to v2.3.3 resolves: #1331896 * Fri Apr 22 2016 jchaloup - 2.3.2-1 - Update to v2.3.2 resolves: #1329438 * Sat Apr 9 2016 Peter Robinson 2.3.1-3 - Enable aarch64 * Wed Apr 06 2016 jchaloup - 2.3.1-2 - Don't apply patch (for tests only which are disabled atm) * Mon Apr 04 2016 jchaloup - 2.3.1-1 - Update to v.2.3.1 resolves: #1323375 * Sun Mar 20 2016 jchaloup - 2.3.0-1 - Update to v2.3.0 resolves: #1314441 * Wed Mar 09 2016 jchaloup - 2.2.5-4 - Only ppc64le is supported, ppc64 not related: #1315419 * Tue Mar 08 2016 jchaloup - 2.2.5-3 - Extend archs to all supported resolves: #1315419 * Mon Feb 22 2016 Fedora Release Engineering - 2.2.5-2 - https://fedoraproject.org/wiki/Changes/golang1.6 * Thu Feb 18 2016 jchaloup - 2.2.5-1 - Update to v2.2.5 * Wed Feb 03 2016 Fedora Release Engineering - 2.2.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Thu Jan 21 2016 jchaloup - 2.2.4-1 - Update to v2.2.4 resolves: #1300558 * Fri Jan 08 2016 jchaloup - 2.2.3-1 - Update to v2.2.3 resolves: #1296809 * Tue Dec 29 2015 jchaloup - 2.2.2-2 - add missing options to etcd help (thanks to Joy Pu ypu@redhat.com) - add more information when running etcd as a service * Mon Dec 07 2015 jchaloup - 2.2.2-1 - Update to v2.2.2 * Mon Nov 16 2015 jchaloup - 2.2.1-4 - Update etcd.conf: add new options, fix current * Fri Oct 30 2015 jchaloup - 2.2.1-3 - Add After=network-online.target and Wants=network-online.target to etcd.service * Tue Oct 20 2015 jchaloup - 2.2.1-2 - Set Type=notify instead of simple in etcd.service (upstream #1576) related: #1272438 * Fri Oct 16 2015 jchaloup - 2.2.1-1 - Update to v2.2.1 resolves: #1272438 * Fri Sep 11 2015 jchaloup - 2.2.0-1 - Update to v2.2.0 (etcd-migrate gone) - Update to spec-2.1 resolves: #1253864 * Mon Aug 31 2015 jchaloup - 2.1.2-1 - Update to v2.1.2 resolves: #1258599 * Thu Jul 30 2015 jchaloup - 2.1.1-2 - Enable debug info again related: #1214958 * Mon Jul 20 2015 jchaloup - 2.1.1-1 - fix definition of GOPATH for go1.5 - fix definition of gobuild function for non-debug way - Update to v2.1.1 resolves: #1214958 * Fri Jul 10 2015 jchaloup - 2.0.13-3 - set GOMAXPROCS to use all processors available * Mon Jun 29 2015 jchaloup - 2.0.13-2 - Remove -s option from -ldflags string as it removes symbol table 'go tool l6' gives explanation of all available options resolves: #1236320 * Fri Jun 26 2015 jchaloup - 2.0.13-1 - Update to v2.0.13 * Thu Jun 25 2015 jchaloup - 2.0.12-2 - Add restart policy and set LimitNOFILE to/in etcd.service file - Update etcd.config file: add new flags and remove depricated - Update 'go build' flags for GIT_SHA (used in build script) - Don't use 4001 and 7001 ports in etcd.conf, they are replaced with 2379 and 2380 * Wed Jun 24 2015 jchaloup - 2.0.12-1 - Update to v2.0.12 - Polish spec file * Wed Jun 17 2015 Fedora Release Engineering - 2.0.11-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Fri May 22 2015 jchaloup - 2.0.11-2 - ETCD_ADVERTISE_CLIENT_URLS has to be set if ETCD_LISTEN_CLIENT_URLS is related: #1222416 * Mon May 18 2015 jchaloup - 2.0.11-1 - Update to v2.0.11 resolves: #1222416 * Thu Apr 23 2015 jchaloup - 2.0.10-1 - Update to v2.0.10 resolves: #1214705 * Wed Apr 08 2015 jchaloup - 2.0.9-1 - Update to v2.0.9 resolves: #1209666 * Fri Apr 03 2015 jchaloup - 2.0.8-0.2 - Update spec file to fit for rhel too (thanks to eparis) related: #1207881 * Wed Apr 01 2015 jchaloup - 2.0.8-0.1 - Update to v2.0.8 resolves: #1207881 * Tue Mar 31 2015 jchaloup - 2.0.7-0.1 - Update to v2.0.7 Add Godeps.json to doc related: #1191441 * Thu Mar 12 2015 jchaloup - 2.0.5-0.1 - Bump to 9481945228b97c5d019596b921d8b03833964d9e (v2.0.5) * Tue Mar 10 2015 Eric Paris - 2.0.3-0.2 - Fix .service files to work if no config file * Fri Feb 20 2015 jchaloup - 2.0.3-0.1 - Bump to upstream 4d728cc8c488a545a8bdeafd054d9ccc2bfb6876 * Wed Feb 18 2015 jchaloup - 2.0.1-0.2 - Update configuration and service file Fix depricated ErrWrongType after update of gogo/protobuf related: #1191441 * Wed Feb 11 2015 jchaloup - 2.0.1-0.1 - Update to 2.0.1 resolves: #1191441 * Mon Feb 09 2015 jchaloup - 2.0.0-0.5 - Add missing debug info to binaries (patch from Jan Kratochvil) resolves: #1184257 * Fri Jan 30 2015 jchaloup - 2.0.0-0.4 - Update to etcd-2.0.0 - use gopath as the last directory to search for source code related: #1176138 * Mon Jan 26 2015 jchaloup - 2.0.0-0.3.rc1 - default to /var/lib/etcd/default.etcd as 2.0 uses that default (f21 commit byt eparis) related: #1176138 fix /etc/etcd/etcd.conf path * Tue Jan 20 2015 jchaloup - 2.0.0-0.2.rc1 - Update of BuildRequires/Requires, Provides and test Add BuildRequire on jonboulle/clockwork related: #1176138 * Tue Dec 23 2014 Lokesh Mandvekar - 2.0.0-0.1.rc1 - Resolves: rhbz#1176138 - update to v2.0.0-rc1 - do not redefine gopath - use jonboulle/clockwork from within Godeps * Fri Oct 17 2014 jchaloup - 0.4.6-7 - Add ExclusiveArch for go_arches * Mon Oct 06 2014 jchaloup - 0.4.6-6 - related: #1047194 Remove dependency on go.net * Mon Oct 06 2014 jchaloup - 0.4.6-5 - Fix the .service file so it can launch! related: #1047194 * Mon Sep 22 2014 jchaloup - 0.4.6-4 - resolves: #1047194 Update to 0.4.6 from https://github.com/projectatomic/etcd-package * Tue Aug 19 2014 Adam Miller - 0.4.6-3 - Add devel sub-package * Wed Aug 13 2014 Eric Paris - 0.4.6-2 - Bump to 0.4.6 - run as etcd, not root * Sat Jun 07 2014 Fedora Release Engineering - 0.1.2-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sun Oct 20 2013 Peter Lemenkov - 0.1.2-5 - goprotobuf library unbundled (see rhbz #1018477) - go-log library unbundled (see rhbz #1018478) - go-raft library unbundled (see rhbz #1018479) - go-systemd library unbundled (see rhbz #1018480) - kardianos library unbundled (see rhbz #1018481) * Sun Oct 13 2013 Peter Lemenkov - 0.1.2-4 - go.net library unbundled (see rhbz #1018476) * Sat Oct 12 2013 Peter Lemenkov - 0.1.2-3 - Prepare for packages unbundling - Verbose build * Sat Oct 12 2013 Peter Lemenkov - 0.1.2-2 - Fix typo in the etc.service file * Sat Oct 12 2013 Peter Lemenkov - 0.1.2-1 - Ver. 0.1.2 - Integrate with systemd * Mon Aug 26 2013 Luke Cypret - 0.1.1-1 - Initial creation