opensearch: move to yum/apt repos

systemd-tmpfiles is needed otherwise opensearch
postinst on Debian/Ubuntu fails

Change-Id: I5aeb5796f8de7697a1c4a7404fe292ef9eb522ee
(cherry picked from commit 6bd7898a1d)
(cherry picked from commit aab455c5eb)
This commit is contained in:
Michal Nasiadka 2023-04-19 12:25:56 +02:00
parent d49cca5492
commit 23e0819d68
5 changed files with 121 additions and 52 deletions

View File

@ -64,6 +64,7 @@ Repo files not available for CentOS Stream 9:
'grafana.repo',
'influxdb.repo',
'mariadb.repo',
'opensearch.repo',
'proxysql.repo',
'rabbitmq_rabbitmq-server.repo',
'td.repo',
@ -192,6 +193,8 @@ RUN rm -f /etc/rpm/macros.image-language-conf \
'centos-opstools',
'centos-rabbitmq-38',
'epel',
'opensearch-2.x',
'opensearch-dashboards-2.x',
'influxdb',
] %}
@ -240,6 +243,7 @@ RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("cen
{# NOTE(hrw): CentOS Stream 9 has curl-minimal, Rocky Linux 9 has curl so we do not install any #}
{% set base_centos_packages = [
'ca-certificates',
'crypto-policies-scripts',
'dumb-init',
'findutils',
'hostname',
@ -355,6 +359,7 @@ COPY apt_preferences /etc/apt/preferences.d/kolla-custom
{'name': 'grafana', 'url': 'https://packages.grafana.com/gpg.key'},
{'name': 'influxdb', 'url': 'https://repos.influxdata.com/influxdata-archive_compat.key'},
{'name': 'mariadb', 'url': 'https://downloads.mariadb.com/MariaDB/mariadb-keyring-2019.gpg', 'type': 'gpg'},
{'name': 'opensearch', 'url': 'https://artifacts.opensearch.org/publickeys/opensearch.pgp'},
{'name': 'proxysql', 'url': 'https://repo.proxysql.com/ProxySQL/repo_pub_key'},
{'name': 'treasuredata', 'url': 'https://packages.treasuredata.com/GPG-KEY-td-agent'},
] %}

View File

@ -0,0 +1,19 @@
[opensearch-2.x]
name=OpenSearch 2.x
baseurl=https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/yum
enabled=0
repo_gpgcheck=1
gpgcheck=1
gpgkey=https://artifacts.opensearch.org/publickeys/opensearch.pgp
autorefresh=1
type=rpm-md
[opensearch-dashboards-2.x]
name=OpenSearch Dashboards 2.x
baseurl=https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/yum
enabled=0
repo_gpgcheck=1
gpgcheck=1
gpgkey=https://artifacts.opensearch.org/publickeys/opensearch.pgp
autorefresh=1
type=rpm-md

View File

@ -8,25 +8,21 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.configure_user(name='opensearch', shell='/bin/bash', homedir='/usr/share/opensearch') }}
{{ macros.enable_extra_repos(['opensearch-dashboards']) }}
{% block opensearch_version %}
{% set opensearch_dashboards_packages = ['opensearch-dashboards'] %}
{% if base_arch == 'x86_64' %}
{% set arch_os='x64' %}
{% elif base_arch == 'aarch64' %}
{% set arch_os='arm64' %}
{% endif %}
{% if base_distro_tag.startswith('stream9') or base_distro == 'rocky' %}
{# TODO: OpenSearch will move from SHA1 in 2.8 release, remove this once 2.8 is out #}
RUN update-crypto-policies --set DEFAULT:SHA1
{% endif %}
ARG opensearch_version=2.3.0
ARG opensearch_dashboards_url=https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/${opensearch_version}/opensearch-dashboards-${opensearch_version}-linux-{{ arch_os }}.tar.gz
{% endblock %}
ARG OPENSEARCH_DASHBOARDS_HOME=/usr/share/opensearch-dashboards
RUN mkdir -p $OPENSEARCH_DASHBOARDS_HOME && \
curl -o /tmp/opensearch-dashboards.tgz ${opensearch_dashboards_url} && \
tar -xzpf /tmp/opensearch-dashboards.tgz -C $OPENSEARCH_DASHBOARDS_HOME --strip-components=1 && \
rm /tmp/opensearch-dashboards.tgz
{# TODO: ugly hack to get past opensearch postinst, remove once #}
{# https://github.com/opensearch-project/opensearch-build/pull/3435 gets merged #}
{# and packages get rebuilt #}
RUN touch /usr/bin/systemd-tmpfiles && chmod a+rx /usr/bin/systemd-tmpfiles \
&& {{ macros.install_packages(opensearch_dashboards_packages | customizable("packages"), chain=True) }} \
&& rm -f /usr/bin/systemd-tmpfiles
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 755 /usr/local/bin/kolla_extend_start

View File

@ -8,25 +8,22 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.configure_user(name='opensearch', shell='/bin/bash', homedir='/usr/share/opensearch') }}
{{ macros.enable_extra_repos(['opensearch']) }}
{% block opensearch_version %}
{% set opensearch_packages = [
'opensearch'
] %}
{% if base_arch == 'x86_64' %}
{% set arch_os='x64' %}
{% elif base_arch == 'aarch64' %}
{% set arch_os='arm64' %}
{% endif %}
{% if base_distro_tag.startswith('stream9') or base_distro == 'rocky' %}
{# TODO: OpenSearch will move from SHA1 in 2.8 release, remove this when 2.8 is out #}
RUN update-crypto-policies --set DEFAULT:SHA1
{% endif %}
ARG opensearch_version=2.3.0
ARG opensearch_url=https://artifacts.opensearch.org/releases/bundle/opensearch/${opensearch_version}/opensearch-${opensearch_version}-linux-{{ arch_os }}.tar.gz
{% endblock %}
ARG OPENSEARCH_HOME=/usr/share/opensearch
RUN curl -o /tmp/opensearch.tgz ${opensearch_url} && \
tar -xzpf /tmp/opensearch.tgz -C $OPENSEARCH_HOME --strip-components=1 && \
rm /tmp/opensearch.tgz && \
mkdir -p $OPENSEARCH_HOME/data && chown -R opensearch:opensearch $OPENSEARCH_HOME/data
{# TODO: ugly hack to get past opensearch postinst, remove once #}
{# https://github.com/opensearch-project/opensearch-build/pull/3435 gets merged #}
{# and packages get rebuilt #}
RUN touch /usr/bin/systemd-tmpfiles && chmod a+rx /usr/bin/systemd-tmpfiles \
&& {{ macros.install_packages(opensearch_packages | customizable("packages"), chain=True) }}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 755 /usr/local/bin/kolla_extend_start

View File

@ -13,6 +13,8 @@ centos:
kibana: "elasticsearch-kibana-logstash-7.x"
logstash: "elasticsearch-kibana-logstash-7.x"
mariadb: "mariadb"
opensearch: "opensearch-2.x"
opensearch-dashboards: "opensearch-dashboards-2.x"
openvswitch: "centos-nfv-openvswitch"
opstools: "centos-opstools"
powertools: "powertools"
@ -33,6 +35,8 @@ centos-aarch64:
kibana: "elasticsearch-kibana-logstash-7.x"
logstash: "elasticsearch-kibana-logstash-7.x"
mariadb: "mariadb"
opensearch: "opensearch-2.x"
opensearch-dashboards: "opensearch-dashboards-2.x"
openvswitch: "centos-nfv-openvswitch"
opstools: "centos-opstools"
powertools: "powertools"
@ -50,6 +54,8 @@ centos9:
hacluster: "highavailability"
influxdb: "influxdb"
mariadb: "mariadb"
opensearch: "opensearch-2.x"
opensearch-dashboards: "opensearch-dashboards-2.x"
openvswitch: "centos-nfv-openvswitch"
opstools: "centos-opstools"
proxysql: "proxysql"
@ -66,6 +72,8 @@ centos9-aarch64:
hacluster: "highavailability"
influxdb: "influxdb"
mariadb: "mariadb"
opensearch: "opensearch-2.x"
opensearch-dashboards: "opensearch-dashboards-2.x"
openvswitch: "centos-nfv-openvswitch"
opstools: "centos-opstools"
proxysql: "proxysql"
@ -108,6 +116,21 @@ debian:
suite: "bullseye"
component: "main"
gpg_key: "mariadb.gpg"
opensearch:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
opensearch-dashboards:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/bullseye/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/debian"
suite: "bullseye"
@ -118,11 +141,6 @@ debian:
suite: "bullseye"
component: "contrib"
gpg_key: "treasuredata.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/bullseye/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
debian-aarch64:
elasticsearch:
@ -160,6 +178,21 @@ debian-aarch64:
suite: "bullseye"
component: "main"
gpg_key: "mariadb.gpg"
opensearch:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
opensearch-dashboards:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/bullseye/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/debian"
suite: "bullseye"
@ -170,11 +203,6 @@ debian-aarch64:
suite: "bullseye"
component: "contrib"
gpg_key: "treasuredata.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/bullseye/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
rocky:
ceph: "centos-ceph-pacific"
@ -189,6 +217,8 @@ rocky:
kibana: "elasticsearch-kibana-logstash-7.x"
logstash: "elasticsearch-kibana-logstash-7.x"
mariadb: "mariadb"
opensearch: "opensearch-2.x"
opensearch-dashboards: "opensearch-dashboards-2.x"
openvswitch: "centos-nfv-openvswitch"
opstools: "centos-opstools"
proxysql: "proxysql"
@ -208,6 +238,8 @@ rocky-aarch64:
kibana: "elasticsearch-kibana-logstash-7.x"
logstash: "elasticsearch-kibana-logstash-7.x"
mariadb: "mariadb"
opensearch: "opensearch-2.x"
opensearch-dashboards: "opensearch-dashboards-2.x"
openvswitch: "centos-nfv-openvswitch"
opstools: "centos-opstools"
proxysql: "proxysql"
@ -255,6 +287,21 @@ ubuntu:
suite: "focal"
component: "main"
gpg_key: "mariadb.gpg"
opensearch:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
opensearch-dashboards:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/focal/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu"
suite: "focal"
@ -265,11 +312,6 @@ ubuntu:
suite: "focal"
component: "contrib"
gpg_key: "treasuredata.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/focal/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
ubuntu-aarch64:
elasticsearch:
@ -307,6 +349,21 @@ ubuntu-aarch64:
suite: "focal"
component: "main"
gpg_key: "mariadb.gpg"
opensearch:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
opensearch-dashboards:
url: "https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.x/apt/"
suite: "stable"
component: "main"
gpg_key: "opensearch.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/focal/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"
rabbitmq:
url: "https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-server/deb/ubuntu"
suite: "focal"
@ -317,8 +374,3 @@ ubuntu-aarch64:
suite: "focal"
component: "contrib"
gpg_key: "treasuredata.asc"
proxysql:
url: "https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/focal/"
suite: "./"
component: ""
gpg_key: "proxysql.asc"