From 13e99d9ba8ca9d0a5fc833f96a72793167e66213 Mon Sep 17 00:00:00 2001 From: Ruediger Pluem Date: Mon, 20 Jan 2025 15:40:48 +0100 Subject: [PATCH 1/2] Add Ansible diff mode Add the possibility to turn on Ansible diff mode by the new input parameter diff_mode. Signed-off-by: Ruediger Pluem --- lib/smart_proxy_ansible/runner/ansible_runner.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/smart_proxy_ansible/runner/ansible_runner.rb b/lib/smart_proxy_ansible/runner/ansible_runner.rb index 51302cd..af0a7a5 100644 --- a/lib/smart_proxy_ansible/runner/ansible_runner.rb +++ b/lib/smart_proxy_ansible/runner/ansible_runner.rb @@ -22,6 +22,7 @@ def initialize(input, suspended_action:, id: nil) @verbosity_level = action_input[:verbosity_level] @rex_command = action_input[:remote_execution_command] @check_mode = action_input[:check_mode] + @diff_mode = action_input[:diff_mode] @tags = action_input[:tags] @tags_flag = action_input[:tags_flag] @passphrase = action_input['secrets']['key_passphrase'] @@ -213,7 +214,7 @@ def start_ansible_runner end def cmdline - cmd_args = [tags_cmd, check_cmd].reject(&:empty?) + cmd_args = [tags_cmd, check_cmd, diff_cmd].reject(&:empty?) return nil unless cmd_args.any? cmd_args.join(' ') end @@ -227,6 +228,10 @@ def check_cmd check_mode? ? '"--check"' : '' end + def diff_cmd + diff_mode? ? '"--diff"' : '' + end + def verbosity '-' + 'v' * @verbosity_level.to_i end @@ -239,6 +244,10 @@ def check_mode? @check_mode == true && @rex_command == false end + def diff_mode? + @diff_mode.nil? ? false : @diff_mode == true + end + def prepare_directory_structure inner = %w[inventory project env].map { |part| File.join(@root, part) } ([@root] + inner).each do |path| From a44419db161eecef7881d39b3fa555ce6451128b Mon Sep 17 00:00:00 2001 From: Ruediger Pluem <53253255+rpluem-vf@users.noreply.github.com> Date: Mon, 20 Jan 2025 16:20:03 +0100 Subject: [PATCH 2/2] Update lib/smart_proxy_ansible/runner/ansible_runner.rb MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Adam Růžička --- lib/smart_proxy_ansible/runner/ansible_runner.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/smart_proxy_ansible/runner/ansible_runner.rb b/lib/smart_proxy_ansible/runner/ansible_runner.rb index af0a7a5..58907b1 100644 --- a/lib/smart_proxy_ansible/runner/ansible_runner.rb +++ b/lib/smart_proxy_ansible/runner/ansible_runner.rb @@ -245,7 +245,7 @@ def check_mode? end def diff_mode? - @diff_mode.nil? ? false : @diff_mode == true + @diff_mode == true end def prepare_directory_structure