¿Cómo puedo configurar el contenido de una variable como resultado de una llamada HTTP?

¿Cómo puedo configurar el contenido de una variable como resultado de una llamada HTTP?

Estoy intentando consultar el artefacto para encontrar la última versión que coincida con un patrón global determinado. Me gustaría configurar la salida de esto en una variable que luego pueda usar con el maven_artifactmódulo. Estaba pensando en una búsqueda, pero se realiza en la máquina controladora.

Usando get_urltengo lo siguiente:

- name: Get App Version
  get_url:
    url: "{{ artifactory_search }}?g=com.test.app&a=my-app&v=*qa*&repos=libs-release-local"
    dest: "{{ app_dir }}/version"
  tags:
  - testing

Ahora sólo necesito entrar {{ app_dir }}/versionen una variable.

Respuesta1

También puedes usar el urimódulo así:

- name: Fetch instance metadata
  uri:
    url: http://169.254.169.254/path/to/ip_address
    return_content: yes
  register: jsondata

- debug: msg="Operating on instance {{ jsondata['content'] }}"

Respuesta2

Ok lo tengo. Utilizando elmódulo de mandoPude acceder al catarchivo para poder leer el contenido del archivo descargado.

- name: Get App Version
  get_url:
    url: "{{ artifactory_search }}?g=com.test.app&a=my-app&v=*qa*&repos=libs-release-local"
    dest: "{{ app_dir }}/version"
- name: Read App Version
  command: cat {{ app_dir }}/version
  register: app_version
- debug:
    msg: "App Version {{ app_version.stdout }}"

información relacionada