The docs seem to imply that timeout-minutes can be used both on a job and a step level.
Added it to a step, and the job hung up on some downloads on an earlier step, and it timed out.
IOW, adding it at a step level seems to affect the job, or maybe is applied to all steps?
Once the total minutes taken by the steps that have ran or started reaches the set timeout-minutes of job, the whole job will be canceled, even if the timeout-minutes of the step is set to more than that of job.
For example, the timeout-minutes of job is 3, and the timeout-minutes of a step in the job is 6. When the job starts to run, the step only has 3 minutes at most to run. If the earlier steps have taken some minutes before this step, the remaining minutes will be less.