community.general.redfish_command (1.3.11) — module

Manages Out-Of-Band controllers using Redfish APIs

Authors: Jose Delarosa (@jose-delarosa)

Install collection

Install with ansible-galaxy collection install community.general:==1.3.11


Add to requirements.yml

  collections:
    - name: community.general
      version: 1.3.11

Description

Builds Redfish URIs locally and sends them to remote OOB controllers to perform an action.

Manages OOB controller ex. reboot, log management.

Manages OOB controller users ex. add, remove, update.

Manages system power ex. on, off, graceful and forced reboot.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Restart system power gracefully
    community.general.redfish_command:
      category: Systems
      command: PowerGracefulRestart
      resource_id: 437XR1138R2
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Turn system power off
    community.general.redfish_command:
      category: Systems
      command: PowerForceOff
      resource_id: 437XR1138R2
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Restart system power forcefully
    community.general.redfish_command:
      category: Systems
      command: PowerForceRestart
      resource_id: 437XR1138R2
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Shutdown system power gracefully
    community.general.redfish_command:
      category: Systems
      command: PowerGracefulShutdown
      resource_id: 437XR1138R2
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Turn system power on
    community.general.redfish_command:
      category: Systems
      command: PowerOn
      resource_id: 437XR1138R2
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Reboot system power
    community.general.redfish_command:
      category: Systems
      command: PowerReboot
      resource_id: 437XR1138R2
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Set one-time boot device to {{ bootdevice }}
    community.general.redfish_command:
      category: Systems
      command: SetOneTimeBoot
      resource_id: 437XR1138R2
      bootdevice: "{{ bootdevice }}"
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Set one-time boot device to UefiTarget of "/0x31/0x33/0x01/0x01"
    community.general.redfish_command:
      category: Systems
      command: SetOneTimeBoot
      resource_id: 437XR1138R2
      bootdevice: "UefiTarget"
      uefi_target: "/0x31/0x33/0x01/0x01"
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Set one-time boot device to BootNext target of "Boot0001"
    community.general.redfish_command:
      category: Systems
      command: SetOneTimeBoot
      resource_id: 437XR1138R2
      bootdevice: "UefiBootNext"
      boot_next: "Boot0001"
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Set persistent boot device override
    community.general.redfish_command:
      category: Systems
      command: EnableContinuousBootOverride
      resource_id: 437XR1138R2
      bootdevice: "{{ bootdevice }}"
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Disable persistent boot device override
    community.general.redfish_command:
      category: Systems
      command: DisableBootOverride
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Set chassis indicator LED to blink
    community.general.redfish_command:
      category: Chassis
      command: IndicatorLedBlink
      resource_id: 1U
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Add user
    community.general.redfish_command:
      category: Accounts
      command: AddUser
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      new_username: "{{ new_username }}"
      new_password: "{{ new_password }}"
      roleid: "{{ roleid }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Add user using new option aliases
    community.general.redfish_command:
      category: Accounts
      command: AddUser
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
      account_password: "{{ account_password }}"
      account_roleid: "{{ account_roleid }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Delete user
    community.general.redfish_command:
      category: Accounts
      command: DeleteUser
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Disable user
    community.general.redfish_command:
      category: Accounts
      command: DisableUser
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Enable user
    community.general.redfish_command:
      category: Accounts
      command: EnableUser
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Add and enable user
    community.general.redfish_command:
      category: Accounts
      command: AddUser,EnableUser
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      new_username: "{{ new_username }}"
      new_password: "{{ new_password }}"
      roleid: "{{ roleid }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update user password
    community.general.redfish_command:
      category: Accounts
      command: UpdateUserPassword
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
      account_password: "{{ account_password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update user role
    community.general.redfish_command:
      category: Accounts
      command: UpdateUserRole
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
      roleid: "{{ roleid }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update user name
    community.general.redfish_command:
      category: Accounts
      command: UpdateUserName
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
      account_updatename: "{{ account_updatename }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update user name
    community.general.redfish_command:
      category: Accounts
      command: UpdateUserName
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_username: "{{ account_username }}"
      update_username: "{{ update_username }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Update AccountService properties
    community.general.redfish_command:
      category: Accounts
      command: UpdateAccountServiceProperties
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      account_properties:
        AccountLockoutThreshold: 5
        AccountLockoutDuration: 600
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Clear Manager Logs with a timeout of 20 seconds
    community.general.redfish_command:
      category: Manager
      command: ClearLogs
      resource_id: BMC
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      timeout: 20
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Clear Sessions
    community.general.redfish_command:
      category: Sessions
      command: ClearSessions
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Simple update
    community.general.redfish_command:
      category: Update
      command: SimpleUpdate
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      update_image_uri: https://example.com/myupdate.img
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Simple update with additional options
    community.general.redfish_command:
      category: Update
      command: SimpleUpdate
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      update_image_uri: //example.com/myupdate.img
      update_protocol: FTP
      update_targets:
        - /redfish/v1/UpdateService/FirmwareInventory/BMC
      update_creds:
        username: operator
        password: supersecretpwd
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Insert Virtual Media
    community.general.redfish_command:
      category: Manager
      command: VirtualMediaInsert
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      virtual_media:
        image_url: 'http://example.com/images/SomeLinux-current.iso'
        media_types:
          - CD
          - DVD
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Eject Virtual Media
    community.general.redfish_command:
      category: Manager
      command: VirtualMediaEject
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
      virtual_media:
        image_url: 'http://example.com/images/SomeLinux-current.iso'
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Restart manager power gracefully
    community.general.redfish_command:
      category: Manager
      command: GracefulRestart
      resource_id: BMC
      baseuri: "{{ baseuri }}"
      username: "{{ username }}"
      password: "{{ password }}"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Restart manager power gracefully
    community.general.redfish_command:
      category: Manager
      command: PowerGracefulRestart
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Turn manager power off
    community.general.redfish_command:
      category: Manager
      command: PowerForceOff
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Restart manager power forcefully
    community.general.redfish_command:
      category: Manager
      command: PowerForceRestart
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Shutdown manager power gracefully
    community.general.redfish_command:
      category: Manager
      command: PowerGracefulShutdown
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Turn manager power on
    community.general.redfish_command:
      category: Manager
      command: PowerOn
      resource_id: BMC
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
  - name: Reboot manager power
    community.general.redfish_command:
      category: Manager
      command: PowerReboot
      resource_id: BMC

Inputs

    
id:
    aliases:
    - account_id
    description:
    - ID of account to delete/modify
    required: false
    type: str

roleid:
    aliases:
    - account_roleid
    description:
    - Role of account to add/modify
    required: false
    type: str

baseuri:
    description:
    - Base URI of OOB controller
    required: true
    type: str

command:
    description:
    - List of commands to execute on OOB controller
    elements: str
    required: true
    type: list

timeout:
    default: 10
    description:
    - Timeout in seconds for URL requests to OOB controller
    type: int

category:
    description:
    - Category to execute on OOB controller
    required: true
    type: str

password:
    description:
    - Password for authentication with OOB controller
    required: true
    type: str

username:
    description:
    - Username for authentication with OOB controller
    required: true
    type: str

boot_next:
    description:
    - BootNext target when bootdevice is "UefiBootNext"
    required: false
    type: str

bootdevice:
    description:
    - bootdevice when setting boot configuration
    required: false
    type: str

resource_id:
    description:
    - The ID of the System, Manager or Chassis to modify
    required: false
    type: str
    version_added: 0.2.0
    version_added_collection: community.general

uefi_target:
    description:
    - UEFI target when bootdevice is "UefiTarget"
    required: false
    type: str

new_password:
    aliases:
    - account_password
    description:
    - New password of account to add/modify
    required: false
    type: str

new_username:
    aliases:
    - account_username
    description:
    - Username of account to add/delete/modify
    required: false
    type: str

update_creds:
    description:
    - The credentials for retrieving the update image
    required: false
    suboptions:
      password:
        description:
        - The password for retrieving the update image
        required: false
        type: str
      username:
        description:
        - The username for retrieving the update image
        required: false
        type: str
    type: dict
    version_added: 0.2.0
    version_added_collection: community.general

virtual_media:
    description:
    - The options for VirtualMedia commands
    required: false
    suboptions:
      image_url:
        description:
        - The URL od the image the insert or eject
        required: false
        type: str
      inserted:
        default: true
        description:
        - Indicates if the image is treated as inserted on command completion
        required: false
        type: bool
      media_types:
        description:
        - The list of media types appropriate for the image
        elements: str
        required: false
        type: list
      password:
        description:
        - The password for accessing the image URL
        required: false
        type: str
      transfer_method:
        description:
        - The transfer method to use with the image
        required: false
        type: str
      transfer_protocol_type:
        description:
        - The network protocol to use with the image
        required: false
        type: str
      username:
        description:
        - The username for accessing the image URL
        required: false
        type: str
      write_protected:
        default: true
        description:
        - Indicates if the media is treated as write-protected
        required: false
        type: bool
    type: dict
    version_added: 0.2.0
    version_added_collection: community.general

update_targets:
    description:
    - The list of target resource URIs to apply the update to
    elements: str
    required: false
    type: list
    version_added: 0.2.0
    version_added_collection: community.general

update_protocol:
    description:
    - The protocol for the update
    required: false
    type: str
    version_added: 0.2.0
    version_added_collection: community.general

update_username:
    aliases:
    - account_updatename
    description:
    - new update user name for account_username
    required: false
    type: str
    version_added: 0.2.0
    version_added_collection: community.general

update_image_uri:
    description:
    - The URI of the image for the update
    required: false
    type: str
    version_added: 0.2.0
    version_added_collection: community.general

account_properties:
    description:
    - properties of account service to update
    required: false
    type: dict
    version_added: 0.2.0
    version_added_collection: community.general

Outputs

msg:
  description: Message with action result or error description
  returned: always
  sample: Action was successful
  type: str