Create CI Lint API endpoint scoped to project
In https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37134 we expanded the CI Lint to use a `dry run` mode which goes deeper in the pipeline creation stack, providing a simulation of the actual pipeline creation. The `dry run` mode was implemented only for `Projects::Ci::LintsController#create` while the API endpoint still uses the legacy method via `YamlProcessor`. Converting the existing API endpoint to use `dry run` is not possible because it's project agnostic. The `dry run` is project-aware. To solve this problem we could introduce a new API endpoint scoped to projects: `POST v4/projects/:id/ci/lint` which would have `dry run` on by default. This endpoint should return: ```ruby { status: 'failed', # or success errors: [ ... ], warnings: [ ... ], jobs: [ ... ] # if status: success } ```
issue