[cadvisor/f20] Move cadvisor.service and cadvisor config file from patch into repo Fix the build, thanks to Lokesh
Jan Chaloupka
jchaloup at fedoraproject.org
Thu Oct 9 18:26:51 UTC 2014
commit 1d0d583cfa33f77d51e2b799b3aad866da15fb68
Author: Jan Chaloupka <jchaloup at redhat.com>
Date: Thu Oct 9 16:55:56 2014 +0200
Move cadvisor.service and cadvisor config file from patch into repo
Fix the build, thanks to Lokesh
cadvisor | 46 ++++++++++++
cadvisor.service | 18 +++++
cadvisor.spec | 201 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 265 insertions(+), 0 deletions(-)
---
diff --git a/cadvisor b/cadvisor
new file mode 100644
index 0000000..8a2c793
--- /dev/null
+++ b/cadvisor
@@ -0,0 +1,46 @@
+# config options for cAdvisor
+#
+#
+
+# Docker endpoint to connect to
+# Default: unix:///var/run/docker.sock
+CADVISOR_DOCKER_ENDPOINT="unix:///var/run/docker.sock"
+
+# Port to listen on
+# Default: 8080
+# kubernetes expects it on port 4194
+CADVISOR_PORT="4194"
+
+# Samples
+# Number of samples to keep
+# Default: 1024
+CADVISOR_SAMPLES="1024"
+
+# Storage driver
+# Default: none/blank
+#
+# Available Options:
+# - [none]
+# - bigquery
+# - influxdb
+CADVISOR_STORAGE_DRIVER=""
+
+# Storage driver host
+# Default: localhost:8086"
+CADVISOR_STORAGE_DRIVER_HOST="localhost:8086"
+
+# Storage driver password
+# Default: root
+CADVISOR_STORAGE_DRIVER_PASSWORD="root"
+
+# Storage driver secure connection
+# Default: false
+CADVISOR_STORAGE_DRIVER_SECURE="false"
+
+# Storage driver user
+# Default: root
+CADVISOR_STORAGE_DRIVER_USER="root"
+
+# Log to stderr (and thus to journal)
+# Default: false
+CADVISOR_LOG_TO_STDERR="true"
diff --git a/cadvisor.service b/cadvisor.service
new file mode 100644
index 0000000..c465783
--- /dev/null
+++ b/cadvisor.service
@@ -0,0 +1,18 @@
+[Unit]
+Description=cAdvisor
+
+[Service]
+EnvironmentFile=/etc/sysconfig/cadvisor
+ExecStart=/usr/bin/cadvisor \
+ --docker=${CADVISOR_DOCKER_ENDPOINT} \
+ --port=${CADVISOR_PORT} \
+ --samples=${CADVISOR_SAMPLES} \
+ --storage_driver=${CADVISOR_STORAGE_DRIVER} \
+ --storage_driver_host=${CADVISOR_STORAGE_DRIVER_HOST} \
+ --storage_driver_password=${CADVISOR_STORAGE_DRIVER_PASSWORD} \
+ --storage_driver_secure=${CADVISOR_STORAGE_DRIVER_SECURE} \
+ --storage_driver_user=${CADVISOR_STORAGE_DRIVER_USER} \
+ --logtostderr=${CADVISOR_LOG_TO_STDERR}
+
+[Install]
+WantedBy=multi-user.target
diff --git a/cadvisor.spec b/cadvisor.spec
new file mode 100644
index 0000000..52ea30e
--- /dev/null
+++ b/cadvisor.spec
@@ -0,0 +1,201 @@
+%global provider github
+%global provider_tld com
+%global project google
+%global repo cadvisor
+%global commit 9d158c3d66e8e6d14cfeb1d73695ab18dbc744e8
+
+%global import_path %{provider}.%{provider_tld}/%{project}/%{repo}
+%global gopath %{_datadir}/gocode
+%global shortcommit %(c=%{commit}; echo ${c:0:7})
+%global debug_package %{nil}
+
+Name: %{repo}
+Version: 0.3.0
+Release: 0.4.git%{shortcommit}%{?dist}
+Summary: Analyzes resource usage and performance characteristics of running containers
+License: ASL 2.0
+URL: https://%{import_path}
+Source0: https://%{import_path}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz
+Source1: cadvisor
+Source2: cadvisor.service
+BuildRequires: docker-io-pkg-devel
+BuildRequires: systemd
+BuildRequires: glibc-static
+BuildRequires: golang >= 1.2.1-3
+BuildRequires: golang(github.com/docker/libcontainer)
+BuildRequires: golang(github.com/fsouza/go-dockerclient)
+BuildRequires: golang(github.com/coreos/go-systemd)
+BuildRequires: golang(github.com/godbus/dbus)
+BuildRequires: golang(github.com/kr/text)
+BuildRequires: golang(github.com/kr/pretty)
+BuildRequires: golang(github.com/influxdb/influxdb/client)
+BuildRequires: golang(github.com/stretchr/testify)
+BuildRequires: golang(github.com/stretchr/objx)
+BuildRequires: golang(github.com/golang/glog)
+Requires: docker-io
+ExclusiveArch: x86_64
+
+%description
+%{summary}
+
+cAdvisor (Container Advisor) provides container users an understanding of the
+resource usage and performance characteristics of their running containers.
+It is a running daemon that collects, aggregates, processes, and exports
+information about running containers. Specifically, for each container it keeps
+resource isolation parameters, historical resource usage, histograms of
+complete historical resource usage and network statistics. This data is
+exported by container and machine-wide.
+
+cAdvisor currently supports lmctfy containers as well as Docker containers
+(those that use the default libcontainer execdriver). Other container backends
+can also be added. cAdvisor's container abstraction is based on lmctfy's
+so containers are inherently nested hierarchically.
+
+%package devel
+Requires: golang
+Summary: Analyzes resource usage and performance characteristics of running containers
+Provides: golang(%{import_path}) = %{version}-%{release}
+Provides: golang(%{import_path}/advice) = %{version}-%{release}
+Provides: golang(%{import_path}/advice/interface) = %{version}-%{release}
+Provides: golang(%{import_path}/api) = %{version}-%{release}
+Provides: golang(%{import_path}/client) = %{version}-%{release}
+Provides: golang(%{import_path}/container) = %{version}-%{release}
+Provides: golang(%{import_path}/container/docker) = %{version}-%{release}
+Provides: golang(%{import_path}/container/libcontainer) = %{version}-%{release}
+Provides: golang(%{import_path}/container/raw) = %{version}-%{release}
+Provides: golang(%{import_path}/deploy) = %{version}-%{release}
+Provides: golang(%{import_path}/info) = %{version}-%{release}
+Provides: golang(%{import_path}/manager) = %{version}-%{release}
+Provides: golang(%{import_path}/pages) = %{version}-%{release}
+Provides: golang(%{import_path}/pages/static) = %{version}-%{release}
+Provides: golang(%{import_path}/sampling) = %{version}-%{release}
+Provides: golang(%{import_path}/storage) = %{version}-%{release}
+Provides: golang(%{import_path}/storage/cache) = %{version}-%{release}
+Provides: golang(%{import_path}/storage/influxdb) = %{version}-%{release}
+Provides: golang(%{import_path}/storage/memory) = %{version}-%{release}
+Provides: golang(%{import_path}/utils) = %{version}-%{release}
+BuildRequires: docker-io-pkg-devel
+BuildRequires: golang
+BuildRequires: golang(github.com/docker/libcontainer)
+BuildRequires: golang(github.com/fsouza/go-dockerclient)
+BuildRequires: golang(github.com/coreos/go-systemd)
+BuildRequires: golang(github.com/godbus/dbus)
+BuildRequires: golang(github.com/kr/text)
+BuildRequires: golang(github.com/kr/pretty)
+BuildRequires: golang(github.com/influxdb/influxdb/client)
+BuildRequires: golang(github.com/stretchr/testify)
+BuildRequires: golang(github.com/stretchr/objx)
+
+%description devel
+%{summary}
+
+cAdvisor (Container Advisor) provides container users an understanding of the
+resource usage and performance characteristics of their running containers.
+It is a running daemon that collects, aggregates, processes, and exports
+information about running containers. Specifically, for each container it keeps
+resource isolation parameters, historical resource usage, histograms of
+complete historical resource usage and network statistics. This data is
+exported by container and machine-wide.
+
+cAdvisor currently supports lmctfy containers as well as Docker containers
+(those that use the default libcontainer execdriver). Other container backends
+can also be added. cAdvisor's container abstraction is based on lmctfy's
+so containers are inherently nested hierarchically.
+
+%prep
+%setup -n %{name}-%{commit} -q
+
+%build
+mkdir _build
+
+pushd _build
+ mkdir -p src/github.com/google
+ ln -s $(dirs +1 -l) src/github.com/google/cadvisor
+popd
+export GOPATH=$(pwd)/_build:%{buildroot}%{gopath}:%{gopath}
+
+go build --ldflags '-extldflags "-static"' github.com/google/cadvisor
+
+%install
+# main package binary
+install -d -p %{buildroot}%{_bindir}
+install -p -m0755 cadvisor %{buildroot}%{_bindir}
+
+# install systemd/sysconfig
+install -d -m0755 %{buildroot}%{_sysconfdir}/sysconfig/
+install -p -m0660 %{SOURCE1} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
+install -d -m0755 %{buildroot}%{_unitdir}
+install -p -m0644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}.service
+
+# devel package golang libs
+install -d -p %{buildroot}/%{gopath}/src/%{import_path}/
+cp -pav *.go %{buildroot}/%{gopath}/src/%{import_path}/
+
+for d in advice api client container deploy info manager pages sampling storage \
+ utils
+do
+ cp -pav $d %{buildroot}/%{gopath}/src/%{import_path}/
+done
+
+%post
+%systemd_post cadvisor.service
+
+%preun
+%systemd_preun cadvisor.service
+
+%postun
+%systemd_postun
+
+%files
+%doc AUTHORS CHANGELOG.md CONTRIBUTING.md CONTRIBUTORS LICENSE README.md
+%{_bindir}/cadvisor
+%{_unitdir}/%{name}.service
+%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
+
+%files devel
+%doc AUTHORS CHANGELOG.md CONTRIBUTING.md CONTRIBUTORS LICENSE README.md
+%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
+%dir %{gopath}/src/%{import_path}
+%dir %{gopath}/src/%{import_path}/api
+%dir %{gopath}/src/%{import_path}/client
+%dir %{gopath}/src/%{import_path}/container
+%dir %{gopath}/src/%{import_path}/deploy
+%dir %{gopath}/src/%{import_path}/info
+%dir %{gopath}/src/%{import_path}/manager
+%dir %{gopath}/src/%{import_path}/pages
+%dir %{gopath}/src/%{import_path}/sampling
+%dir %{gopath}/src/%{import_path}/storage
+%dir %{gopath}/src/%{import_path}/utils
+%{gopath}/src/%{import_path}/*
+%{gopath}/src/%{import_path}/api/*
+%{gopath}/src/%{import_path}/client/*
+%{gopath}/src/%{import_path}/container/*
+%{gopath}/src/%{import_path}/deploy/*
+%{gopath}/src/%{import_path}/info/*
+%{gopath}/src/%{import_path}/manager/*
+%{gopath}/src/%{import_path}/pages/*
+%{gopath}/src/%{import_path}/sampling/*
+%{gopath}/src/%{import_path}/storage/*
+%{gopath}/src/%{import_path}/utils/*
+
+%changelog
+* Thu Oct 09 2014 jchaloup <jchaloup at redhat.com> - 0.3.0-0.4.git9d158c3
+- Move cadvisor.service and cadvisor config file from patch into repo
+- Fix the build, thanks to Lokesh
+
+* Fri Sep 19 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 0.3.0-0.3.git9d158c3
+- own parent directory of <gopath</src/<import_path>
+- preserve timestamps of copied files in -devel
+- use _unitdir macro for systemd install path
+
+* Fri Sep 12 2014 Eric Paris <eparis at redhat.com - 0.3.0-0.2.git9d158c3
+- Log to stderr (and thus journal) by default
+
+* Thu Sep 11 2014 Eric Paris <eparis at redhat.com - 0.3.0-0.1.git9d158c3
+- Bump to upstream 9d158c3d66e8e6d14cfeb1d73695ab18dbc744e8
+
+* Wed Aug 20 2014 Eric Paris <eparis at redhat.com - 0.2.0-2
+- Bump to upstream 17b0ec576bcbeb321c133e4378dee1e500c9850d
+
+* Thu Aug 07 2014 Adam Miller <maxamillion at fedoraproject.org> - 0.2.0-1
+- First package for Fedora
More information about the scm-commits
mailing list