Odd missing parameter

I have this excerpt from a pipeline

        path: ansible-playbook
        dir: server
        - vmps_config.yaml
        - --vault-password-file=../vars/vault_password
        - --private-key=../key/concourse.key
        - --user=concourse
        - --extra-vars="vmpsdb=../config/vmps.db"

When Concourse executes this I get the error
"The task includes an option with an undefined variable. The error was: ‘vmpsdb’ is undefined\n\nThe error appears to be in ‘/tmp/build/f5736c99/server/vmps_config.yaml’: line 5, column 5

So I do a fly intercept and I run

bash-5.0# ansible-playbook vmps_config.yaml --private-key=../key/concourse.key --user=concourse --extra-vars="vmpsdb=../config/vmps.db"

Which works fine.

I tried

  • –extra-vars=‘vmpsdb=…/config/vmps.db’
  • “–extra-vars=‘vmpsdb=…/config/vmps.db’”

Something is not being passed correctly

Any ideas?

I changed the path to echo
I can’t see anything wrong with the parameter

Does it work if you change it to be an inline script?

  path: sh
  dir: server
  - c
  - |
    ansible-playbook \
      vmps_config.yaml \
      --vault-password-file=../vars/vault_password \
      --private-key=../key/concourse.key \
      --user=concourse \