c4a8161
# https://bugzilla.redhat.com/show_bug.cgi?id=995136#c12
c4a8161
%global _dwz_low_mem_die_limit 0
9418ac2
%global provider        github
9418ac2
%global provider_tld    com
9418ac2
%global project         coreos
9418ac2
%global repo            flannel
9418ac2
%global import_path     %{provider}.%{provider_tld}/%{project}/%{repo}
e34804b
%global commit          a684f4d4620ce201e492f2f66c33ea22eb4f6d47
9418ac2
%global shortcommit     %(c=%{commit}; echo ${c:0:7})
9418ac2
c2deecc
%global devel_main      flannel-devel
c2deecc
9418ac2
Name:           flannel 
e34804b
Version:        0.5.1
e198a27
Release:        2%{?dist}
9418ac2
Summary:        Etcd address management agent for overlay networks
9418ac2
License:        ASL 2.0 
9418ac2
URL:            https://%{import_path}
547f12d
Source0:        https://%{import_path}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz
547f12d
#Source0:        https://%{import_path}/archive/v%{version}.tar.gz
Eric Paris 8d0e6c2
Source1:        flanneld.sysconf
Eric Paris 8d0e6c2
Source2:        flanneld.service
Eric Paris 3b954b3
Source3:        flannel-docker.conf
9418ac2
ExclusiveArch:  %{ix86} x86_64 %{arm}
9418ac2
9418ac2
BuildRequires:      golang >= 1.2.7
Eric Paris b6366f2
%if 0%{?fedora}
9418ac2
BuildRequires:      golang-cover
c2deecc
BuildRequires:      golang(code.google.com/p/goauth2/compute/serviceaccount)
c2deecc
BuildRequires:      golang(code.google.com/p/google-api-go-client/compute/v1)
c2deecc
BuildRequires:      golang(code.google.com/p/google-api-go-client/googleapi)
1e702c0
BuildRequires:      golang(github.com/coreos/go-etcd/etcd)
e34804b
BuildRequires:      golang(github.com/coreos/go-systemd/activation)
Eric Paris effe589
BuildRequires:      golang(github.com/coreos/go-systemd/daemon) >= 2-2
9418ac2
BuildRequires:      golang(github.com/golang/glog)
de2654b
BuildRequires:      golang(github.com/gorilla/mux)
de2654b
BuildRequires:      golang(github.com/mitchellh/goamz/aws)
de2654b
BuildRequires:      golang(github.com/mitchellh/goamz/ec2)
9418ac2
BuildRequires:      golang(github.com/vishvananda/netlink)
de2654b
BuildRequires:      golang(github.com/vishvananda/netlink/nl)
de2654b
BuildRequires:      golang(golang.org/x/net/context)
Eric Paris b6366f2
%endif
9418ac2
BuildRequires:      pkgconfig(systemd)
6fef40a
Requires:           systemd
6fef40a
Requires(post):     systemd
6fef40a
Requires(preun):    systemd
6fef40a
Requires(postun):   systemd
9418ac2
9418ac2
%description
9418ac2
Flannel is an etcd driven address management agent. Most commonly it is used to
9418ac2
manage the ip addresses of overlay networks between systems running containers
9418ac2
that need to communicate with one another.
9418ac2
Eric Paris b6366f2
%if 0%{?fedora}
9418ac2
%package devel
547f12d
Summary:  %{summary}
547f12d
BuildRequires: golang >= 1.2.7
547f12d
BuildRequires: golang-cover
c2deecc
BuildRequires: golang(code.google.com/p/goauth2/compute/serviceaccount)
c2deecc
BuildRequires: golang(code.google.com/p/google-api-go-client/compute/v1)
c2deecc
BuildRequires: golang(code.google.com/p/google-api-go-client/googleapi)
547f12d
BuildRequires: golang(github.com/coreos/go-etcd/etcd)
e34804b
BuildRequires: golang(github.com/coreos/go-systemd/activation)
547f12d
BuildRequires: golang(github.com/coreos/go-systemd/daemon)
547f12d
BuildRequires: golang(github.com/golang/glog)
de2654b
BuildRequires: golang(github.com/gorilla/mux)
547f12d
BuildRequires: golang(github.com/mitchellh/goamz/aws)
547f12d
BuildRequires: golang(github.com/mitchellh/goamz/ec2)
547f12d
BuildRequires: golang(github.com/vishvananda/netlink)
547f12d
BuildRequires: golang(github.com/vishvananda/netlink/nl)
547f12d
BuildRequires: golang(golang.org/x/net/context)
547f12d
Requires: golang-cover
c2deecc
Requires: golang(code.google.com/p/goauth2/compute/serviceaccount)
c2deecc
Requires: golang(code.google.com/p/google-api-go-client/compute/v1)
c2deecc
Requires: golang(code.google.com/p/google-api-go-client/googleapi)
547f12d
Requires: golang(github.com/coreos/go-etcd/etcd)
e34804b
Requires: golang(github.com/coreos/go-systemd/activation)
547f12d
Requires: golang(github.com/coreos/go-systemd/daemon)
547f12d
Requires: golang(github.com/golang/glog)
0a2ddff
Requires: golang(github.com/gorilla/mux)
547f12d
Requires: golang(github.com/mitchellh/goamz/aws)
547f12d
Requires: golang(github.com/mitchellh/goamz/ec2)
547f12d
Requires: golang(github.com/vishvananda/netlink)
547f12d
Requires: golang(github.com/vishvananda/netlink/nl)
547f12d
Requires: golang(golang.org/x/net/context)
547f12d
Provides: golang(%{import_path}/backend) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/backend/alloc) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/backend/awsvpc) = %{version}-%{release}
c2deecc
Provides: golang(%{import_path}/backend/gce) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/backend/hostgw) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/backend/udp) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/backend/vxlan) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/network) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/pkg/ip) = %{version}-%{release}
de2654b
Provides: golang(%{import_path}/remote) = %{version}-%{release}
547f12d
Provides: golang(%{import_path}/subnet) = %{version}-%{release}
9418ac2
9418ac2
%description devel
9418ac2
Flannel is an etcd driven address management agent. Most commonly it is used to
9418ac2
manage the ip addresses of overlay networks between systems running containers
9418ac2
that need to communicate with one another.
9418ac2
9418ac2
This package contains library source intended for
9418ac2
building other packages which use %{project}/%{repo}.
Eric Paris b6366f2
%endif
9418ac2
9418ac2
%prep
547f12d
%setup -q -n %{repo}-%{commit}
Eric Paris effe589
Eric Paris b6366f2
%if 0%{?fedora}
Eric Paris effe589
find . -name "*.go" \
Eric Paris effe589
       -print |\
Eric Paris effe589
              xargs sed -i 's/github.com\/coreos\/flannel\/Godeps\/_workspace\/src\///g'
9418ac2
9418ac2
%build
9418ac2
rm -rf Godeps
9418ac2
9418ac2
mkdir _build
9418ac2
pushd _build
9418ac2
  mkdir -p src/github.com/coreos
9418ac2
  ln -s $(dirs +1 -l) src/github.com/coreos/flannel
9418ac2
popd
9418ac2
9418ac2
mkdir bin
c4a8161
function gobuild { go build -a -ldflags "-B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n')" -v -x "$@"; }
c4a8161
GOPATH=${PWD}/_build:%{gopath} gobuild -o bin/flanneld .
Eric Paris b6366f2
%else
Eric Paris b6366f2
./build
Eric Paris b6366f2
%endif
9418ac2
9418ac2
%install
9418ac2
# package with binary
9418ac2
install -D -p -m 755 bin/flanneld %{buildroot}%{_bindir}/flanneld
Eric Paris 8d0e6c2
install -D -p -m 644 %{SOURCE1} %{buildroot}/etc/sysconfig/flanneld
Eric Paris 8d0e6c2
install -D -p -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/flanneld.service
Eric Paris 3b954b3
install -D -p -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/docker.service.d/flannel.conf
Eric Paris effe589
install -D -p -m 755 dist/mk-docker-opts.sh %{buildroot}%{_libexecdir}/flannel/mk-docker-opts.sh
Eric Paris b6366f2
%if 0%{?fedora}
9418ac2
# devel package
9418ac2
install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
9418ac2
cp -pav {backend,pkg,subnet} %{buildroot}/%{gopath}/src/%{import_path}/
Eric Paris b6366f2
%endif
9418ac2
9418ac2
%post
9418ac2
%systemd_post flanneld.service
9418ac2
9418ac2
%preun
9418ac2
# clean tempdir and workdir on removal or upgrade
9418ac2
%systemd_preun flanneld.service
9418ac2
9418ac2
%postun
9418ac2
%systemd_postun_with_restart flanneld.service
9418ac2
9418ac2
%files
9418ac2
%doc CONTRIBUTING.md  LICENSE MAINTAINERS README.md  DCO NOTICE
9418ac2
%{_bindir}/flanneld
9418ac2
%{_unitdir}/flanneld.service
Eric Paris 8d0e6c2
%{_unitdir}/docker.service.d/flannel.conf
Eric Paris 3b954b3
%{_libexecdir}/flannel/mk-docker-opts.sh
9418ac2
%config(noreplace) %{_sysconfdir}/sysconfig/flanneld
9418ac2
Eric Paris b6366f2
%if 0%{?fedora}
9418ac2
%files devel
9418ac2
%doc CONTRIBUTING.md  LICENSE MAINTAINERS README.md  DCO NOTICE
9418ac2
%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
9418ac2
%dir %{gopath}/src/%{import_path}/
9418ac2
%{gopath}/src/%{import_path}/
Eric Paris b6366f2
%endif
9418ac2
9418ac2
%changelog
e198a27
* Fri Jul 10 2015 jchaloup <jchaloup@redhat.com> - 0.5.1-2
e198a27
- Change flannel prefix from /coreos.com/network to /atomic.io/network
e198a27
e34804b
* Fri Jul 10 2015 jchaloup <jchaloup@redhat.com> - 0.5.1-1
e34804b
- Update to 0.5.1
e34804b
02d1cec
* Fri Jul 10 2015 jchaloup <jchaloup@redhat.com> - 0.5.0-3
02d1cec
- Add After=etcd.service to flanneld.service
02d1cec
0a2ddff
* Fri Jun 26 2015 jchaloup <jchaloup@redhat.com> - 0.5.0-2
0a2ddff
- Add missing Requires: golang(github.com/gorilla/mux) to devel subpackage
0a2ddff
c2deecc
* Fri Jun 26 2015 jchaloup <jchaloup@redhat.com> - 0.5.0-1
c2deecc
- Update to 0.5.0
c2deecc
4d51c50
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.1-3
4d51c50
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
4d51c50
de2654b
* Fri May 22 2015 jchaloup <jchaloup@redhat.com> - 0.4.1-2
de2654b
- Bump to upstream 9180d9a37e2ae6d7fceabea51c6416767c6b50f6
de2654b
  related: #1223445
de2654b
547f12d
* Wed May 20 2015 jchaloup <jchaloup@redhat.com> - 0.4.1-1
547f12d
- Bump to upstream 4ab27ddd3e87eb2daf152513c0b1dc22879393a8
547f12d
  resolves: #1223445
547f12d
Eric Paris 2345416
* Fri Apr 10 2015 Eric Paris <eparis@redhat.com> - 0.3.1-1
Eric Paris 2345416
- Bump to version 0.3.1
Eric Paris 2345416
Eric Paris effe589
* Tue Apr 7 2015 Eric Paris <eparis@redhat.com> - 0.3.0-1
Eric Paris effe589
- Bump to version 0.3.0
Eric Paris effe589
c4a8161
* Mon Mar 30 2015 jchaloup <jchaloup@redhat.com> - 0.2.0-7
c4a8161
- Add debug info
c4a8161
  related: #1165688
c4a8161
1e702c0
* Fri Feb 20 2015 jchaloup <jchaloup@redhat.com> - 0.2.0-6
1e702c0
- Update [Build]Requires for go-etcd package
1e702c0
Eric Paris 3b954b3
* Wed Jan 21 2015 Eric Paris <eparis@redhat.com> - 0.2.0-5
Eric Paris 3b954b3
- Add generator more like upstream wants to use, use ExecStartPost
Eric Paris 3b954b3
  (https://github.com/coreos/flannel/pull/85)
Eric Paris 3b954b3
Eric Paris 8d0e6c2
* Tue Jan 20 2015 Eric Paris <eparis@redhat.com> - 0.2.0-4
Eric Paris 8d0e6c2
- Add generator to turn flannel env vars into docker flags
Eric Paris 8d0e6c2
31ac48b
* Tue Jan 20 2015 Peter Lemenkov <lemenkov@gmail.com> - 0.2.0-3
31ac48b
- Change (Build)Requires accordning to the recent changes
31ac48b
  (http://pkgs.fedoraproject.org/cgit/golang-github-coreos-go-systemd.git/commit/?id=204f61c)
31ac48b
a4197d8
* Fri Jan 16 2015 Peter Lemenkov <lemenkov@gmail.com> - 0.2.0-2
a4197d8
- Change flannel service type to notify. See
a4197d8
  https://github.com/coreos/flannel/blob/v0.2.0/main.go#L213
a4197d8
6fef40a
* Tue Dec 23 2014 Lokesh Mandvekar <lsm5@fedoraproject.org> - 0.2.0-1
6fef40a
- update to upstream v0.2.0
6fef40a
- append FLANNEL_OPTIONS variable to unitfile command
6fef40a
- systemd-units merged into systemd for fedora18+
6fef40a
John W. Linville 2652cfe
* Tue Dec  2 2014 John W. Linville <linville@redhat.com> - 0.1.0-8.gita7b435a
John W. Linville 2652cfe
- Remove patches related to out-of-tree slice backend
John W. Linville 2652cfe
- Update to latest upstream
John W. Linville 2652cfe
9418ac2
* Thu Nov 20 2014 jchaloup <jchaloup@redhat.com> - 0.1.0-7.git071d778
9418ac2
- Removing deps on Godeps and adding deps on golang-github packages
9418ac2
- Removing wait-online service and changing Type of flannel.service from simple to notify
9418ac2
- Adding README and other doc files
9418ac2
- Adding spec file header with commit, import_path, ...
9418ac2
- Adding devel subpackage
9418ac2
- spec polished based on Lokesh' notes (3 lines below)
9418ac2
- modify summary in specfile as in bug description (capitalize if needed)
9418ac2
- might need to enforce NVR for coreos/go-systemd in deps
9418ac2
- pkgconfig(systemd) is preferable to systemd in BR (I think)
9418ac2
  resolves: #1165688
9418ac2
9418ac2
* Fri Nov 07 2014 - Neil Horman <nhoramn@tuxdriver.com> 
9418ac2
- Updating to latest upstream 
9418ac2
9418ac2
* Fri Nov 07 2014 - Neil Horman <nhoramn@tuxdriver.com> 
9418ac2
- Added wait-online service to sync with docker
9418ac2
9418ac2
* Thu Nov 06 2014 - Neil Horman <nhoramn@tuxdriver.com> 
9418ac2
- Fixed flanneld.service file
9418ac2
- Added linvilles slice type patch
9418ac2
9418ac2
* Tue Nov 04 2014 - Neil Horman <nhorman@tuxdriver.com> - 0.1.0-20141104gitdc530ce
9418ac2
- Initial Build
9418ac2