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