Enable GitLab API to run a pipeline for a specific commit-id or retry a successful pipeline
Problem to solve
- When I fetch some artifacts of old pipelines using GitLab API, the artifacts may be expired.
- So I need to push new branch or a tag to rebuild the artifacts (because the branch that was related to the pipeline may be advanced). But pushing such branches and tags frequently only for retrying may be noise for the repository. I don't want to do that.
- Retrying a successful job of the pipeline is useful for some cases but not enough. The pipeline may need to run entirely because of dependencies of its jobs. (c.f. https://gitlab.com/gitlab-org/gitlab-ce/issues/26645#note_57392597)
Enable GitLab API
- to run pipelines for a specific commit-id(not a branch nor a tag)
- or to retry even if the pipeline was finished successfully.