* Add test for git with local modifications
(cherry picked from afca957396
)
From PR: Fix UnboundLocalError remote_head in git (#19057)
This commit is contained in:
parent
2639016847
commit
00378515e2
1 changed files with 107 additions and 4 deletions
|
@ -447,7 +447,7 @@
|
|||
- name: clear checkout_dir
|
||||
file: state=absent path={{ checkout_dir }}
|
||||
|
||||
- name: Clone example git repo that we're going to modify
|
||||
- name: "Clone example git repo that we're going to modify"
|
||||
git:
|
||||
repo: '{{ repo_update_url_1 }}'
|
||||
dest: '{{ checkout_dir }}/repo'
|
||||
|
@ -652,9 +652,6 @@
|
|||
register: git_fetch
|
||||
ignore_errors: yes
|
||||
|
||||
- name: read file
|
||||
shell: cat {{ checkout_dir }}/a
|
||||
|
||||
- name: check update arrived
|
||||
assert:
|
||||
that:
|
||||
|
@ -718,3 +715,109 @@
|
|||
gpg_version.stdout and
|
||||
(git_version.stdout | version_compare("2.1.0", '>=') or
|
||||
gpg_version.stdout | version_compare("1.4.16", '>='))
|
||||
|
||||
- name: clear checkout_dir
|
||||
file: state=absent path={{ checkout_dir }}
|
||||
|
||||
# test for https://github.com/ansible/ansible-modules-core/pull/5505
|
||||
- name: prepare old git repo
|
||||
shell: rm -rf localmods; mkdir localmods; cd localmods; git init; echo "1" > a; git add a; git commit -m "1"
|
||||
args:
|
||||
chdir: "{{repo_dir}}"
|
||||
|
||||
- name: checkout old repo
|
||||
git:
|
||||
repo: '{{ repo_dir }}/localmods'
|
||||
dest: '{{ checkout_dir }}'
|
||||
|
||||
- name: "update repo"
|
||||
shell: echo "2" > a; git commit -a -m "2"
|
||||
args:
|
||||
chdir: "{{repo_dir}}/localmods"
|
||||
|
||||
- name: "add local mods"
|
||||
shell: echo "3" > a
|
||||
args:
|
||||
chdir: "{{ checkout_dir }}"
|
||||
|
||||
- name: fetch with local mods without force (should fail)
|
||||
git:
|
||||
repo: '{{ repo_dir }}/localmods'
|
||||
dest: '{{ checkout_dir }}'
|
||||
register: git_fetch
|
||||
ignore_errors: yes
|
||||
|
||||
- name: check fetch with localmods failed
|
||||
assert:
|
||||
that:
|
||||
- git_fetch|failed
|
||||
|
||||
- name: fetch with local mods with force
|
||||
git:
|
||||
repo: '{{ repo_dir }}/localmods'
|
||||
dest: '{{ checkout_dir }}'
|
||||
force: True
|
||||
register: git_fetch_force
|
||||
ignore_errors: yes
|
||||
|
||||
- name: check update arrived
|
||||
assert:
|
||||
that:
|
||||
- "{{ lookup('file', checkout_dir+'/a' )}} == 2"
|
||||
- git_fetch_force|changed
|
||||
|
||||
- name: clear checkout_dir
|
||||
file: state=absent path={{ checkout_dir }}
|
||||
|
||||
# localmods and shallow clone
|
||||
- name: prepare old git repo
|
||||
shell: rm -rf localmods; mkdir localmods; cd localmods; git init; echo "1" > a; git add a; git commit -m "1"
|
||||
args:
|
||||
chdir: "{{repo_dir}}"
|
||||
|
||||
- name: checkout old repo
|
||||
git:
|
||||
repo: '{{ repo_dir }}/localmods'
|
||||
dest: '{{ checkout_dir }}'
|
||||
depth: 1
|
||||
|
||||
- name: "update repo"
|
||||
shell: echo "2" > a; git commit -a -m "2"
|
||||
args:
|
||||
chdir: "{{repo_dir}}/localmods"
|
||||
|
||||
- name: "add local mods"
|
||||
shell: echo "3" > a
|
||||
args:
|
||||
chdir: "{{ checkout_dir }}"
|
||||
|
||||
- name: fetch with local mods without force (should fail)
|
||||
git:
|
||||
repo: '{{ repo_dir }}/localmods'
|
||||
dest: '{{ checkout_dir }}'
|
||||
depth: 1
|
||||
register: git_fetch
|
||||
ignore_errors: yes
|
||||
|
||||
- name: check fetch with localmods failed
|
||||
assert:
|
||||
that:
|
||||
- git_fetch|failed
|
||||
|
||||
- name: fetch with local mods with force
|
||||
git:
|
||||
repo: '{{ repo_dir }}/localmods'
|
||||
dest: '{{ checkout_dir }}'
|
||||
depth: 1
|
||||
force: True
|
||||
register: git_fetch_force
|
||||
ignore_errors: yes
|
||||
|
||||
- name: check update arrived
|
||||
assert:
|
||||
that:
|
||||
- "{{ lookup('file', checkout_dir+'/a' )}} == 2"
|
||||
- git_fetch_force|changed
|
||||
|
||||
- name: clear checkout_dir
|
||||
file: state=absent path={{ checkout_dir }}
|
||||
|
|
Loading…
Reference in a new issue