---
- block:
  - name: Find out which resources we are going to configure
    set_fact: rkind="{{ tmpl.kind }}" rname="{{ tmpl.metadata.name }}"

  - name: Lookup the specified resource
    command: "oc get -n {{project}} {{rkind}}/{{rname}}"
    register: find_result
    changed_when: false
    failed_when: false

  - name: Detroy existing resources
    command: "oc delete -n {{project}} {{rkind}}/{{rname}}"
    register: rm_result
    failed_when: false
    changed_when: (rm_result | succeeded)
    when: (recreate|default(false)) 

  - name: Create resources defined in template
    command: "oc create -n {{project}} -f '{{ template_path }}/{{ template }}' {{ create_args | default('') }}"
    when: (recreate|default(false)) or (find_result.rc != 0)
  run_once: true