[PR #10445/1f8b5eea backport][stable-10] cronvar: Handle empty value string properly (#10495)
Some checks are pending
EOL CI / EOL Sanity (Ⓐ2.15) (push) Waiting to run
EOL CI / EOL Units (Ⓐ2.15+py2.7) (push) Waiting to run
EOL CI / EOL Units (Ⓐ2.15+py3.10) (push) Waiting to run
EOL CI / EOL Units (Ⓐ2.15+py3.5) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.15+alpine3+py:azp/posix/1/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.15+alpine3+py:azp/posix/2/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.15+alpine3+py:azp/posix/3/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.15+fedora37+py:azp/posix/1/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.15+fedora37+py:azp/posix/2/) (push) Waiting to run
EOL CI / EOL I (Ⓐ2.15+fedora37+py:azp/posix/3/) (push) Waiting to run
nox / Run extra sanity tests (push) Waiting to run

cronvar: Handle empty value string properly (#10445)

* Fix empty  value issue  in cronvar

* Update changelog

* Update plugins/modules/cronvar.py



* Update changelogs/fragments/10445-cronvar-reject-empty-values.yml



* Update tests/integration/targets/cronvar/tasks/main.yml



* Update tests/integration/targets/cronvar/tasks/main.yml



* Accept empty strings on cronvar

* Update plugins/modules/cronvar.py



* Update main.yml



---------


(cherry picked from commit 1f8b5eea4c)

Co-authored-by: Giorgos Drosos <56369797+gdrosos@users.noreply.github.com>
Co-authored-by: Felix Fontein <felix@fontein.de>
This commit is contained in:
patchback[bot] 2025-07-28 06:47:10 +02:00 committed by GitHub
commit c8360e7d1a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 21 additions and 0 deletions

View file

@ -0,0 +1,2 @@
bugfixes:
- "cronvar - handle empty strings on ``value`` properly (https://github.com/ansible-collections/community.general/issues/10439, https://github.com/ansible-collections/community.general/pull/10445)."

View file

@ -396,6 +396,8 @@ def main():
old_value = cronvar.find_variable(name)
if ensure_present:
if value == "" and old_value != "":
value = '""'
if old_value is None:
cronvar.add_variable(name, value, insertbefore, insertafter)
changed = True

View file

@ -123,6 +123,23 @@
- custom_varcheck2.stdout == '1'
- custom_varcheck3.stdout == '0'
- name: Add variable with empty string
community.general.cronvar:
name: EMPTY_VAR
value: ""
state: present
- name: Assert empty var present
ansible.builtin.shell: crontab -l
register: result
changed_when: false
- name: Assert line is quoted
ansible.builtin.assert:
that: >-
'EMPTY_VAR=""' in result.stdout
- name: Attempt to add cron variable to non-existent parent directory
cronvar:
name: NOPARENT_VAR