
Introduce new IR plugin option '--failfast' to abort execution at the first failing workflow step Change-Id: Ia79968cf7846f33fdaa05ac5bd511b614ae0784a
75 lines
1.8 KiB
YAML
75 lines
1.8 KiB
YAML
---
|
|
|
|
- name: "set deploy source variables"
|
|
set_fact:
|
|
'{{ item.0 }}': '{{ item.1 }}'
|
|
loop: '{{ deploy.1 | dictsort }}'
|
|
loop_control:
|
|
label: '{{ item.0 }}'
|
|
|
|
|
|
- name: "clean directory '{{ dest_dir }}'"
|
|
file:
|
|
path: "{{ dest_dir | realpath }}"
|
|
state: absent
|
|
when:
|
|
- clean_dir | bool
|
|
|
|
|
|
- name: "setup directory '{{ dest_dir }}'"
|
|
file:
|
|
path: "{{ dest_dir | realpath }}"
|
|
state: directory
|
|
owner: '{{ dest_user | default(omit) }}'
|
|
group: '{{ dest_group | default(omit) }}'
|
|
mode: '{{ dest_mode | default(omit) }}'
|
|
recurse: yes
|
|
become: '{{ test_become | bool }}'
|
|
register: create_dest_dir
|
|
|
|
|
|
- debug: var=create_dest_dir
|
|
|
|
|
|
- name: "override git_version and src_dir because git_refspec is '{{ git_refspec }}'"
|
|
set_fact:
|
|
git_version: 'FETCH_HEAD'
|
|
src_dir: ''
|
|
when: '(git_refspec | length) > 0'
|
|
|
|
|
|
- name: "checkout files from '{{ git_repo }}[{{ git_refspec | default(git_version) }}]' to '{{ dest_dir }}'"
|
|
git:
|
|
dest: '{{ dest_dir }}'
|
|
repo: '{{ git_repo }}'
|
|
refspec: '{{ git_refspec | default(omit) }}'
|
|
version: '{{ git_version }}'
|
|
remote: '{{ git_remote | default(omit) }}'
|
|
force: yes
|
|
register: checkout_files
|
|
when: '((src_dir | length) == 0)'
|
|
|
|
|
|
- name: "copy '{{ src_dir }}' to '{{ dest_dir }}'"
|
|
synchronize:
|
|
src: "{{ src_dir | realpath }}/."
|
|
dest: "{{ dest_dir | realpath }}"
|
|
use_ssh_args: yes
|
|
recursive: yes
|
|
delete: "{{ clean_dir | bool }}"
|
|
rsync_opts:
|
|
- '--exclude-from={{ src_dir | realpath }}/.gitignore'
|
|
register: copy_src_dir
|
|
when: '(src_dir | length) > 0'
|
|
|
|
|
|
- name: "get last change details for '{{ dest_dir }}'" # noqa 303
|
|
command:
|
|
chdir: "{{ dest_dir }}"
|
|
cmd: git log -n 1
|
|
register: get_git_log
|
|
|
|
|
|
- name: "show last change details"
|
|
debug: var=get_git_log.stdout_lines
|