ansible-collections / community.general

Ansible Community General Collection
https://galaxy.ansible.com/ui/repo/published/community/general/
GNU General Public License v3.0
784 stars 1.45k forks source link

redhat_subscription module isn't idempotent? #1806

Open apitanga opened 3 years ago

apitanga commented 3 years ago

Summary

redhat_subscription module isn't idempotent

Issue Type

Bug Report

Component Name

redhat_subscription module

Ansible Version

ansible 2.9.17
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.6/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.6.8 (default, Dec  5 2019, 15:45:45) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]

Configuration

[root@miami ~]# ansible-config dump --only-changed
[root@miami ~]#

OS / Environment

[root@miami ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux release 8.2 (Ootpa)

Steps To Reproduce

  1. subscription-manager register
  2. ansible-playbook -l localhost example-subscription-playbook.yml
    ---
    - hosts: localhost
    tasks:
    - name: subscribe and tag
    community.general.redhat_subscription:
      state: present
      username: XXXXX
      password: XXXXX
      auto_attach: false
      syspurpose:
        usage: "Production"
        role: "Red Hat Enterprise Server"
        service_level_agreement: "Self-Service"
        sync: true

Expected Results

Playbook runs without error, reporting "ok" upon the system already being registered.

Actual Results

Error:

PLAY [localhost] ******************************************************************************************************

TASK [Gathering Facts] ************************************************************************************************
ok: [localhost]

TASK [subscribe and tag] **********************************************************************************************
fatal: [localhost]: FAILED! => {"changed": false, "cmd": "/usr/sbin/subscription-manager register --username '' --password '********'", "msg": "This system is already registered. Use --force to override", "rc": 64, "stderr": "This system is already registered. Use --force to override\n", "stderr_lines": ["This system is already registered. Use --force to override"], "stdout": "", "stdout_lines": []}

PLAY RECAP ************************************************************************************************************
localhost                  : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0 
ansibullbot commented 3 years ago

Files identified in the description:

If these files are inaccurate, please update the component name section of the description or use the !component bot command.

click here for bot help

ansibullbot commented 3 years ago

cc @alikins @barnabycourt @kahowell click here for bot help

apitanga commented 3 years ago

force_register defaults to false but that still doesn't make it idempotent

apitanga commented 3 years ago

Wasn't able to reproduce it in RHEL8.3

ygalblum commented 1 year ago

Reproduced today on RHEL 8.6

ansibullbot commented 1 year ago

Files identified in the description:

If these files are incorrect, please update the component name section of the description or use the !component bot command.

click here for bot help

eightnoneone commented 1 year ago

Not sure if this is relevant, but while migrating from ansible 2.7 to 2.9.27, I've been struggling with similar issues. A re-run of redhat_subscription that previously passed was now failing with rc = 64 and This system is already registered. Even when I tried an until that allowed for those conditions, it is always failing for hosts that were already properly registered.

Warning: I'm only a Python tourist.

Looking at the code, I found it odd that the is_registered function runs the identity command with check_rc=False yet is then testing results for rc. I've not looked further, but if check_rc=False, is the rc value going to be valid?

    @property
    def is_registered(self):
        '''
            Determine whether the current system
            Returns:
              * Boolean - whether the current system is currently registered to
                          RHSM.
        '''

        args = [SUBMAN_CMD, 'identity']
        rc, stdout, stderr = self.module.run_command(args, check_rc=False)
        if rc == 0:
            return True
        else:
            return False

As a simple try, I changed check_rc=True and the module is now returning.

ok: [x.x.x.x] => changed=false 
  attempts: 1
  msg: System already registered.
felixfontein commented 1 year ago

check_rc=False means that self.module.run_command() returns every return code, instead of failing the module when rc != 0. So when check_rc=False, the caller has to check the value of rc itself, which it is doing here.

felixfontein commented 1 year ago

https://github.com/ansible/ansible/blob/devel/lib/ansible/module_utils/basic.py#L2100

eightnoneone commented 1 year ago

@felixfontein Thanks for the very clear explanation. TIL some more Python. A good day.

Since subscription-manager is returning rc=64 on what should be an "OK" state, should the if rc == 0 also include 64? I'm wrong there. The module is reporting an RC=64. But running identity on the host is an rc = 0. I remain confused.

I went looking for what all the possible return codes are for subscription-manager. Only thing I could find that looked authoritative was paywalled.

ptoscano commented 1 year ago

!component redhat_subscription

ptoscano commented 1 year ago

Hello,

sorry for the late answer on this; I'm one of the current developers of subscription-manager.

In case you are still able to reproduce this, can you please post:

From what I see, there used to be a problem related to pool IDs; hence, knowing the exact parameters used and with which community.general you are using is important to check whether you all are reporting the same issue or different ones.

Thanks!

ptoscano commented 1 year ago

@eightnoneone:

The module is reporting an RC=64. But running identity on the host is an rc = 0. I remain confused.

subscription-manager identity exits with 0 if the system is registered (printing the details), and exits with 1 if the system is not registered. This explains why the module does not fail automatically when the exit code of subscription-manager identity is different than 0.

I went looking for what all the possible return codes are for subscription-manager. Only thing I could find that looked authoritative was paywalled.

Ouch, that article is very old, and it is not exactly what I'd call "official reference". Actually the documentation of subscription-manager does not define the exit codes on failures, with the exception of the identity command mentioned above.

As I said in my previous comment: please post the version of community.general + YAML used in case of failures, so it is possible to check what happened.

jmighion commented 1 year ago

In my user's .ansible/collections:

community.general        6.2.0

Ansible version:

$ ansible --version
ansible [core 2.13.7]
  config file = /Users/jmighion/.ansible.cfg
  configured module search path = ['/Users/jmighion/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/jmighion/.pyenv/versions/3.10.0/envs/3.10.0_old_ansible/lib/python3.10/site-packages/ansible
  ansible collection location = /Users/jmighion/.ansible/collections:/usr/share/ansible/collections
  executable location = /Users/jmighion/.pyenv/versions/3.10.0_old_ansible/bin/ansible
  python version = 3.10.0 (default, Dec  6 2021, 14:41:16) [Clang 12.0.0 (clang-1200.0.32.2)]
  jinja version = 3.1.2
  libyaml = True

Task:

- name: Register systems with Red Hat for updates
  community.general.redhat_subscription:
    username: "{{ rhsm_username }}"
    password: "{{ rhsm_password }}"
    pool_ids:
      - "blah"
      - "blah"
    auto_attach: true
  become: true

Output:

TASK [Register systems with Red Hat for updates] ****************************************************************************
changed: [20.232.96.31] => changed=true
  subscribed_pool_ids:
  - blah
  - blah
  unsubscribed_serials: []
ptoscano commented 1 year ago

@jmighion as I mentioned in a previous comment of mine:

From what I see, there used to be a problem related to pool IDs; hence, knowing the exact parameters used and with which community.general you are using is important to check whether you all are reporting the same issue or different ones.

Can you please specify the actual pool IDs used? Also, can you please run subscription-manager list --consumed --available as task before the redhat_subscription task, and paste the output?

Thanks!

jmighion commented 1 year ago

Ah, I wasn't sure if those ids were sensitive info. I retried with the following verisons:

$ ansible --version
ansible [core 2.14.3]
  config file = /Users/jmighion/.ansible.cfg
  configured module search path = ['/Users/jmighion/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /Users/jmighion/.pyenv/versions/3.10.0/envs/3.10.0_dev/lib/python3.10/site-packages/ansible
  ansible collection location = /Users/jmighion/.ansible/collections:/usr/share/ansible/collections
  executable location = /Users/jmighion/.pyenv/versions/3.10.0_dev/bin/ansible
  python version = 3.10.0 (default, Dec  6 2021, 14:41:16) [Clang 12.0.0 (clang-1200.0.32.2)] (/Users/jmighion/.pyenv/versions/3.10.0/envs/3.10.0_dev/bin/python3.10)
  jinja version = 3.1.2
  libyaml = True
$ ansible-galaxy collection list
...
Collection                    Version
----------------------------- -------
...
community.general             6.4.0
- name: Test
  ansible.builtin.shell:
    cmd: subscription-manager list --consumed --available

- name: Register systems with Red Hat for updates
  community.general.redhat_subscription:
    username: "{{ rhsm_username }}"
    password: "{{ rhsm_password }}"
    pool_ids:
      - "8a82c68d80862c730180ba1a58ed266e"
      - "8a82c68d80de32fc0180f659214941c0"
    auto_attach: true
  become: true

On one test host, that same redhat_subscription task is idempotent. On another, it isn't. Both are on RHEL 8.7. The difference looks to be that the one that is not working right does not have any consumed whereas the "good" one shows the pool ids as consumed. Using the same credentials on both hosts. Not sure why auto_attach: true wouldn't auto-consume available subscriptions on one host.

Output from the above with -vvv

TASK [Test] *****************************************************************************************************************

...output omitted...

changed: [host1] => changed=true
  cmd: subscription-manager list --consumed --available
  delta: '0:00:04.832404'
  end: '2023-03-21 18:55:27.848428'
  invocation:
    module_args:
      _raw_params: subscription-manager list --consumed --available
      _uses_shell: true
      argv: null
      chdir: null
      creates: null
      executable: null
      removes: null
      stdin: null
      stdin_add_newline: true
      strip_empty_ends: true
  msg: ''
  rc: 0
  start: '2023-03-21 18:55:23.016024'
  stderr: ''
  stderr_lines: <omitted>
  stdout: |-
    +-------------------------------------------+
        Available Subscriptions
    +-------------------------------------------+
    Subscription Name:   Red Hat Ansible Automation Platform Infrastructure Subscription
    Provides:            Red Hat Beta
                         Red Hat Software Collections Beta (for RHEL Server)
                         Red Hat Developer Toolset (for RHEL Server)
                         Red Hat Software Collections (for RHEL Server)
                         Red Hat Enterprise Linux for x86_64
                         Red Hat CodeReady Linux Builder for x86_64
                         Oracle Java (for RHEL Server)
                         Red Hat Developer Tools (for RHEL Server)
                         dotNET on RHEL Beta (for RHEL Server)
                         Red Hat Developer Tools Beta (for RHEL Server)
                         Red Hat Enterprise Linux Server
                         dotNET on RHEL (for RHEL Server)
    SKU:                 MCT4022
    Contract:
    Pool ID:             8a82c49480de32bb0180f659b60c3e24
    Provides Management: No
    Available:           10
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Premium
    Usage:
    Add-ons:
    Subscription Type:   Stackable
    Starts:              05/24/2022
    Ends:                05/12/2027
    Entitlement Type:    Physical

    Subscription Name:   Employee SKU
    Provides:            Red Hat Enterprise Linux Load Balancer (for RHEL Server) - AUS
                         Red Hat Satellite Capsule Beta
                         Red Hat Enterprise Linux for Power, big endian - Extended Update Support
                         Red Hat Enterprise Linux High Performance Networking (for RHEL for IBM POWER)
                         Red Hat OpenShift Enterprise JBoss EAP add-on Beta
                         Red Hat Ansible Automation Platform
                         Red Hat S-JIS Support (for RHEL Server)
                         Red Hat Virtualization for IBM Power LE
                         Red Hat Enterprise Linux for SAP Applications for Power BE - Extended Update Support
                         dotNET on RHEL (for RHEL Server)
                         Red Hat Enterprise Linux FDIO (RHEL 7 Server)
                         Red Hat Software Collections (for RHEL Server for IBM Power)
                         Red Hat 3scale API Management Platform
                         Red Hat Enterprise Linux 6 Server HTB
                         Red Hat CodeReady Linux Builder for ARM 64
                         Red Hat Software Collections (for RHEL Server for System Z)
                         Red Hat Enterprise Linux Atomic Host Beta
                         Red Hat Enterprise Linux for Real Time for NFV for x86_64 - 4 years of updates
                         Red Hat Enterprise Linux Atomic Host HTB
                         Red Hat OpenShift Container Platform
                         Red Hat Enterprise Linux FDIO Early Access (RHEL 7 Server)
                         Red Hat Enterprise Linux High Availability for x86_64 - Telecommunications Update Service
                         Red Hat OpenShift Enterprise Application Node
                         Red Hat Enterprise Linux Resilient Storage for IBM z Systems - Extended Update Support
                         Red Hat OpenStack
                         Red Hat Enterprise Linux Advanced Virtualization (for RHEL Server for IBM System Z) EUS
                         OpenJDK Java (for Middleware)
                         Red Hat Enterprise Linux for SAP Solutions for x86_64 - Extended Update Support
                         Red Hat Enterprise Linux for SAP Applications for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux High Availability (for IBM z Systems) - Extended Update Support
                         Red Hat Enterprise Linux High Availability for x86_64 - Extended Update Support
                         MRG Grid
                         Red Hat Developer Toolset (for RHEL Server)
                         Red Hat Enterprise Linux High Performance Networking (for RHEL for IBM POWER) - Extended Update Support
                         Red Hat Enterprise Linux Server - Extended Life Cycle Support
                         Red Hat Enterprise Linux for SAP Solutions for x86_64
                         Red Hat Ceph Storage OSD
                         Oracle Java (for Middleware)
                         Red Hat Enterprise Linux for SAP Applications for Power LE - Update Services for SAP Solutions
                         Red Hat Enterprise Linux Scalable File System (for RHEL Workstation)
                         Red Hat Enterprise Linux Resilient Storage High Touch Beta
                         Red Hat Enterprise Linux High Availability for IBM z Systems
                         Red Hat Software Collections (for RHEL Server)
                         Red Hat Ansible Engine
                         MRG Realtime
                         Red Hat Enterprise Linux EUS Compute Node High Performance Networking
                         Red Hat Developer Toolset (for RHEL for IBM POWER)
                         Red Hat Enterprise Linux for SAP Applications for Power BE
                         Red Hat Software Collections (for RHEL Server for ARM 64)
                         Red Hat Software Collections Beta (for RHEL Server)
                         Red Hat Developer Tools (for RHEL Workstation)
                         Red Hat Certificate System Beta
                         Red Hat Enterprise Linux for IBM z Systems - Extended Update Support
                         Oracle Java (for RHEL Client)
                         Red Hat OpenShift Enterprise JBoss EAP add-on
                         Red Hat Enterprise Linux for SAP Applications for x86_64 - Extended Update Support
                         dotNET on RHEL (for RHEL Workstation)
                         Red Hat Open vSwitch Supplemental Beta
                         Red Hat Enterprise Linux for IBM z Systems
                         JBoss Enterprise Web Server
                         Red Hat OpenShift Application Runtimes Beta
                         Red Hat OpenShift GitOps for IBM Z and LinuxONE
                         Red Hat Open vSwitch for NVP / NSX Supplemental
                         Red Hat Mobile Application Platform
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server)
                         Red Hat Enterprise Linux for Power, little endian High Touch Beta
                         Red Hat Enterprise Linux Fast Datapath Beta for Power, little endian
                         Red Hat Developer Tools (for RHEL Server for IBM Power)
                         Oracle Java (for RHEL Compute Node)
                         Red Hat Enterprise Linux Fast Datapath (for IBM z Systems)
                         Red Hat Satellite 5 Managed DB Beta
                         Red Hat Enterprise Linux for Power, little endian Beta
                         Red Hat Developer Tools Beta (for RHEL Server for IBM Power)
                         Red Hat Enterprise Linux Workstation
                         Red Hat Virtualization
                         Red Hat Developer Tools (for RHEL Compute Node)
                         Red Hat Virtualization for IBM Power LE - Extended Update Support
                         Red Hat Container Native Virtualization
                         Red Hat Openshift Serverless
                         Red Hat Enterprise Linux EUS Compute Node
                         Red Hat Enterprise Linux for x86_64
                         Red Hat Developer Tools (for RHEL Server for ARM)
                         Red Hat Software Collections Beta (for RHEL Server for IBM Power LE)
                         Red Hat Gluster Storage Nagios Server
                         Red Hat Enterprise Linux for Real Time for NFV
                         Red Hat OpenStack Certification Test Suite
                         Red Hat CoreOS
                         Red Hat NooBaa
                         dotNET on RHEL Beta (for RHEL Workstation)
                         Red Hat CodeReady Linux Builder for x86_64
                         Red Hat OpenShift Enterprise Infrastructure Beta
                         Red Hat CodeReady Linux Builder for x86_64 - Extended Update Support
                         Red Hat Software Test Suite 5 (for RHEL Server)
                         Red Hat Enterprise Linux 7 Load Balancer High Touch Beta
                         Red Hat JBoss AMQ Clients
                         Red Hat OpenShift GitOps for IBM Power, little endian
                         Red Hat OpenStack Beta Advanced
                         Red Hat Software Collections (for RHEL Server for ARM)
                         Red Hat Software Collections Beta (for RHEL Server for IBM Power 9)
                         Red Hat Gluster Storage Web Administration (for RHEL Server)
                         Red Hat Enterprise Linux 7 Release Candidate
                         Red Hat Single Sign-On
                         Red Hat Satellite
                         Red Hat OpenShift Container Platform for Power
                         Red Hat Storage
                         Red Hat Developer Tools Beta (for RHEL Server for ARM)
                         Red Hat Enterprise Linux High Availability (for IBM Power LE) - Extended Update Support
                         Red Hat Enterprise Linux for Real Time for x86_64 - 4 years of updates
                         Red Hat Enterprise Linux Load Balancer (for RHEL Server)
                         Red Hat JBoss Middleware
                         Red Hat Ceph Storage Beta for x86_64
                         Red Hat Enterprise Linux Server - Extended Life Cycle Support (for IBM z Systems)
                         Red Hat CodeReady Workspaces for OpenShift
                         Red Hat Enterprise Linux Resilient Storage (for RHEL Server) - AUS
                         Red Hat Enterprise Linux Desktop
                         Red Hat Enterprise Linux for x86_64 High Touch Beta
                         Red Hat Developer Toolset (for RHEL Server EUS)
                         Red Hat AMQ Interconnect
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Server)
                         Red Hat CodeReady Linux Builder for Power, little endian
                         Red Hat Hardware Certification Test Suite
                         Red Hat Enterprise Linux for Power, little endian - Extended Update Support
                         Red Hat Enterprise Linux Advanced Virtualization Beta (for RHEL Server for IBM Power LE)
                         Red Hat Enterprise Linux for SAP Applications for System Z - Extended Update Support
                         Red Hat Software Collections Beta (for RHEL Client)
                         Red Hat Storage Software Appliance
                         Kernel Derivative Works for HPC for Power Systems
                         Oracle Java (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux for Power, big endian
                         Red Hat S-JIS Support (for RHEL Server) - Extended Update Support
                         JBoss Middleware Manager 7.0 Tech Preview
                         Red Hat Enterprise Linux Fast Datapath Beta for x86_64
                         Red Hat OpenShift Pipelines for IBM Z and LinuxONE
                         Red Hat Satellite Proxy
                         Red Hat Enterprise Linux for IBM z Systems Beta
                         Red Hat OpenShift Pipelines
                         Red Hat Software Collections Beta (for RHEL Workstation)
                         Red Hat Enterprise Linux High Availability for Power, little endian
                         Red Hat Software Collections (for RHEL Client)
                         Red Hat OpenShift Enterprise JBoss A-MQ add-on
                         Red Hat OpenShift Container Platform for IBM Z and LinuxONE
                         Red Hat Ceph Storage
                         Red Hat Enterprise Linux for Power 9
                         Red Hat Developer Toolset (for RHEL Client)
                         Red Hat Developer Tools Beta (for RHEL Server for System Z)
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux Server for ARM
                         Red Hat OpenShift Enterprise Infrastructure
                         Red Hat OpenStack 7 Extended Life Cycle Support
                         Red Hat Satellite 5 Managed DB
                         JBoss Enterprise Application Platform
                         Red Hat Enterprise Linux 7 Addons High Touch Beta
                         Red Hat Software Collections (for RHEL Workstation)
                         Red Hat Enterprise Linux EUS Compute Node Scalable File System
                         Red Hat Developer Tools Beta (for RHEL Server for IBM Power LE)
                         Red Hat OpenShift Container Platform Client Tools for Power
                         Kernel Derivative Works for Bluegene/Q
                         Red Hat Software Collections (for RHEL Server for IBM Power 9)
                         Red Hat Enterprise Linux Fast Datapath
                         Red Hat Enterprise Linux for SAP Applications for System Z
                         Red Hat Enterprise Linux 6 Workstation HTB
                         Red Hat Enterprise Linux Fast Datapath Beta (for IBM z Systems)
                         Red Hat Enterprise Linux 7 for IBM z Systems Release Candidate
                         Red Hat Enterprise Linux Server
                         Red Hat Enterprise Linux 7 Desktop High Touch Beta
                         Red Hat Enterprise Linux 7 for HPC Compute Node High Touch Beta
                         Red Hat Software Collections Beta (for RHEL Server for IBM Power)
                         Red Hat Enterprise MRG Messaging 3 for RHEL 7
                         OpenShift Developer Tools and Services
                         Red Hat Container Images
                         Red Hat Developer Tools (for RHEL Server for IBM Power 9)
                         Red Hat Virtualization Host
                         Red Hat Virtualization - Extended Update Support
                         Red Hat CoreOS Beta
                         Red Hat Enterprise Virtualization for Power, little endian
                         Red Hat CloudForms Beta
                         Red Hat Enterprise Linux Advanced Virtualization (for RHEL Server for IBM System Z)
                         Red Hat Enterprise Linux for SAP Solutions for Power LE - Update Services for SAP Solutions
                         Red Hat Enterprise Linux Atomic Host
                         Red Hat Enterprise Linux for IBM System z (Structure A)
                         Red Hat OpenShift Enterprise Application Node Beta
                         Red Hat OpenStack - Extended Life Cycle Support
                         Red Hat Enterprise MRG Messaging
                         Red Hat EUCJP Support (for RHEL Server)
                         Red Hat Advanced Cluster Management for Kubernetes
                         Red Hat Ceph Storage Calamari
                         Red Hat Enterprise Linux Resilient Storage for Power, little endian
                         Red Hat CloudForms
                         Red Hat OpenShift distributed tracing
                         Red Hat OpenStack Beta for IBM Power LE
                         Red Hat Enterprise Linux Advanced Virtualization
                         Red Hat OpenStack Beta Certification Test Suite
                         Red Hat Certification (for RHEL Server)
                         Red Hat Enterprise Linux for IBM z Systems High Touch Beta
                         Red Hat Enterprise Linux Server - AUS
                         Red Hat Enterprise Linux for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux High Availability for ARM 64
                         Red Hat CodeReady Linux Builder for Power, little endian - Extended Update Support
                         Red Hat Developer Tools Beta (for RHEL Server)
                         Red Hat Enterprise Linux for ARM 64
                         Cinderlib
                         Red Hat Container Images HTB
                         JBoss Enterprise Application Platform - ELS
                         Red Hat Enterprise Linux Resilient Storage for x86_64 - 4 years of updates
                         Red Hat Developer Tools (for RHEL Server for IBM Power LE)
                         Red Hat Directory Server
                         Oracle Java (for RHEL Workstation)
                         Red Hat EUCJP Support (for RHEL Server) - Extended Update Support
                         JBoss Enterprise Web Platform
                         Red Hat Enterprise Linux Server for ARM Beta
                         Red Hat Enterprise Linux Fast Datapath (for RHEL Server for IBM Power LE)
                         Red Hat Enterprise Linux Resilient Storage for IBM Power LE - Extended Update Support
                         Oracle Java (for RHEL Compute Node) - Extended Update Support
                         Red Hat Enterprise Linux Advanced Virtualization (for RHEL Server for IBM Power LE)
                         Red Hat Enterprise Linux High Availability (for RHEL Server) - AUS
                         Red Hat Enterprise Linux for x86_64 - Extended Update Support
                         dotNET on RHEL (for RHEL Compute Node)
                         Red Hat Enterprise Linux High Availability for Power LE - Update Services for SAP Solutions
                         Red Hat Storage Console
                         Red Hat Gluster Storage Server for On-premise
                         Red Hat Beta
                         Red Hat Container Images for IBM Power LE
                         Red Hat Enterprise Linux KVM
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server) - AUS
                         Red Hat Developer Tools (for RHEL Server for System Z)
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Compute Node)
                         Oracle Java (for RHEL Server)
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Server) - Extended Update Support
                         Red Hat Storage Console Node
                         Red Hat Ceph Storage Beta for Power, little endian
                         Red Hat Enterprise Linux Advanced Virtualization Beta
                         Red Hat Virtualization Host - Extended Update Support
                         Red Hat Developer Tools Beta (for RHEL Workstation)
                         Red Hat Enterprise Linux for Scientific Computing
                         Red Hat Enterprise Linux Resilient Storage for IBM z Systems
                         Red Hat OpenStack for IBM Power
                         Red Hat Enterprise Linux Server - TUS
                         Red Hat Certificate System - Extended Life Cycle Support
                         dotNET on RHEL Beta (for RHEL Compute Node)
                         Red Hat JBoss Data Grid
                         Red Hat Enterprise Linux Scalable File System (for RHEL Compute Node)
                         Red Hat Software Collections Beta (for RHEL Server for ARM 64)
                         Red Hat Enterprise Linux High Availability High Touch Beta
                         Red Hat Openshift Application Runtimes
                         Red Hat Enterprise Linux High Availability for x86_64
                         Red Hat Certificate System with Advanced Access
                         mirror registry for Red Hat OpenShift (mirror registry)
                         Red Hat OpenShift Enterprise Client Tools Beta
                         Red Hat Enterprise Linux 7 Workstation High Touch Beta
                         Red Hat Enterprise Linux for ARM 64 High Touch Beta
                         Red Hat Developer Toolset (for RHEL HPC Node)
                         Red Hat OpenStack Beta
                         Red Hat Virtualization - ELS
                         Red Hat Ceph Storage for ARM
                         Red Hat Directory Server Beta
                         MRG Grid Execute
                         Red Hat OpenShift Enterprise Client Tools
                         Red Hat Enterprise Linux 7 for IBM POWER Release Candidate
                         MRG Management
                         Red Hat Satellite with Embedded Oracle
                         dotNET on RHEL Beta (for RHEL Server)
                         Red Hat Enterprise Linux Server for Power LE - Update Services for SAP Solutions
                         Red Hat Enterprise Linux for SAP Applications for Power LE - Extended Update Support
                         Red Hat Software Collections (for RHEL Server for IBM Power LE)
                         Red Hat CodeReady Linux Builder for IBM z Systems
                         Red Hat Software Collections Beta (for RHEL Server for System Z)
                         Red Hat Ceph Storage MON
                         Red Hat Developer Tools Beta (for RHEL Compute Node)
                         Red Hat Container Images Beta
                         Red Hat Satellite Capsule
                         Red Hat Developer Tools (for RHEL Server)
                         Red Hat Developer Toolset (for RHEL Workstation)
                         Red Hat OpenShift Service Mesh
                         Red Hat Software Collections Beta (for RHEL Server for ARM)
                         Red Hat Enterprise Linux for SAP Solutions for x86_64 - Update Services for SAP Solutions
                         Red Hat CodeReady Linux Builder for IBM z Systems - Extended Update Support
                         Red Hat Developer Toolset (for RHEL for IBM POWER) - Extended Update Support
                         Red Hat Enterprise Linux for SAP Applications for Power LE
                         Red Hat Enterprise Linux Load Balancer (for RHEL Server) - Extended Update Support
                         Red Hat OpenStack Advanced
                         Red Hat Virtualization Manager
                         Red Hat Developer Tools Beta (for RHEL Server for IBM Power 9)
                         Oracle Java (for RHEL Server) - AUS
                         Red Hat OpenShift Pipelines for IBM Power, little endian
                         Red Hat OpenShift Pipelines for ARM
                         Red Hat Gluster Storage Management Console (for RHEL Server)
                         Red Hat Enterprise Linux for Real Time
                         Red Hat Enterprise Linux High Availability for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux for SAP Solutions for Power LE - Extended Update Support
                         Red Hat Enterprise Linux for SAP Solutions for Power LE
                         Red Hat OpenShift Enterprise JBoss FUSE add-on
                         Red Hat Certificate System
                         Red Hat Enterprise Linux for SAP Applications for x86_64
                         Red Hat JBoss Core Services
                         OLD Red Hat Enterprise Linux Server for ARM Development Preview
                         Red Hat Enterprise Linux Resilient Storage for x86_64 - Extended Update Support
                         Red Hat Satellite Beta
                         Red Hat Enterprise Linux for Power, little endian
                         Red Hat Enterprise Linux Resilient Storage for x86_64
                         Red Hat S-JIS Support (for RHEL Server) - AUS
                         Red Hat Container Images Beta for IBM Power LE
                         Red Hat Container Development Kit
    SKU:                 ES0113909
    Contract:            12977885
    Pool ID:             8a82c68d80862c730180ba1a5574266c
    Provides Management: Yes
    Available:           1000
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Self-Support
    Usage:               Development/Test
    Add-ons:
    Subscription Type:   Instance Based
    Starts:              05/12/2022
    Ends:                05/12/2027
    Entitlement Type:    Physical

    Subscription Name:   Employee SKU
    Provides:            Red Hat Enterprise Linux Load Balancer (for RHEL Server) - AUS
                         Red Hat Satellite Capsule Beta
                         Red Hat Enterprise Linux for Power, big endian - Extended Update Support
                         Red Hat Enterprise Linux High Performance Networking (for RHEL for IBM POWER)
                         Red Hat OpenShift Enterprise JBoss EAP add-on Beta
                         Red Hat Ansible Automation Platform
                         Red Hat S-JIS Support (for RHEL Server)
                         Red Hat Virtualization for IBM Power LE
                         Red Hat Enterprise Linux for SAP Applications for Power BE - Extended Update Support
                         dotNET on RHEL (for RHEL Server)
                         Red Hat Enterprise Linux FDIO (RHEL 7 Server)
                         Red Hat Software Collections (for RHEL Server for IBM Power)
                         Red Hat 3scale API Management Platform
                         Red Hat Enterprise Linux 6 Server HTB
                         Red Hat CodeReady Linux Builder for ARM 64
                         Red Hat Software Collections (for RHEL Server for System Z)
                         Red Hat Enterprise Linux Atomic Host Beta
                         Red Hat Enterprise Linux for Real Time for NFV for x86_64 - 4 years of updates
                         Red Hat Enterprise Linux Atomic Host HTB
                         Red Hat OpenShift Container Platform
                         Red Hat Enterprise Linux FDIO Early Access (RHEL 7 Server)
                         Red Hat Enterprise Linux High Availability for x86_64 - Telecommunications Update Service
                         Red Hat OpenShift Enterprise Application Node
                         Red Hat Enterprise Linux Resilient Storage for IBM z Systems - Extended Update Support
                         Red Hat OpenStack
                         Red Hat Enterprise Linux Advanced Virtualization (for RHEL Server for IBM System Z) EUS
                         OpenJDK Java (for Middleware)
                         Red Hat Enterprise Linux for SAP Solutions for x86_64 - Extended Update Support
                         Red Hat Enterprise Linux for SAP Applications for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux High Availability (for IBM z Systems) - Extended Update Support
                         Red Hat Enterprise Linux High Availability for x86_64 - Extended Update Support
                         MRG Grid
                         Red Hat Developer Toolset (for RHEL Server)
                         Red Hat Enterprise Linux High Performance Networking (for RHEL for IBM POWER) - Extended Update Support
                         Red Hat Enterprise Linux Server - Extended Life Cycle Support
                         Red Hat Enterprise Linux for SAP Solutions for x86_64
                         Red Hat Ceph Storage OSD
                         Oracle Java (for Middleware)
                         Red Hat Enterprise Linux for SAP Applications for Power LE - Update Services for SAP Solutions
                         Red Hat Enterprise Linux Scalable File System (for RHEL Workstation)
                         Red Hat Enterprise Linux Resilient Storage High Touch Beta
                         Red Hat Enterprise Linux High Availability for IBM z Systems
                         Red Hat Software Collections (for RHEL Server)
                         Red Hat Ansible Engine
                         MRG Realtime
                         Red Hat Enterprise Linux EUS Compute Node High Performance Networking
                         Red Hat Developer Toolset (for RHEL for IBM POWER)
                         Red Hat Enterprise Linux for SAP Applications for Power BE
                         Red Hat Software Collections (for RHEL Server for ARM 64)
                         Red Hat Software Collections Beta (for RHEL Server)
                         Red Hat Developer Tools (for RHEL Workstation)
                         Red Hat Certificate System Beta
                         Red Hat Enterprise Linux for IBM z Systems - Extended Update Support
                         Oracle Java (for RHEL Client)
                         Red Hat OpenShift Enterprise JBoss EAP add-on
                         Red Hat Enterprise Linux for SAP Applications for x86_64 - Extended Update Support
                         dotNET on RHEL (for RHEL Workstation)
                         Red Hat Open vSwitch Supplemental Beta
                         Red Hat Enterprise Linux for IBM z Systems
                         JBoss Enterprise Web Server
                         Red Hat OpenShift Application Runtimes Beta
                         Red Hat OpenShift GitOps for IBM Z and LinuxONE
                         Red Hat Open vSwitch for NVP / NSX Supplemental
                         Red Hat Mobile Application Platform
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server)
                         Red Hat Enterprise Linux for Power, little endian High Touch Beta
                         Red Hat Enterprise Linux Fast Datapath Beta for Power, little endian
                         Red Hat Developer Tools (for RHEL Server for IBM Power)
                         Oracle Java (for RHEL Compute Node)
                         Red Hat Enterprise Linux Fast Datapath (for IBM z Systems)
                         Red Hat Satellite 5 Managed DB Beta
                         Red Hat Enterprise Linux for Power, little endian Beta
                         Red Hat Developer Tools Beta (for RHEL Server for IBM Power)
                         Red Hat Enterprise Linux Workstation
                         Red Hat Virtualization
                         Red Hat Developer Tools (for RHEL Compute Node)
                         Red Hat Virtualization for IBM Power LE - Extended Update Support
                         Red Hat Container Native Virtualization
                         Red Hat Openshift Serverless
                         Red Hat Enterprise Linux EUS Compute Node
                         Red Hat Enterprise Linux for x86_64
                         Red Hat Developer Tools (for RHEL Server for ARM)
                         Red Hat Software Collections Beta (for RHEL Server for IBM Power LE)
                         Red Hat Gluster Storage Nagios Server
                         Red Hat Enterprise Linux for Real Time for NFV
                         Red Hat OpenStack Certification Test Suite
                         Red Hat CoreOS
                         Red Hat NooBaa
                         dotNET on RHEL Beta (for RHEL Workstation)
                         Red Hat CodeReady Linux Builder for x86_64
                         Red Hat OpenShift Enterprise Infrastructure Beta
                         Red Hat CodeReady Linux Builder for x86_64 - Extended Update Support
                         Red Hat Software Test Suite 5 (for RHEL Server)
                         Red Hat Enterprise Linux 7 Load Balancer High Touch Beta
                         Red Hat JBoss AMQ Clients
                         Red Hat OpenShift GitOps for IBM Power, little endian
                         Red Hat OpenStack Beta Advanced
                         Red Hat Software Collections (for RHEL Server for ARM)
                         Red Hat Software Collections Beta (for RHEL Server for IBM Power 9)
                         Red Hat Gluster Storage Web Administration (for RHEL Server)
                         Red Hat Enterprise Linux 7 Release Candidate
                         Red Hat Single Sign-On
                         Red Hat Satellite
                         Red Hat OpenShift Container Platform for Power
                         Red Hat Storage
                         Red Hat Developer Tools Beta (for RHEL Server for ARM)
                         Red Hat Enterprise Linux High Availability (for IBM Power LE) - Extended Update Support
                         Red Hat Enterprise Linux for Real Time for x86_64 - 4 years of updates
                         Red Hat Enterprise Linux Load Balancer (for RHEL Server)
                         Red Hat JBoss Middleware
                         Red Hat Ceph Storage Beta for x86_64
                         Red Hat Enterprise Linux Server - Extended Life Cycle Support (for IBM z Systems)
                         Red Hat CodeReady Workspaces for OpenShift
                         Red Hat Enterprise Linux Resilient Storage (for RHEL Server) - AUS
                         Red Hat Enterprise Linux Desktop
                         Red Hat Enterprise Linux for x86_64 High Touch Beta
                         Red Hat Developer Toolset (for RHEL Server EUS)
                         Red Hat AMQ Interconnect
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Server)
                         Red Hat CodeReady Linux Builder for Power, little endian
                         Red Hat Hardware Certification Test Suite
                         Red Hat Enterprise Linux for Power, little endian - Extended Update Support
                         Red Hat Enterprise Linux Advanced Virtualization Beta (for RHEL Server for IBM Power LE)
                         Red Hat Enterprise Linux for SAP Applications for System Z - Extended Update Support
                         Red Hat Software Collections Beta (for RHEL Client)
                         Red Hat Storage Software Appliance
                         Kernel Derivative Works for HPC for Power Systems
                         Oracle Java (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux for Power, big endian
                         Red Hat S-JIS Support (for RHEL Server) - Extended Update Support
                         JBoss Middleware Manager 7.0 Tech Preview
                         Red Hat Enterprise Linux Fast Datapath Beta for x86_64
                         Red Hat OpenShift Pipelines for IBM Z and LinuxONE
                         Red Hat Satellite Proxy
                         Red Hat Enterprise Linux for IBM z Systems Beta
                         Red Hat OpenShift Pipelines
                         Red Hat Software Collections Beta (for RHEL Workstation)
                         Red Hat Enterprise Linux High Availability for Power, little endian
                         Red Hat Software Collections (for RHEL Client)
                         Red Hat OpenShift Enterprise JBoss A-MQ add-on
                         Red Hat OpenShift Container Platform for IBM Z and LinuxONE
                         Red Hat Ceph Storage
                         Red Hat Enterprise Linux for Power 9
                         Red Hat Developer Toolset (for RHEL Client)
                         Red Hat Developer Tools Beta (for RHEL Server for System Z)
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux Server for ARM
                         Red Hat OpenShift Enterprise Infrastructure
                         Red Hat OpenStack 7 Extended Life Cycle Support
                         Red Hat Satellite 5 Managed DB
                         JBoss Enterprise Application Platform
                         Red Hat Enterprise Linux 7 Addons High Touch Beta
                         Red Hat Software Collections (for RHEL Workstation)
                         Red Hat Enterprise Linux EUS Compute Node Scalable File System
                         Red Hat Developer Tools Beta (for RHEL Server for IBM Power LE)
                         Red Hat OpenShift Container Platform Client Tools for Power
                         Kernel Derivative Works for Bluegene/Q
                         Red Hat Software Collections (for RHEL Server for IBM Power 9)
                         Red Hat Enterprise Linux Fast Datapath
                         Red Hat Enterprise Linux for SAP Applications for System Z
                         Red Hat Enterprise Linux 6 Workstation HTB
                         Red Hat Enterprise Linux Fast Datapath Beta (for IBM z Systems)
                         Red Hat Enterprise Linux 7 for IBM z Systems Release Candidate
                         Red Hat Enterprise Linux Server
                         Red Hat Enterprise Linux 7 Desktop High Touch Beta
                         Red Hat Enterprise Linux 7 for HPC Compute Node High Touch Beta
                         Red Hat Software Collections Beta (for RHEL Server for IBM Power)
                         Red Hat Enterprise MRG Messaging 3 for RHEL 7
                         OpenShift Developer Tools and Services
                         Red Hat Container Images
                         Red Hat Developer Tools (for RHEL Server for IBM Power 9)
                         Red Hat Virtualization Host
                         Red Hat Virtualization - Extended Update Support
                         Red Hat CoreOS Beta
                         Red Hat Enterprise Virtualization for Power, little endian
                         Red Hat CloudForms Beta
                         Red Hat Enterprise Linux Advanced Virtualization (for RHEL Server for IBM System Z)
                         Red Hat Enterprise Linux for SAP Solutions for Power LE - Update Services for SAP Solutions
                         Red Hat Enterprise Linux Atomic Host
                         Red Hat Enterprise Linux for IBM System z (Structure A)
                         Red Hat OpenShift Enterprise Application Node Beta
                         Red Hat OpenStack - Extended Life Cycle Support
                         Red Hat Enterprise MRG Messaging
                         Red Hat EUCJP Support (for RHEL Server)
                         Red Hat Advanced Cluster Management for Kubernetes
                         Red Hat Ceph Storage Calamari
                         Red Hat Enterprise Linux Resilient Storage for Power, little endian
                         Red Hat CloudForms
                         Red Hat OpenShift distributed tracing
                         Red Hat OpenStack Beta for IBM Power LE
                         Red Hat Enterprise Linux Advanced Virtualization
                         Red Hat OpenStack Beta Certification Test Suite
                         Red Hat Certification (for RHEL Server)
                         Red Hat Enterprise Linux for IBM z Systems High Touch Beta
                         Red Hat Enterprise Linux Server - AUS
                         Red Hat Enterprise Linux for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux High Availability for ARM 64
                         Red Hat CodeReady Linux Builder for Power, little endian - Extended Update Support
                         Red Hat Developer Tools Beta (for RHEL Server)
                         Red Hat Enterprise Linux for ARM 64
                         Cinderlib
                         Red Hat Container Images HTB
                         JBoss Enterprise Application Platform - ELS
                         Red Hat Enterprise Linux Resilient Storage for x86_64 - 4 years of updates
                         Red Hat Developer Tools (for RHEL Server for IBM Power LE)
                         Red Hat Directory Server
                         Oracle Java (for RHEL Workstation)
                         Red Hat EUCJP Support (for RHEL Server) - Extended Update Support
                         JBoss Enterprise Web Platform
                         Red Hat Enterprise Linux Server for ARM Beta
                         Red Hat Enterprise Linux Fast Datapath (for RHEL Server for IBM Power LE)
                         Red Hat Enterprise Linux Resilient Storage for IBM Power LE - Extended Update Support
                         Oracle Java (for RHEL Compute Node) - Extended Update Support
                         Red Hat Enterprise Linux Advanced Virtualization (for RHEL Server for IBM Power LE)
                         Red Hat Enterprise Linux High Availability (for RHEL Server) - AUS
                         Red Hat Enterprise Linux for x86_64 - Extended Update Support
                         dotNET on RHEL (for RHEL Compute Node)
                         Red Hat Enterprise Linux High Availability for Power LE - Update Services for SAP Solutions
                         Red Hat Storage Console
                         Red Hat Gluster Storage Server for On-premise
                         Red Hat Beta
                         Red Hat Container Images for IBM Power LE
                         Red Hat Enterprise Linux KVM
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server) - AUS
                         Red Hat Developer Tools (for RHEL Server for System Z)
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Compute Node)
                         Oracle Java (for RHEL Server)
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Server) - Extended Update Support
                         Red Hat Storage Console Node
                         Red Hat Ceph Storage Beta for Power, little endian
                         Red Hat Enterprise Linux Advanced Virtualization Beta
                         Red Hat Virtualization Host - Extended Update Support
                         Red Hat Developer Tools Beta (for RHEL Workstation)
                         Red Hat Enterprise Linux for Scientific Computing
                         Red Hat Enterprise Linux Resilient Storage for IBM z Systems
                         Red Hat OpenStack for IBM Power
                         Red Hat Enterprise Linux Server - TUS
                         Red Hat Certificate System - Extended Life Cycle Support
                         dotNET on RHEL Beta (for RHEL Compute Node)
                         Red Hat JBoss Data Grid
                         Red Hat Enterprise Linux Scalable File System (for RHEL Compute Node)
                         Red Hat Software Collections Beta (for RHEL Server for ARM 64)
                         Red Hat Enterprise Linux High Availability High Touch Beta
                         Red Hat Openshift Application Runtimes
                         Red Hat Enterprise Linux High Availability for x86_64
                         Red Hat Certificate System with Advanced Access
                         mirror registry for Red Hat OpenShift (mirror registry)
                         Red Hat OpenShift Enterprise Client Tools Beta
                         Red Hat Enterprise Linux 7 Workstation High Touch Beta
                         Red Hat Enterprise Linux for ARM 64 High Touch Beta
                         Red Hat Developer Toolset (for RHEL HPC Node)
                         Red Hat OpenStack Beta
                         Red Hat Virtualization - ELS
                         Red Hat Ceph Storage for ARM
                         Red Hat Directory Server Beta
                         MRG Grid Execute
                         Red Hat OpenShift Enterprise Client Tools
                         Red Hat Enterprise Linux 7 for IBM POWER Release Candidate
                         MRG Management
                         Red Hat Satellite with Embedded Oracle
                         dotNET on RHEL Beta (for RHEL Server)
                         Red Hat Enterprise Linux Server for Power LE - Update Services for SAP Solutions
                         Red Hat Enterprise Linux for SAP Applications for Power LE - Extended Update Support
                         Red Hat Software Collections (for RHEL Server for IBM Power LE)
                         Red Hat CodeReady Linux Builder for IBM z Systems
                         Red Hat Software Collections Beta (for RHEL Server for System Z)
                         Red Hat Ceph Storage MON
                         Red Hat Developer Tools Beta (for RHEL Compute Node)
                         Red Hat Container Images Beta
                         Red Hat Satellite Capsule
                         Red Hat Developer Tools (for RHEL Server)
                         Red Hat Developer Toolset (for RHEL Workstation)
                         Red Hat OpenShift Service Mesh
                         Red Hat Software Collections Beta (for RHEL Server for ARM)
                         Red Hat Enterprise Linux for SAP Solutions for x86_64 - Update Services for SAP Solutions
                         Red Hat CodeReady Linux Builder for IBM z Systems - Extended Update Support
                         Red Hat Developer Toolset (for RHEL for IBM POWER) - Extended Update Support
                         Red Hat Enterprise Linux for SAP Applications for Power LE
                         Red Hat Enterprise Linux Load Balancer (for RHEL Server) - Extended Update Support
                         Red Hat OpenStack Advanced
                         Red Hat Virtualization Manager
                         Red Hat Developer Tools Beta (for RHEL Server for IBM Power 9)
                         Oracle Java (for RHEL Server) - AUS
                         Red Hat OpenShift Pipelines for IBM Power, little endian
                         Red Hat OpenShift Pipelines for ARM
                         Red Hat Gluster Storage Management Console (for RHEL Server)
                         Red Hat Enterprise Linux for Real Time
                         Red Hat Enterprise Linux High Availability for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux for SAP Solutions for Power LE - Extended Update Support
                         Red Hat Enterprise Linux for SAP Solutions for Power LE
                         Red Hat OpenShift Enterprise JBoss FUSE add-on
                         Red Hat Certificate System
                         Red Hat Enterprise Linux for SAP Applications for x86_64
                         Red Hat JBoss Core Services
                         OLD Red Hat Enterprise Linux Server for ARM Development Preview
                         Red Hat Enterprise Linux Resilient Storage for x86_64 - Extended Update Support
                         Red Hat Satellite Beta
                         Red Hat Enterprise Linux for Power, little endian
                         Red Hat Enterprise Linux Resilient Storage for x86_64
                         Red Hat S-JIS Support (for RHEL Server) - AUS
                         Red Hat Container Images Beta for IBM Power LE
                         Red Hat Container Development Kit
    SKU:                 ES0113909
    Contract:            12977885
    Pool ID:             8a82c68d80862c730180ba1a58ed266e
    Provides Management: Yes
    Available:           Unlimited
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Self-Support
    Usage:               Development/Test
    Add-ons:
    Subscription Type:   Instance Based
    Starts:              05/12/2022
    Ends:                05/12/2027
    Entitlement Type:    Virtual

    Subscription Name:   Red Hat Beta Access
    Provides:            Red Hat Satellite Capsule Beta
                         Red Hat Enterprise Linux for SAP Applications for IBM z Systems Beta
                         Red Hat Enterprise Linux for SAP Applications for Power, little endian Beta
                         Red Hat Enterprise Linux Fast Datapath Beta for Power, little endian
                         Red Hat Enterprise Linux Resilient Storage Beta
                         Red Hat Enterprise Linux for SAP Applications for x86_64 Beta
                         Red Hat CodeReady Linux Builder for IBM z Systems Beta
                         Red Hat Enterprise Linux for SAP HANA for x86_64 Beta
                         Red Hat Enterprise Linux Advanced Virtualization Beta (for RHEL Server for IBM System Z)
                         Red Hat CodeReady Linux Builder for x86_64 Beta
                         Red Hat Enterprise Linux for SAP HANA for Power, little endian Beta
                         Red Hat Directory Server Beta
                         Red Hat Certificate System Beta
                         Red Hat Enterprise Linux for Power, little endian Beta
                         Red Hat Enterprise Linux for Real Time for NFV Beta
                         Red Hat Enterprise Linux for Real Time Beta
                         Red Hat Satellite Beta
                         Red Hat Enterprise Linux Fast Datapath Beta for x86_64
                         Red Hat Enterprise Linux for x86_64 Beta
                         Red Hat Enterprise Linux for IBM z Systems Beta
                         Red Hat CodeReady Linux Builder for ARM 64 Beta
                         Red Hat Enterprise Linux for ARM 64 Beta
                         Red Hat CodeReady Linux Builder for Power, little endian Beta
                         Red Hat Enterprise Linux High Availability Beta
    SKU:                 RH00069
    Contract:
    Pool ID:             8a82c68d80862c730180ba1a5dfc2670
    Provides Management: No
    Available:           Unlimited
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Self-Support
    Usage:
    Add-ons:
    Subscription Type:   Standard
    Starts:              05/12/2022
    Ends:                05/12/2027
    Entitlement Type:    Physical

    Subscription Name:   Red Hat Virtualization Manager
    Provides:            Red Hat Beta
                         Red Hat Enterprise Linux for x86_64
                         Red Hat Enterprise Linux Fast Datapath
                         Red Hat CodeReady Linux Builder for x86_64
                         Red Hat Ansible Engine
                         Red Hat Enterprise Linux High Performance Networking (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux for x86_64 - Update Services for SAP Solutions
                         Red Hat CodeReady Linux Builder for x86_64 - Extended Update Support
                         Oracle Java (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux Server
                         Red Hat S-JIS Support (for RHEL Server) - Extended Update Support
                         Red Hat Virtualization Host - Extended Update Support
                         Red Hat Enterprise Linux Load Balancer (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux Server - TUS
                         Red Hat Virtualization Manager
                         Cinderlib
                         Red Hat Enterprise Linux Resilient Storage for x86_64 - 4 years of updates
                         Red Hat EUCJP Support (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux for Real Time for NFV for x86_64 - 4 years of updates
                         Red Hat Enterprise Linux High Availability for x86_64 - Telecommunications Update Service
                         Red Hat Enterprise Linux Scalable File System (for RHEL Server) - Extended Update Support
                         Red Hat Enterprise Linux High Availability for x86_64 - Update Services for SAP Solutions
                         Red Hat Enterprise Linux for Real Time for x86_64 - 4 years of updates
                         Red Hat Virtualization - Extended Update Support
                         JBoss Enterprise Application Platform
                         Red Hat Enterprise Linux High Availability for x86_64 - Extended Update Support
                         Red Hat JBoss Core Services
                         Red Hat Enterprise Linux Resilient Storage for x86_64 - Extended Update Support
                         Red Hat Enterprise Linux for x86_64 - Extended Update Support
    SKU:                 RV00045
    Contract:
    Pool ID:             8a82c68d80862c730180ba1a60ac2672
    Provides Management: No
    Available:           10
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Layered
    Usage:
    Add-ons:
    Subscription Type:   Stackable
    Starts:              05/12/2022
    Ends:                05/12/2027
    Entitlement Type:    Physical

    Subscription Name:   Red Hat Virtualization Manager for Power
    Provides:            Cinderlib for IBM Power LE
                         Red Hat Enterprise Linux Fast Datapath (for RHEL Server for IBM Power LE)
                         Red Hat JBoss Core Services
                         Red Hat Virtualization Manager
                         Red Hat Enterprise Linux Fast Datapath Beta for Power, little endian
                         JBoss Enterprise Application Platform
    SKU:                 RV00099
    Contract:
    Pool ID:             8a82c68d80862c730180ba1a636c2674
    Provides Management: No
    Available:           10
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Layered
    Usage:
    Add-ons:
    Subscription Type:   Stackable
    Starts:              05/12/2022
    Ends:                05/12/2027
    Entitlement Type:    Physical

    Subscription Name:   Red Hat Ansible Automation Platform, Standard (100 Managed Nodes)
    Provides:            Red Hat Ansible Automation Platform
                         Red Hat Ansible Engine
                         Red Hat Single Sign-On
                         JBoss Enterprise Application Platform
    SKU:                 MCT3691
    Contract:            12987267
    Pool ID:             8a82c68d80de32fc0180f659214941c0
    Provides Management: No
    Available:           1991
    Suggested:           1
    Service Type:        L1-L3
    Roles:
    Service Level:       Standard
    Usage:
    Add-ons:
    Subscription Type:   Stackable
    Starts:              05/12/2022
    Ends:                05/12/2027
    Entitlement Type:    Physical

    No consumed subscription pools were found.
  stdout_lines: <omitted>

TASK [Register systems with Red Hat for updates] ****************************************************************************

...output omitted...

changed: [host1] => changed=true
  invocation:
    module_args:
      activationkey: null
      auto_attach: true
      consumer_id: null
      consumer_name: null
      consumer_type: null
      environment: null
      force_register: false
      org_id: null
      password: VALUE_SPECIFIED_IN_NO_LOG_PARAMETER
      pool: ^$
      pool_ids:
      - 8a82c68d80862c730180ba1a58ed266e
      - 8a82c68d80de32fc0180f659214941c0
      release: null
      rhsm_baseurl: null
      rhsm_repo_ca_cert: null
      server_hostname: null
      server_insecure: null
      server_port: null
      server_prefix: null
      server_proxy_hostname: null
      server_proxy_password: null
      server_proxy_port: null
      server_proxy_scheme: null
      server_proxy_user: null
      state: present
      syspurpose: null
      token: null
      username: <redacted>
  subscribed_pool_ids:
  - 8a82c68d80862c730180ba1a58ed266e
  - 8a82c68d80de32fc0180f659214941c0
  unsubscribed_serials: []
ptoscano commented 1 year ago

@jmighion The reason the module seems to always subscribe to pools for you is that subscription-manager --consumed shows:

    No consumed subscription pools were found.

Is your account using SCA (Simple Content Access), or the old entitlement mode? Check the output of subscription-manager --status.

Edit: to double confirm: do you get the same output of subscription-manager --consumed and changed status of redhat_subscription every time to run the playbook? even if the system is registered and has already attached the specified pools?

jmighion commented 1 year ago

Both the host that always shows a change (shows nothing consumed) and the host that the task is idempotent for (shows consumed) show the same for subscription-manager status:

subscription-manager status
+-------------------------------------------+
   System Status Details
+-------------------------------------------+
Overall Status: Disabled
Content Access Mode is set to Simple Content Access. This host has access to content, regardless of subscription status.

System Purpose Status: Disabled

I can't remember off the top of my head what that's supposed to be because it's been a while since I worked with subscription-manager and things have changed. I was expecting that to show enabled though, or at least somehow different between the two hosts. I checked on another local vm (RHEL 9.1) and it demonstrating the same problem, always showing changed and not updating the consumed list. I'm guessing we're just missing some basic setup step for subscription manager.

Double confirmed: seeing the same output each time for each command and rerun of the playbook on all hosts, even if the system is registered and attached pools (although it looks like 2 of them never show as attached hence the task showing changed each time).

ptoscano commented 1 year ago

Both the host that always shows a change (shows nothing consumed) and the host that the task is idempotent for (shows consumed) show the same for subscription-manager status:

subscription-manager status
+-------------------------------------------+
   System Status Details
+-------------------------------------------+
Overall Status: Disabled
Content Access Mode is set to Simple Content Access. This host has access to content, regardless of subscription status.

System Purpose Status: Disabled

You account is in SCA mode, it does not need to use pools anymore. Even more so, starting from RHEL 8.7 and 9.1 attaching pools on an SCA account is a no-op -- you can verify that running subscription-manager attach --pool=POOL_ID tells you that without doing anything.

TL;DR: drop the pools from your redhat_subscription task, everything should work fine already.

jmighion commented 1 year ago

Ah, brilliant! Thanks for letting me know!

ansibullbot commented 1 year ago

cc @cnsnyder click here for bot help

ptoscano commented 1 year ago

-label affects_2.9 -label python3