Require `stage:` to be set if `needs:` is used

We should require stage: to be set if needs: is used.

This would allow us to have a clear intent later:

  • if stage: is missing it could be auto-generated by GitLab

This would remove the need for: https://gitlab.com/gitlab-org/gitlab-ce/issues/65505.

Related to https://gitlab.com/gitlab-org/gitlab-ce/issues/65457

Edited by Kamil Trzciński