Add additional arguments for Project.pipelines

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem to solve

Project.pipelines currently exposes these arguments:

status: PipelineStatusEnum
Filter pipelines by their status

ref: String
Filter pipelines by the ref they are run for

sha: String
Filter pipelines by the sha of the commit they are run for

after: String
Returns the elements in the list that come after the specified cursor.

before: String
Returns the elements in the list that come before the specified cursor.

first: Int
Returns the first n elements from the list.

last: Int
Returns the last n elements from the list.

This is limited currently, it would be good to add some more arguments like the following list below. Please note this isn't an exhaustive list, so if there are any other arguments worth adding, we should do this at the same time (perhaps ensure we can use the existing arguments from the regular API - List project pipelines)?

To add:

iid: String
IID of the pipelines. For example, "1"

iids: [String!]
List of IIDs of pipelines. For example, [1, 2]

durationBefore: Int
Pipelines that completed before this duration

durationAfter: Int
Pipelines that completed after this duration

createdBefore: Time
Pipelines created before this date

createdAfter: Time
Pipelines created after this date

updatedBefore: Time
Pipelines updated before this date

updatedAfter: Time
Pipelines updated after this date

startedBefore: Time
Pipelines updated before this date

startedAfter: Time
Pipelines updated after this date

Intended users

Proposal

Add additional arguments to Project.pipelines so users can filter down the pipelines as they desire.

Further details

Permissions and Security

Documentation

Availability & Testing

What does success look like, and how can we measure that?

What is the type of buyer?

Is this a cross-stage feature?

Links / references

Edited by 🤖 GitLab Bot 🤖