- hosts: all
  tasks:
    - name: Prepare git submodules
      shell: |
        set -ex

        jq -r '.projects | .[] | .src_dir ' ~/zuul-env.json | while read PROJECT; do
          pushd "{{ ansible_user_dir }}/${PROJECT}"
          # 1) Adjust the origin's URL so that it points to its filesystem location.
          # This makes relative URLs in submodules work.
          git config --get remote.origin.url > /dev/null && git config remote.origin.url "{{ ansible_user_dir }}/${PROJECT}" || true
          # 2) Prepare an alias for each repository, appending the .git suffix.
          # E.g. Boost uses submodule URLs which end with a .git trailing suffix.
          # That happens to be handled by many git servers automagically.
          # Instead of rewriting the submodule URLs within each repo (which would either mark
          # the repo dirty, or change its hash), use a big hammer and provide these
          # "compatibility" repository names.
          # If both a `repo` and `repo.git` already exist, then we're screwed.
          ln -s $(basename "${PROJECT}") ../$(basename "${PROJECT}").git
          popd
        done

        # 3) Update submodules via calling out to git
        cd "$(jq -r '.project.src_dir' ~/zuul-env.json)"
        git submodule update --init --recursive

        # 4) Undo changes made in step 1
        jq -r '.projects | .[] | .src_dir ' ~/zuul-env.json | while read PROJECT; do
          pushd "{{ ansible_user_dir }}/${PROJECT}"
          git config --get remote.origin.url > /dev/null && git config remote.origin.url file:///dev/null || true
          popd
        done
