bigip_software_install – Install software images on a BIG-IP

New in version 1.1.0.

Synopsis

  • Install new software images on a BIG-IP system.

Parameters

Parameter Choices/Defaults Configuration Comments
block_device_image
string
Image to install on the remote device. In the case of a VCMP guest, ensure this image is present on the VCMP host and is referenced from there, and not from the VCMP guest. An ISO image directly uploaded to the VCMP guest will not work.
image
string
Image to install on the remote device.
state
string
    Choices:
  • activated ←
  • installed
When installed, ensures the software is installed on the volume and the volume is set to be booted from. The device is not rebooted into the new software.
When activated, performs the same operation as installed, but the system is rebooted to the new software.
timeout
integer
Default:
300
The amount of time in seconds to wait for software installation to finish.
The accepted value range is between 150 and 3600 seconds.
If the device needs to restart the module will return with no change and an appropriate message. In such case, it is up to the user to pause task execution until device is ready, see EXAMPLES section.
type
string
    Choices:
  • standard ←
  • vcmp
The type of the BIG-IP.
Defaults to standard, the other choice is vcmp.
volume
string
The volume on which to install the software image.
volume_uri
string
Target volume uri returned by installation task.
Used for checking status of software installation on the target volume.

Notes

Note

  • Checking for installation status with volume_uri parameter is not idempotent, see EXAMPLES section.

Examples

- hosts: all
  collections:
    - f5networks.f5_bigip
  connection: httpapi

  vars:
    ansible_host: "lb.mydomain.com"
    ansible_user: "admin"
    ansible_httpapi_password: "secret"
    ansible_network_os: f5networks.f5_bigip.bigip
    ansible_httpapi_use_ssl: yes

  tasks:
    - name: Ensure an existing image is activated in specified volume
      bigip_software_install:
        image: BIGIP-13.0.0.0.0.1645.iso
        volume: HD1.2
      register: task

    - name: Check for installation progress
      bigip_software_install:
        volume_uri: "{{task.volume_uri}}"
        timeout: 900
      register: result

    - name: Wait for 6 minutes if device is restarting services
      pause:
        minutes: 6
      when:
        - result.message == "Device is restarting services, unable to check software installation status."

    - name: Check for installation progress, after reboot
      bigip_software_install:
        volume_uri: "{{task.volume_uri}}"
        timeout: 900
      when:
        - result.message == "Device is restarting services, unable to check software installation status."

    - name: Ensure an existing image is activated in specified volume - Idempotent check
      bigip_software_install:
        image: BIGIP-13.0.0.0.0.1645.iso
        volume: HD1.2
      register: result

    - name: Assert Ensure an existing image is activated in specified volume - Idempotent check
      assert:
        that:
          - result is not changed
          - result is success

Return Values

The following are the fields unique to this module:

Key Returned Description
message
dictionary
changed
Informative message of the ansible task status.

Sample:
hash/dictionary of values
volume_uri
dictionary
changed
Target volume uri returned by installation task.

Sample:
hash/dictionary of values


Status

Authors

  • Wojciech Wypior (@wojtek0806)