- name: Check if project name exists
uri:
url: "{{ webapp_url }}/api/orgs"
method: GET
return_content: yes
validate_certs: no
user: "{{ user }}"
password: "{{ password }}"
force_basic_auth: yes
register: existing_projects
- name: Check if project name exists in the response
set_fact:
project_already_exists: "{{ project_name in existing_projects.json |
json_query('*.name') }}"
- name: REST POST Example if project name doesn't exist
uri:
url: "{{ webapp_url }}/api/orgs"
method: POST
return_content: yes
body: "{ \"name\": \"{{ project_name }}\" }"
body_format: json
validate_certs: no
user: "{{ user }}"
password: "{{ password }}"
force_basic_auth: yes
when: not project_already_exists
On Thursday, August 17, 2023 at 1:18:48 AM UTC-7 Veera wrote:
> Hi ,
>
> I have the below uri module to post the details inside the web api
>
> - name: REST POST Example
> uri:
> url: "{{ webapp_url }}/api/orgs"
> method: POST
> return_content: yes
> body: "{ \"name\": \"{{ project_name }}\" }"
> body_format: json
> validate_certs: no
> user: "{{ user }}"
> password: "{{ password }}"
> force_basic_auth: yes
>
> while passing the variables as
> ansible-playbook myplay.yml -e "project_name=first_project"
> n- number of times it works and overwrites the same first_project name.
>
> Is there an option available to stop overwriting if the same project_name
> is available with uri module?
> Or we have to use the GET method to collect and compare the existing
> project_name , before writing using POST? or will a conditional check can
> help ?
>
>
>
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/4a3ca8d7-9c44-4807-833b-7b6f65ce150cn%40googlegroups.com.