--- - name: Slurp docker compose file slurp: src: "/home/poadocker/bridge/oracle/{{ file }}.yml" register: docker_compose_slurp - name: Parse docker compose file set_fact: docker_compose_parsed: "{{ docker_compose_slurp['content'] | b64decode | from_yaml }}" - name: Add the external network used to connect to Parity nodes set_fact: docker_compose_parsed: "{{ docker_compose_parsed |combine({'networks': {'ultimate': {'external': 'true'}}}, recursive=True) }}" - name: Add all Oracle containers to the network set_fact: docker_compose_parsed: "{{ docker_compose_parsed | combine({'services': {item: {'networks': docker_compose_parsed.services[item].networks | union(['ultimate'])}}}, recursive=True) }}" with_items: "{{ docker_compose_parsed.services }}" - name: Expose Redis port to allow connecting from redis-cli set_fact: docker_compose_parsed: "{{ docker_compose_parsed | combine({'services': {'redis': {'ports': ['6379:6379']}}}, recursive=True) }}" - name: Write updated docker file copy: content: "{{ docker_compose_parsed | to_yaml }}" dest: "/home/poadocker/bridge/oracle/{{ file }}.yml"