Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
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/
68 changes: 68 additions & 0 deletions libzbxpgsql.spec.rpkg
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
%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

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
}