Dear oVirt,

In our software tests, we deploy oVirt VMs using ansible and teardown also 
using ansible.

We noticed that each time we run nightly tests, using Jenkins user in ovirt, in 
one of the Jobs, first task, creating VM, fails with following error,


TASK [Login to oVirt] **********************************************************
An exception occurred during task execution. To see the full traceback, use 
-vvv. The error was: AuthError: Error during SSO authentication invalid_grant : 
The provided authorization grant for the username and password has expired.
fatal: [PVyrZMy0-csm-2.avinity.tv<http://pvyrzmy0-csm-2.avinity.tv/> -> 
localhost]: FAILED! => {"changed": false, "msg": "Error during SSO 
authentication invalid_grant : The provided authorization grant for the 
username and password has expired."}

Immediately after, Token seem to be renewed and all other VMs are created 
without issue.

The play looks like following:


---

# file: provision-ovirt.yml

- name: Create VM in OVirt

  hosts: ovirt-vms

  gather_facts: false



  vars:

    - state: running

  pre_tasks:

    - name: Login to oVirt

      delegate_to: localhost

      ovirt_auth:

         url: "{{ ovirt_engine_url }}"

         username: "{{ ovirt_engine_user }}"

         password: "{{ ovirt_engine_password }}"

         ca_file: "{{ ovirt_engine_cafile | default(omit) }}"

         insecure: "{{ ovirt_engine_insecure | default(true) }}"

      run_once: true



  tasks:

    - name: "Get agent keys"

      delegate_to: localhost

      command: ssh-add -L

      register: ssh_agent_pubkeys

      run_once: true

      changed_when: False



    - name: Create new VMs from template

      delegate_to: localhost

      ovirt_vm:

        auth: "{{ ovirt_auth }}"

        name: "{{ inventory_hostname_short }}"

        nics:

        - name: nic1

          profile_name: tenant1

          interface: virtio

        cloud_init_nics:

        - nic_name: eth0

          nic_boot_protocol: dhcp

          nic_on_boot: true

        cloud_init:

          host_name: "{{ inventory_hostname_short }}"

          authorized_ssh_keys: "{{ ssh_agent_pubkeys.stdout }}"

        state: "{{ state }}"

        cluster: "{{ovirt_cluster}}"

        template: "{{ images_to_template[os_image] }}"

        instance_type: "{{ os_flavor_to_ovirt_instance_type[os_flavor] }}"



    - name: "Wait until the ansible user can log into the host (cloud-init 
needs to have finished)"

      command: ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no 
{{ansible_user}}@{{inventory_hostname}} exit

      register: ssh_output

      delegate_to: localhost

      until: ssh_output.rc == 0

      retries: 30

      delay: 5

      changed_when: False



  post_tasks:

    - name: Logout from oVirt

      delegate_to: localhost

      run_once: true

      ovirt_auth:

        state: absent

        ovirt_auth: "{{ ovirt_auth }}"

      tags:

        - always

How does token relates to user session in oVirt? We would expect that once we 
logout, token should be expired and upon new login just get renewed/new token 
to proceed.
Is it a bug? Is it in the play that we are doing something incorrectly?

Kindly awaiting your eply.


— — —
Met vriendelijke groet / Kind regards,

Marko Vrgotic


_______________________________________________
Users mailing list -- users@ovirt.org
To unsubscribe send an email to users-le...@ovirt.org
Privacy Statement: https://www.ovirt.org/site/privacy-policy/
oVirt Code of Conduct: 
https://www.ovirt.org/community/about/community-guidelines/
List Archives: 
https://lists.ovirt.org/archives/list/users@ovirt.org/message/6E4TCU2MSLE6WY267CBOS6WYBOJA6JCB/

Reply via email to