Skip to content

Commit

Permalink
community.general.make: (ansible-collections#7180)
Browse files Browse the repository at this point in the history
* community.general.make:

  allows parameters without value

  closes ansible-collections#7178

* add changelog fragment for community.general.make

* correction: v != none -> v is not None

* update fragment changelog as per developer request

* add an example

* document the modification

* update example with comments as per maintainer request
  • Loading branch information
snail59 authored and Eric Trombly committed Oct 25, 2023
1 parent 1b3e2ba commit 484ff78
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 1 deletion.
2 changes: 2 additions & 0 deletions changelogs/fragments/7180-make_params_without_value.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
minor_changes:
- make - allows ``params`` to be used without value (https://github.com/ansible-collections/community.general/pull/7180).
15 changes: 14 additions & 1 deletion plugins/modules/make.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
params:
description:
- Any extra parameters to pass to make.
- If the value is empty, only the key will be used. For example, V(FOO:) will produce V(FOO), not V(FOO=).
type: dict
target:
description:
Expand Down Expand Up @@ -90,6 +91,18 @@
chdir: /home/ubuntu/cool-project
target: all
file: /some-project/Makefile
- name: build arm64 kernel on FreeBSD, with 16 parallel jobs
community.general.make:
chdir: /usr/src
jobs: 16
target: buildkernel
params:
# This adds -DWITH_FDT to the command line:
-DWITH_FDT:
# The following adds TARGET=arm64 TARGET_ARCH=aarch64 to the command line:
TARGET: arm64
TARGET_ARCH: aarch64
'''

RETURN = r'''
Expand Down Expand Up @@ -190,7 +203,7 @@ def main():
# Fall back to system make
make_path = module.get_bin_path('make', required=True)
if module.params['params'] is not None:
make_parameters = [k + '=' + str(v) for k, v in iteritems(module.params['params'])]
make_parameters = [k + (('=' + str(v)) if v is not None else '') for k, v in iteritems(module.params['params'])]
else:
make_parameters = []

Expand Down

0 comments on commit 484ff78

Please sign in to comment.