Good day everyone,
I am experiencing an issue with Gitlab CI/CD Pipeline inputs; for some reason, my submitted entries are ignored and the defaults are taken instead. I have not experienced this issue in the past. Gitlab version is 19.5.1-ee.
The main pipeline inputs are defined as follows:
# Context; the pipeline is meant to automatically updated subscribed machines via Ansible
spec:
inputs:
ansible-install-arguments:
description: Arguments to pass to the ansible-galaxy install command
default: "--ignore-certs" # necessary due to SSL-inspection
type: string
ansible-playbook-arguments:
description: Arguments to pass to the ansible-playbook command
default: ""
type: string
ansible-playbook-files:
description: The playbook file(s)
default: playbooks/main.yml
type: string
list-updates:
description: Only run the list-updates step, do not update machines
default: false
type: boolean
update-linux-now:
description: Apply updates and reboot the Linux machines regardless of the time
default: false
type: boolean
cleanup-kernels:
description: Remove old kernel installations
default: false
type: boolean
select-hosts:
description: Limit the execution to a selection of hosts from the inventory file. See https://docs.ansible.com/projects/ansible/latest/inventory_guide/intro_patterns.html for more info.
default: "all"
type: string
---
For debugging purposes, I’ve added a part to my before_script sections to print these inputs:
# DEBUG
printf "ansible-install-arguments: $[[ inputs.ansible-install-arguments ]]\n"
printf "ansible-playbook-arguments: $[[ inputs.ansible-playbook-arguments ]]\n"
printf "ansible-playbook-files: $[[ inputs.ansible-playbook-files ]]\n"
printf "list-updates: $[[ inputs.list-updates ]]\n"
printf "update-linux-now: $[[ inputs.update-linux-now ]]\n"
printf "cleanup-kernels: $[[ inputs.cleanup-kernels ]]\n"
printf "select-hosts: $[[ inputs.select-hosts ]]\n"
And when I modify any of these values when I create a pipeline…
…the result still prints the defaults:
$ # DEBUG # collapsed multi-line command
ansible-install-arguments: --ignore-certs
ansible-playbook-arguments:
ansible-playbook-files: playbooks/main.yml
list-updates: false
update-linux-now: false
cleanup-kernels: false
select-hosts: all
I get no error message, no feedback, it just completely ignores whatever I put in there. I know that the syntax is correct, because this does work on another instance, also version 19.5.1. Have I missed a setting somewhere, or could this be a bug? I’ve tried looking through currently open bugs, but for some reason the open issues refuse to load on our corporate network.
