confluentinc / cp-ansible

Ansible playbooks for the Confluent Platform
Apache License 2.0
42 stars 405 forks source link

validate_hosts.yaml playbook failed to validate AlmaLinux 9 (a RHEL 9 compatible Linux distro) #1538

Closed marcojck closed 6 months ago

marcojck commented 9 months ago

Describe the issue

As stated in Confluent Platform 7.5 documentation, RHEL 9.x is a supported operating system. However, validate_hosts.yaml fails to validade AlmaLinux 9, a well known binary compatible RHEL Linux distro.

To Reproduce

Just run validate_hosts.yaml against any inventory containing hosts with AlmaLinux 9 installed.

Expected behaviour

No failed tasks for validate_hosts.yaml, since RHEL 9.x is a supported operating system for Confluent Platform 7.5.

Inventory File

Irrelevant for this issue.

Logs

ansible-playbook [core 2.11.12] 
  config file = <hidden-path>/ansible.cfg
  configured module search path = ['<hidden-path>/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = <hidden-path>/.local/lib/python3.10/site-packages/ansible
  ansible collection location = <hidden-path>/.ansible/collections
  executable location = <hidden-path>/.local/bin/ansible-playbook
  python version = 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0]
  jinja version = 3.0.3
  libyaml = True

...

PLAYBOOK: validate_hosts.yml ***************************************************
1 plays in <hidden-path>/.ansible/collections/ansible_collections/confluent/platform/playbooks/validate_hosts.yml

PLAY [Validate hosts] **********************************************************

TASK [Gathering Facts] *********************************************************
task path: <hidden-path>/.ansible/collections/ansible_collections/confluent/platform/playbooks/validate_hosts.yml:2

...

TASK [Include vars from role common] *******************************************
task path: <hidden-path>/.ansible/collections/ansible_collections/confluent/platform/playbooks/validate_hosts.yml:11
....
ok: [<hidden-host>] => {
    "ansible_facts": {
        "add_sid_repo": false,
        "confluent_archive_file_remote": true,
        "confluent_archive_file_source": "{{confluent_common_repository_baseurl}}/archive/{{confluent_repo_version}}/confluent{{'' if confluent_server_enabled else '-community'}}-{{confluent_package_version}}.tar.gz",
        "confluent_cli_archive_file_remote": true,
        "confluent_cli_archive_file_source": "{{confluent_cli_repository_baseurl}}/confluent-cli/archives/{{confluent_cli_version}}/{{confluent_cli_binary}}_{{(confluent_cli_version is version('3.0.0', '>=')) | ternary('', 'v')}}{{confluent_cli_version}}_{{ansible_system|lower}}_{{confluent_cli_goarch[ansible_architecture]}}.tar.gz",
        "confluent_cli_repository_baseurl": "https://s3-us-west-2.amazonaws.com/confluent.cloud",
        "confluent_clients_repository_baseurl": "https://packages.confluent.io",
        "confluent_common_repository_baseurl": "https://packages.confluent.io",
        "confluent_common_repository_debian_baseurl": "{{confluent_common_repository_baseurl}}/deb",
        "confluent_common_repository_debian_clients_key_url": "{{confluent_clients_repository_baseurl}}/clients/deb/archive.key",
        "confluent_common_repository_debian_clients_repository": "deb {{confluent_clients_repository_baseurl}}/clients/deb/ {{confluent_common_repository_debian_release_version}} main",
        "confluent_common_repository_debian_key_url": "{{confluent_common_repository_debian_baseurl}}/{{confluent_repo_version}}/archive.key",
        "confluent_common_repository_debian_repository": "deb [arch=amd64] {{confluent_common_repository_debian_baseurl}}/{{confluent_repo_version}} stable main",
        "confluent_common_repository_redhat_baseurl": "{{confluent_common_repository_baseurl}}/rpm",
        "confluent_common_repository_redhat_clients_baseurl": "{{confluent_clients_repository_baseurl}}/clients/rpm/centos/{{confluent_common_repository_redhat_release_version}}/x86_64",
        "confluent_common_repository_redhat_clients_enabled": 1,
        "confluent_common_repository_redhat_clients_gpgcheck": 1,
        "confluent_common_repository_redhat_clients_gpgkey": "{{confluent_clients_repository_baseurl}}/clients/rpm/archive.key",
        "confluent_common_repository_redhat_main_baseurl": "{{confluent_common_repository_redhat_baseurl}}/{{confluent_repo_version}}",
        "confluent_common_repository_redhat_main_enabled": 1,
        "confluent_common_repository_redhat_main_gpgcheck": 1,
        "confluent_common_repository_redhat_main_gpgkey": "{{confluent_common_repository_redhat_baseurl}}/{{confluent_repo_version}}/archive.key",
        "custom_apt_repo": false,
        "custom_apt_repo_filepath": "",
        "custom_java_path": "",
        "custom_yum_repofile": false,
        "custom_yum_repofile_filepath": "",
        "debian_java_package_name": "openjdk-17-jdk",
        "install_java": "{{ false if custom_java_path | length > 0 else true }}",
        "jmxexporter_jar_url": "https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/{{jmxexporter_version}}/jmx_prometheus_javaagent-{{jmxexporter_version}}.jar",
        "jmxexporter_version": "0.12.0",
        "jolokia_jar_url": "http://search.maven.org/remotecontent?filepath=org/jolokia/jolokia-jvm/{{jolokia_version}}/jolokia-jvm-{{jolokia_version}}-agent.jar",
        "jolokia_version": "1.6.2",
        "redhat_java_package_name": "java-17-openjdk",
        "repository_configuration": "{{'custom' if custom_apt_repo|bool or custom_yum_repofile else 'confluent'}}",
        "ubuntu_java_package_name": "openjdk-17-jdk",
        "ubuntu_java_repository": "ppa:openjdk-r/ppa"
    },
    "ansible_included_var_files": [
        "<hidden-path>/.ansible/collections/ansible_collections/confluent/platform/playbooks/../roles/common/defaults/main.yml"
    ],
    "changed": false
}

TASK [Confirm Rhel Version Supported] ******************************************
task path: <hidden-path>/.ansible/collections/ansible_collections/confluent/platform/playbooks/validate_hosts.yml:17

fatal: [<hidden-host>]: FAILED! => {
    "assertion": "ansible_distribution_major_version in redhat_supported_versions",
    "changed": false,
    "evaluated_to": false,
    "msg": "Rhel Version: 9 not in supported versions: ['7', '8']. To skip host validations, set validate_hosts to false."
}

PLAY RECAP *********************************************************************
<hidden-host>              : ok=2    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0   

Environment (please complete the following information):

Additional context

AlmaLinux version info:

$ cat /etc/os-release 
NAME="AlmaLinux"
VERSION="9.1 (Lime Lynx)"
ID="almalinux"
ID_LIKE="rhel centos fedora"
VERSION_ID="9.1"
PLATFORM_ID="platform:el9"
PRETTY_NAME="AlmaLinux 9.1 (Lime Lynx)"
ANSI_COLOR="0;34"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:almalinux:almalinux:9::baseos"
HOME_URL="https://almalinux.org/"
DOCUMENTATION_URL="https://wiki.almalinux.org/"
BUG_REPORT_URL="https://bugs.almalinux.org/"

ALMALINUX_MANTISBT_PROJECT="AlmaLinux-9"
ALMALINUX_MANTISBT_PROJECT_VERSION="9.1"
REDHAT_SUPPORT_PRODUCT="AlmaLinux"
REDHAT_SUPPORT_PRODUCT_VERSION="9.1"
mansisinha commented 6 months ago

closing since we've fixed this bug in our latest patch release