aa59f0db6f
backport: Stein During the switch to Stein UCA, we did not switch all packages to python 3 for Debian/Ubuntu binary images. This change switches some more of those packages. Change-Id: I0bff21384d88ea678608392de2db1ba418c96665 Co-Authored-By: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
96 lines
2.6 KiB
Django/Jinja
96 lines
2.6 KiB
Django/Jinja
FROM {{ namespace }}/{{ image_prefix }}sensu-base:{{ tag }}
|
|
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
|
|
|
|
{% block sensu_client_header %}{% endblock %}
|
|
|
|
{% import "macros.j2" as macros with context %}
|
|
|
|
{% if base_package_type == 'rpm' %}
|
|
{% set sensu_client_packages = [
|
|
'ceph-common',
|
|
'cyrus-sasl-devel',
|
|
'docker-client',
|
|
'gcc-c++',
|
|
'make',
|
|
'mariadb',
|
|
'ntp',
|
|
'ruby-devel'
|
|
] %}
|
|
|
|
{% if distro_python_version.startswith('3') %}
|
|
{% set sensu_client_packages = sensu_client_packages + [
|
|
'python3-pymongo'
|
|
] %}
|
|
{% else %}
|
|
{% set sensu_client_packages = sensu_client_packages + [
|
|
'python-pymongo'
|
|
] %}
|
|
{% endif %}
|
|
{% elif base_package_type == 'deb' %}
|
|
{% set sensu_client_packages = [
|
|
'build-essential',
|
|
'ceph-common',
|
|
'inetutils-ping',
|
|
'libsasl2-dev',
|
|
'mysql-client',
|
|
'ntp',
|
|
'python3-cephfs',
|
|
'python3-pymongo',
|
|
'python3-rados',
|
|
'python3-rbd'
|
|
] %}
|
|
{% if base_distro in ['debian'] %}
|
|
{% set sensu_client_packages = sensu_client_packages + [
|
|
'docker-ce'
|
|
] %}
|
|
{% else %}
|
|
{% set sensu_client_packages = sensu_client_packages + [
|
|
'docker.io'
|
|
] %}
|
|
{% endif %}
|
|
{% else %}
|
|
RUN echo '{{ image_name }} not yet available for {{ base_distro }}' \
|
|
&& /bin/false
|
|
{% endif %}
|
|
|
|
{{ macros.install_packages(sensu_client_packages | customizable("packages")) }}
|
|
|
|
{% block sensu_clients_install %}
|
|
|
|
# Sensu plugins are all using semantic versioning.
|
|
# Let's cap them to the known major version that works with the ruby shipped on
|
|
# rhel/centos/oraclelinux (currently 2.0)
|
|
{% set sensu_plugins = [
|
|
'ceph:"~>1"',
|
|
'cpu-checks:"~>1"',
|
|
'disk-checks:"~>2"',
|
|
'dns:"~>1"',
|
|
'docker:"~>3"',
|
|
'elasticsearch:"~>1"',
|
|
'filesystem-checks:"~>1"',
|
|
'haproxy:"~>1"',
|
|
'http:"~>1"',
|
|
'io-checks:"~>1"',
|
|
'load-checks:"~>3"',
|
|
'memcached:"~>0"',
|
|
'memory-checks:"~>1"',
|
|
'mongodb:"~>0"',
|
|
'mysql:"~>2"',
|
|
'network-checks:"~>2"',
|
|
'ntp:"~>1"',
|
|
'openstack:"~>1"',
|
|
'process-checks:"~>2"',
|
|
'rabbitmq:"~>3"',
|
|
'redis:"~>2"',
|
|
'uptime-checks:"~>1"',
|
|
'vmstats:"~>1"'
|
|
] %}
|
|
|
|
# TODO(mandre) Use packaged sensu plugins from centos-opstools for binary distro
|
|
# http://cbs.centos.org/koji/search?match=glob&type=package&terms=*sensu*
|
|
RUN sensu-install --plugins {{ sensu_plugins | customizable('plugins') | join (',') }}
|
|
{% endblock %}
|
|
|
|
{% block sensu_client_footer %}{% endblock %}
|
|
{% block footer %}{% endblock %}
|