SQAaaS API (3.1.1)

Download OpenAPI specification:Download

License: GPLv3

OpenAPI specification for the Software and Service Quality Assurance as a Service (SQAaaS) component.

Returns data about criteria

query Parameters
criterion_id
string

Get data from a specific criterion

assessment
boolean
Default: false

Flag to indicate whether the criteria shall consider only assessment-related tools

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates a pipeline.

Provides a ready-to-use Jenkins pipeline based on the v2 series of jenkins-pipeline-library.

query Parameters
report_to_stdout
boolean
Default: false

Flag to indicate whether the pipeline shall print via via stdout the reports produced by the tools (required by QAA module)

Request Body schema: application/json
name
string <[A-Za-z0-9_.-]>

Name that identifies the pipeline

Array of objects (JePL_config)

Details about the pipeline configuration

object (JePL_composer)

Details about the composition of the services required for the pipeline execution

object (JePL_jenkinsfile)

Details about the Jenkins Pipeline as Code

Responses

Request samples

Content type
application/json
{
  • "name": "sqaaas-api-spec",
  • "config_data":
    [
    ],
  • "composer_data":
    {
    },
  • "jenkinsfile_data":
    {
    }
}

Response samples

Content type
application/json
{
  • "id": "dd7d8481-81a3-407f-95f0-a2f1cb382a4b"
}

Gets pipeline IDs.

Returns the list of IDs for the defined pipelines.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Creates a pipeline for assessment (QAA module).

Creates a pipeline for assessment (QAA module).

query Parameters
optional_tools
Array of strings

Optional tools that shall be accounted

Request Body schema: application/json
object (Repository)
object (Repository)
object (AssessmentDeployment)
object (AssessmentFAIR)
Array of objects (CriterionWorkflow)

Responses

Request samples

Content type
application/json
{
  • "repo_code":
    {},
  • "repo_docs":
    {},
  • "deployment":
    {
    },
  • "fair":
    {
    },
  • "criteria_workflow":
    [
    ]
}

Response samples

Content type
application/json
{
  • "id": "dd7d8481-81a3-407f-95f0-a2f1cb382a4b"
}

Get the assessment output (QAA module)

Returns the reporting and badging data from the execution of the assessment pipeline.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{
  • "meta":
    {},
  • "repository":
    [],
  • "report":
    {
    },
  • "badge":
    {}
}

Find pipeline by ID

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{
  • "id": "dd7d8481-81a3-407f-95f0-a2f1cb382a4b",
  • "name": "sqaaas-api-spec",
  • "config_data":
    [
    ],
  • "composer_data":
    {
    },
  • "jenkinsfile_data":
    {
    }
}

Update pipeline by ID

path Parameters
pipeline_id
required
string

ID of the pipeline to get

query Parameters
report_to_stdout
boolean
Default: false

Flag to indicate whether the pipeline shall print via via stdout the reports produced by the tools (required by QAA module)

Request Body schema: application/json
name
string <[A-Za-z0-9_.-]>

Name that identifies the pipeline

Array of objects (JePL_config)

Details about the pipeline configuration

object (JePL_composer)

Details about the composition of the services required for the pipeline execution

object (JePL_jenkinsfile)

Details about the Jenkins Pipeline as Code

Responses

Request samples

Content type
application/json
{
  • "name": "sqaaas-api-spec",
  • "config_data":
    [
    ],
  • "composer_data":
    {
    },
  • "jenkinsfile_data":
    {
    }
}

Response samples

Content type
application/json
{
  • "upstream_status": 0,
  • "upstream_reason": "string"
}

Delete pipeline by ID

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{
  • "upstream_status": 0,
  • "upstream_reason": "string"
}

Gets pipeline's main configuration.

Returns the content of JePL's config.yml file.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets JePL config configuration for the given pipeline.

Returns the content of JePL's config file.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets the commands builder scripts

Returns the content of the list of scripts generated for the commands builder.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets composer configuration used by the pipeline.

Returns the content of JePL's docker-compose.yml file.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets JePL composer configuration for the given pipeline.

Returns the content of JePL's composer file.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{
  • "file_name":
    {
    },
  • "content":
    {
    }
}

Gets Jenkins pipeline definition used by the pipeline.

Returns the content of JePL's Jenkinsfile file.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Gets Jenkins configuration for the given pipeline.

Returns the content of Jenkinsfile file for the given pipeline.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{
  • "file_name": "Jenkinsfile",
  • "content": "@Library(['github.com/indigo-dc/jenkins-pipeline-library@release/2.1.0']) _\n\ndef projectConfig\n\npipeline {\n agent any\n\n stages {\n stage('SQA baseline criterion: QC.Sty') {\n when {\n branch pattern: 'sqaaas', comparator: ''\n }\n steps {\n script {\n projectConfig = pipelineConfig(\n configFile: '.sqa/config.yml',\n scmConfigs: [ localBranch: true ]\n )\n buildStages(projectConfig)\n }\n }\n post {\n cleanup {\n cleanWs()\n }\n }\n }\n stage('SQA baseline criterion: QC.Doc') {\n when {\n branch pattern: 'build', comparator: ''\n }\n steps {\n script {\n projectConfig = pipelineConfig(\n configFile: '.sqa/config.snappy-peach-chicken.yml',\n scmConfigs: [ localBranch: true ]\n )\n buildStages(projectConfig)\n }\n }\n post {\n cleanup {\n cleanWs()\n }\n }\n }\n }\n}"
}

Runs pipeline.

Executes the given pipeline by means of the Jenkins API.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

query Parameters
issue_badge
boolean
Default: false

Flag to indicate whether a badge shall be issued if the pipeline succeds

repo_url
string <uri>

URL of the upstream repository to fetch the code from

repo_branch
string

Branch name of the upstream repository to fetch the code from

keepgoing
boolean
Default: false

Flag to indicate that the pipeline will run until the end

Responses

Response samples

Content type
application/json
{
  • "upstream_status": 0,
  • "upstream_reason": "string"
}

Get pipeline status.

Obtains the build URL in Jenkins for the given pipeline.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{}

Creates pull request with JePL files.

Create a pull request with the generated JePL files.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Request Body schema: application/json
repo
required
string <uri>

URL of the upstream repo

branch
string

Brach from the upstream repo used as the base for the pull request

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json

Get JePL files in compressed format.

Obtains the generated JePL files in compressed format.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Gets badge data associated with the given pipeline

Returns the badge data associated with the pipeline.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

Responses

Response samples

Content type
application/json
{}

Get output from pipeline execution

Returns the console output from the pipeline execution.

path Parameters
pipeline_id
required
string

ID of the pipeline to get

query Parameters
validate
boolean
Default: false

Flag to indicate whether the returned output shall be validated using sqaaas-reporting tool

Responses

Response samples

Content type
application/json
{
  • "QC.Lic":
    [
    ]
}