Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,4 @@ src/**/Makefile
stamp-h1
zabbix-*/
zabbix_agent_bench
.idea/
69 changes: 69 additions & 0 deletions libzbxpgsql.spec.rpkg
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
%define main_version 4.0
%define minor_version 12
%define module_dir src/modules

Name: {{{ git_dir_name }}}
Version: {{{ git_tag_last }}}
Release: {{{ git_commits_since_last_tag_add1 }}}%{?dist}
Summary: PostgreSQL monitoring module for Zabbix

Group: Applications/Internet
License: GPLv2
URL: https://github.com/cavaliercoder/libzbxpgsql
VCS: {{{ git_dir_vcs }}}

Source: {{{ git_dir_pack }}}

Requires: zabbix-agent >= 4.0.0, zabbix-agent < 4.1.0
# minimum libpq version based on latest patch of RHEL 5
Requires : postgresql-libs >= 8.1.23

BuildRequires: systemd, gcc, libtool, libconfig-devel, postgresql-devel
Requires(post): systemd
Requires(preun): systemd

%description
libzbxpgsql is a comprehensive PostgreSQL discovery and monitoring module for the Zabbix monitoring agent written in C.

%global debug_package %{nil}

%prep
{{{ git_dir_setup_macro }}}
curl -o /tmp/zbx.rpm https://repo.zabbix.com/zabbix/%{main_version}/rhel/%{?rhel}/SRPMS/zabbix-%{main_version}.%{minor_version}-1.el%{?rhel}.src.rpm
rpm -i /tmp/zbx.rpm
%setup -qTcn zabbix-%{main_version}.%{minor_version}
tar --strip-components=1 -xf %{_topdir}/SOURCES/zabbix-%{main_version}.%{minor_version}.tar.gz
echo 'LoadModule=%{name}.so' > %{_topdir}/SOURCES/%{name}.conf
cp -r %{_topdir}/BUILD/%{name}- %{_topdir}/BUILD/zabbix-%{main_version}.%{minor_version}/src/modules

%build
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need to run ./configure in the root of Zabbix sources to be safe and avoid issues like #145.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated

./configure
cd src/modules/%{name}-
./autogen.sh
%configure --with-zabbix=%{_topdir}/BUILD/zabbix-%{main_version}.%{minor_version}
make

%install
install --directory %{buildroot}%{_libdir}/zabbix/modules/
install --directory %{buildroot}/etc/zabbix/zabbix_agentd.d/

install -m 0755 %{_topdir}/BUILD/zabbix-%{main_version}.%{minor_version}/%{module_dir}/%{name}-/src/.libs/%{name}.so %{buildroot}%{_libdir}/zabbix/modules/
install -m 0644 %{_topdir}/BUILD/zabbix-%{main_version}.%{minor_version}/src/modules/%{name}-/conf/%{name}.conf %{buildroot}/etc/zabbix/
install -m 0644 %{_topdir}/SOURCES/%{name}.conf %{buildroot}/etc/zabbix/zabbix_agentd.d/

%clean
rm -rf %{buildroot}

%files
/%{_libdir}/zabbix/modules/
/etc/zabbix/%{name}.conf
/etc/zabbix/zabbix_agentd.d/%{name}.conf

%post
/usr/bin/systemctl try-restart zabbix-agent.service >/dev/null 2>&1 || :

%postun
/usr/bin/systemctl try-restart zabbix-agent.service >/dev/null 2>&1 || :

%changelog
{{{ git_changelog }}}
14 changes: 14 additions & 0 deletions rpkg.macros
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
function git_commits_no {
total_commits="$(git rev-list --all --count)"
echo -n "$total_commits"
}

function git_tag_last {
tag_last="$(git describe --abbrev=0 | tr -d v)"
echo -n "$tag_last"
}

function git_commits_since_last_tag_add1 {
commits_since_since_last_tag="$(expr $(git rev-list `git rev-list --tags --no-walk --max-count=1`..HEAD --count) \+ \1)"
echo -n $commits_since_since_last_tag
}