Avoid interpolation without defined job inputs

What does this MR do?

Avoid interpolation without defined job inputs

This change set addresses a breaking change issues with the newly introduced job inputs. The issue is described in full at step-runner#369

The gist of it is that when a user already used the job input interpolation syntax (${{ ... }}) for an unrelated reason then those expressions may fail to evaluate.

We can mitigate this (this change set) by not evaluating job input interpolation expressions when no inputs are defined on the job. In this case we just use it as a literal. We go one step further and try to detect if a job input is being accessed in the interpolation expression and if so we log a warning that no inputs are defined and hence no interpolation is performed. This is done to help with debugging in case the user forgets to declare job inputs, but tries to use them.

Refs step-runner#369

Merge request reports

Loading