• Alex Kalderimis's avatar
    Adds CI pipeline and job features · 8608938c
    Alex Kalderimis authored
    In particular this includes:
    
    - Filtering jobs by status
    - Finding jobs by ID or name
    - status as enum (better assurance of state)
    - More fields on jobs (`duration`, `allowFailure`, timestamps)
    
    An example query is:
    
    ```graphql
    query($path: ID!, $name: String!) {
      project(fullPath: $path) {
        pipelines(first: 1) {
          nodes {
            jobs(statuses: [FAILED]) {
              nodes {
                name
                duration
                allowFailure
                queuedAt
                startedAt
              }
            }
            job(name: $name) {
              name
              status
            }
          }
        }
      }
    }
    ```
    
    Some CiJob fields are added, including CiJob.stage
    Rather than a string, CiJob.stage is a full Stage object.
    8608938c
pipeline_spec.rb 7.31 KB