Add erlang package defenition to defaults

We do have a variable `rabbitmq_erlang_version_spec` which is applicable
only for Debian, while for EL the variable is only private.

This patch does some alignment on things:
* spec is replaced with just a version, as we don't need ternary logic
anymore.
* defenition of erlang version is unified across distros

Change-Id: Ic72212fa2d6df55f2f60d1d38c48310765442e51
This commit is contained in:
Dmitriy Rabotyagov
2024-10-08 16:02:47 +02:00
parent 107ecca6ca
commit d1fd62e445
5 changed files with 18 additions and 7 deletions

View File

@@ -87,7 +87,7 @@ rabbitmq_erlang_repo_url: "{{ _rabbitmq_erlang_repo_url | default(null) }}"
rabbitmq_erlang_repo: "{{ _rabbitmq_erlang_repo | default({}) }}" rabbitmq_erlang_repo: "{{ _rabbitmq_erlang_repo | default({}) }}"
# Set the elang version used on the deployment # Set the elang version used on the deployment
rabbitmq_erlang_version_spec: "{{ _rabbitmq_erlang_version_spec | default(null) }}" rabbitmq_erlang_package_version: "{{ _rabbitmq_erlang_package_version }}"
# Choose file, distro, external_repo for rabbitmq_install_method. # Choose file, distro, external_repo for rabbitmq_install_method.
rabbitmq_install_method: "{{ _rabbitmq_install_method }}" rabbitmq_install_method: "{{ _rabbitmq_install_method }}"

View File

@@ -0,0 +1,12 @@
---
features:
- |
Added a variable ``rabbitmq_erlang_package_version`` that can be used to
define an erlang version being used when ``external_repo`` is used as
package source.
deprecations:
- |
Variable ``rabbitmq_erlang_version_spec`` has been deprecated and does not
have any effect anymore. Please, use ``rabbitmq_erlang_package_version``
instead.

View File

@@ -31,7 +31,7 @@
- package: "*" - package: "*"
release: "cloudsmith/rabbitmq/rabbitmq-erlang" release: "cloudsmith/rabbitmq/rabbitmq-erlang"
- package: "erlang*" - package: "erlang*"
version: "{{ rabbitmq_erlang_version_spec }}" version: "1:{{ rabbitmq_erlang_package_version }}"
priority: 1000 priority: 1000
- package: "rabbitmq-server" - package: "rabbitmq-server"
version: "{{ rabbitmq_package_version }}" version: "{{ rabbitmq_package_version }}"

View File

@@ -15,6 +15,7 @@
_rabbitmq_install_method: external_repo _rabbitmq_install_method: external_repo
_rabbitmq_package_version: "3.13.7-1" _rabbitmq_package_version: "3.13.7-1"
_rabbitmq_erlang_package_version: "26.2.*-1"
_rabbitmq_repo_url: "https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-server/deb/{{ ansible_facts['distribution'] | lower }}" _rabbitmq_repo_url: "https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-server/deb/{{ ansible_facts['distribution'] | lower }}"
_rabbitmq_repo: _rabbitmq_repo:
@@ -36,8 +37,6 @@ _rabbitmq_erlang_repo:
architectures: "{{ rabbitmq_architecture_mapping.get(ansible_facts['architecture']) }}" architectures: "{{ rabbitmq_architecture_mapping.get(ansible_facts['architecture']) }}"
state: "{{ (rabbitmq_install_method == 'external_repo') | ternary('present', 'absent') }}" state: "{{ (rabbitmq_install_method == 'external_repo') | ternary('present', 'absent') }}"
_rabbitmq_erlang_version_spec: "{{ (rabbitmq_install_method == 'external_repo') | ternary('1:26.2.*-1', '1:24.*') }}"
rabbitmq_dependencies: rabbitmq_dependencies:
- erlang-base - erlang-base
- erlang-diameter - erlang-diameter

View File

@@ -19,8 +19,8 @@ _rabbitmq_package_version: "3.13.7-1"
# el9, the packages themselves still have an el8 dist tag for rabbitmq # el9, the packages themselves still have an el8 dist tag for rabbitmq
_rabbitmq_package_dist_tag: "el8" _rabbitmq_package_dist_tag: "el8"
_erlang_package_version: "26.2.*-1" _rabbitmq_erlang_package_version: "26.2.*-1"
_erlang_package_dist_tag: "el{{ ansible_facts['distribution_major_version'] }}" _rabbitmq_erlang_package_dist_tag: "el{{ ansible_facts['distribution_major_version'] }}"
# NOTE(noonedeadpunk): List of available packages can be searched here: https://cloudsmith.io/~rabbitmq/repos/ # NOTE(noonedeadpunk): List of available packages can be searched here: https://cloudsmith.io/~rabbitmq/repos/
_rabbitmq_repo_url: "https://yum1.rabbitmq.com/rabbitmq/el/{{ ansible_facts['distribution_major_version'] | lower }}/noarch" _rabbitmq_repo_url: "https://yum1.rabbitmq.com/rabbitmq/el/{{ ansible_facts['distribution_major_version'] | lower }}/noarch"
@@ -54,7 +54,7 @@ rabbitmq_distro_packages_mapping:
- rabbitmq-server - rabbitmq-server
external_repo: external_repo:
- openssl - openssl
- "erlang-{{ _erlang_package_version }}.{{ _erlang_package_dist_tag }}.{{ ansible_facts['architecture'] }}" - "erlang-{{ rabbitmq_erlang_package_version }}.{{ _rabbitmq_erlang_package_dist_tag }}.{{ ansible_facts['architecture'] }}"
- "rabbitmq-server-{{ rabbitmq_package_version }}.{{ _rabbitmq_package_dist_tag }}.noarch" - "rabbitmq-server-{{ rabbitmq_package_version }}.{{ _rabbitmq_package_dist_tag }}.noarch"
rabbitmq_distro_packages: "{{ rabbitmq_distro_packages_mapping[rabbitmq_install_method] }}" rabbitmq_distro_packages: "{{ rabbitmq_distro_packages_mapping[rabbitmq_install_method] }}"