---
######################################################################################
# Example :  Snapshot Facts Playbook
######################################################################################
- name: Snapshot Pair Facts
  hosts: localhost
  gather_facts: false

  vars_files:
    - ../ansible_vault_vars/ansible_vault_storage_var.yml

  vars:
    # Common connection info for all tasks
    connection_info:
      address: "{{ storage_address }}"
      username: "{{ vault_storage_username }}"
      password: "{{ vault_storage_secret }}"

  tasks:
    ######################################################################################
    # Task Name : Get all snapshot pairs
    ######################################################################################
    - name: Get all snapshot pairs
      hitachivantara.vspone_block.vsp.hv_snapshot_facts:
        connection_info: "{{ connection_info }}"
      register: result

    - name: Debug the result variable
      ansible.builtin.debug:
        var: result

    ######################################################################################
    # Task Name : Get snapshot pairs with same primary_volume_id
    ######################################################################################
    - name: Get snapshot pairs with same primary_volume_id
      hitachivantara.vspone_block.vsp.hv_snapshot_facts:
        connection_info: "{{ connection_info }}"
        spec:
          primary_volume_id: 100
      register: result

    - name: Debug the result variable
      ansible.builtin.debug:
        var: result

    ######################################################################################
    # Task Name : Get one snapshot pair
    ######################################################################################
    - name: Get one snapshot pair
      hitachivantara.vspone_block.vsp.hv_snapshot_facts:
        connection_info: "{{ connection_info }}"
        spec:
          primary_volume_id: 101
          mirror_unit_id: 1
      register: result

    - name: Debug the result variable
      ansible.builtin.debug:
        var: result
