- name: SETUP-LOCAL-REPOS | create dirs file: name: "{{ item }}" state: directory with_items: - "{{ repo_dir }}/minimal" - "{{ repo_dir }}/shallow" - "{{ repo_dir }}/shallow_branches" - "{{ repo_dir }}/tag_force_push" - name: SETUP-LOCAL-REPOS | prepare minimal git repo shell: git init; echo "1" > a; git add a; git commit -m "1" args: chdir: "{{ repo_dir }}/minimal" - name: SETUP-LOCAL-REPOS | prepare git repo for shallow clone shell: | git init; echo "1" > a; git add a; git commit -m "1"; git tag earlytag; git branch earlybranch; echo "2" > a; git add a; git commit -m "2"; args: chdir: "{{ repo_dir }}/shallow" - name: SETUP-LOCAL-REPOS | set old hash var for shallow test command: 'git rev-parse HEAD~1' register: git_shallow_head_1 args: chdir: "{{ repo_dir }}/shallow" - name: SETUP-LOCAL-REPOS | prepare tmp git repo with two branches shell: | git init echo "1" > a; git add a; git commit -m "1" git checkout -b test_branch; echo "2" > a; git commit -m "2 on branch" a git checkout -b new_branch; echo "3" > a; git commit -m "3 on new branch" a args: chdir: "{{ repo_dir }}/shallow_branches" # Make this a bare one, we need to be able to push to it from clones # We make the repo here for consistency with the other repos, # but we finish setting it up in forcefully-fetch-tag.yml. - name: SETUP-LOCAL-REPOS | prepare tag_force_push git repo shell: git init --bare args: chdir: "{{ repo_dir }}/tag_force_push"