3e5d8e2653
RDO is currently working on python3 support for the next version of CentOS/RHEL based systems. This package uses the distro_python3 flag that was added as part of I4028991bad92c0e8e21066cc4173c06ce5eba393 to use the python3 specific package names. This change only adds python3 package names for RHEL systems. Conflicts-With: https://review.openstack.org/#/c/636457/ Change-Id: Iad6b70b433a0dd1b0f8ae6790fd280594517661a Related-Blueprint: python3-support
94 lines
2.6 KiB
Django/Jinja
94 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',
|
|
'osops-tools-monitoring-oschecks',
|
|
'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',
|
|
'python-pymongo'
|
|
] %}
|
|
{% 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 %}
|