REST API Reference
Authentication
Fatbuildrweb supports optional authentication, depending on the loaded policy. The authentication is based on JWT tokens. Users can obtain a valid token by running this command:
$ fatbuildrctl tokens generate
Refer to fatbuildrctl manpage
tokens section for more details.
|
The tokens must be transmitted to the server as a Bearer token through the
Authorization
HTTP request header, as defined in
RFC6750.
Most endpoints are associated to a permission action as referenced in the sections below. The policy defines which roles (including the anonymous role) are granted to perform these actions.
Fatbuildrweb determines the user encoded in the JWT token provided the request headers. Then, it searches for the roles associated this user. If the request is sent without token, the anonymous role is selected. Then, Fatbuildrweb checks one of the roles is permitted to perform the permission action associated to the endpoint. If the user is not permitted for this permission action, the server responds with HTTP/403 Forbidden code.
API Endpoints
Instances
List of Available Instances
GET /instances.json
No permission action required.
Returns the list of available instances on Fatbuildr server.
This endpoint is not available when Fatbuildrweb component runs in mono-instance mode. |
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[Instance object] |
Example
Request:
$ curl -X GET http://localhost:5000/instances.json
Response:
[
{
"id": "default",
"name": "Default Fatbuildr Instance",
"userid": "Maintainers <maintainers@example.org>"
},
{
"id": "prod",
"name": "Production Fatbuildr Instance",
"userid": "Maintainers <maintainers@example.org>"
},
]
All the following API endpoints are composed of the instance path parameter as they manipulate data from a specific instance. However, this instance path attribute is not required when Fatbuildrweb component runs in mono-instance mode. In this mode, all the following endpoints must be considered without the instance path attribute. |
Instance Information
GET /{instance}/instance.json
Permission action: view-registry
Returns instance information.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
Instance object |
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/instance.json
Response:
{
"id": "default",
"name": "Default Fatbuildr Instance",
"userid": "Maintainers <maintainers@example.org>"
}
Pipelines
Pipelines Architectures
GET /{instance}/pipelines/architectures.json
Permission action: view-pipeline
Returns the list of CPU architectures supported in the instance pipelines.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[string] |
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/pipelines/architectures.json
Response:
["x86_64","arm64"]
Pipelines Formats
GET /{instance}/pipelines/formats.json
Permission action: view-pipeline
Returns the artifacts formats defined in instance pipelines with their distributions and associated build environments and derivatives.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Query Parameters
Name | Description | Type | Required | Example |
---|---|---|---|---|
|
Name of artifact format, to filter responses for this particular format. |
string |
|
|
|
Name of registry distribution, to filter responses for this particular distribution. |
string |
|
|
|
Name of registry distribution derivative, to filter responses for this particular distribution derivative. |
string |
|
|
|
Name of artifact build environment, to filter responses for this particular build environment. |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
PipelineFormat object |
403 |
Forbidden |
|
Error object |
404 |
Instance, derivative or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/pipelines/formats.json
Response:
{
"deb": [
{
"derivatives": [
"main",
"foox"
],
"distribution": "bookworm",
"environment": "bookworm"
},
{
"derivatives": [
"main",
"foox"
],
"distribution": "sid",
"environment": "sid"
}
],
"osi": [
{
"derivatives": [
"main"
],
"distribution": "containers",
"environment": null
}
],
"rpm": [
{
"derivatives": [
"main",
"foox"
],
"distribution": "el8",
"environment": "rocky-8"
}
]
}
Request:
$ curl -X GET http://localhost:5000/default/pipelines/formats.json?format=rpm
Response:
{
"rpm": [
{
"derivatives": [
"main",
"foox"
],
"distribution": "el8",
"environment": "rocky-8"
}
]
}
Request:
$ curl -X GET http://localhost:5000/default/pipelines/formats.json?distribution=el8
Response:
{
"rpm": [
{
"derivatives": [
"main",
"foox"
],
"distribution": "el8",
"environment": "rocky-8"
}
]
}
Registries
Registry Formats
GET /{instance}/registry.json
Permission action: view-registry
Returns the list of artifacts formats available in a registry.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[string] |
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/registry.json
Response:
["rpm","deb"]
Format Distributions
GET /{instance}/registry/{format}.json
Permission action: view-registry
Returns the list of available distributions in a registry for a given format.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Artifact format name |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[string] |
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key not found or format not supported by the instance |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/registry/rpm.json
Response:
["el8"]
Distribution Derivatives
GET /{instance}/registry/{format}/{distribution}.json
Permission action: view-registry
Returns the list of derivatives available for the distribution.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Artifact format name |
string |
|
|
Distribution name |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[string] |
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key not found, format not supported by the instance or distribution not found in registry. |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/registry/deb/bullseye.json
Response:
[
"main",
"foox"
]
Derivative Artifacts
GET /{instance}/registry/{format}/{distribution}/{derivative}.json
Permission action: view-registry
Returns the list of artifacts in a distribution derivative.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Artifact format name |
string |
|
|
Distribution name |
string |
|
|
Name of distribution derivative |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[Artifact object] |
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key not found, format not supported by the instance, distribution or derivative not found in registry. |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/registry/deb/bullseye/main.json
Response:
[
{
"architecture": "noarch",
"name": "fatbuildr",
"size": 580300,
"version": "0.1-1.deb11"
},
{
"architecture": "noarch",
"name": "fatbuildr-common",
"size": 8824,
"version": "0.1-1.deb11"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers",
"size": 36364,
"version": "0.1-1.deb11"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers-dbgsym",
"size": 6320,
"version": "0.1-1.deb11"
},
{
"architecture": "src",
"name": "fatbuildr",
"size": 0,
"version": "0.1-1.deb11"
}
]
Artifact Information
GET /{instance}/registry/{format}/{distribution}/{derivative}/{architecture}/{artifact}.json
Permission action: view-registry
Returns full description of an artifact in registry.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Artifact format name |
string |
|
|
Dis$tribution name |
string |
|
|
Name of distribution derivative |
string |
|
|
Name of CPU architecture of the artifact. The special value |
string |
|
|
Name of the artifact |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
|
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key not found, format not supported by the instance, distribution, derivative, architecture or artifact not found in registry. |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/registry/deb/bullseye/main/src/fatbuildr.json
Response:
{
"artifact": "fatbuildr",
"binaries": [
{
"architecture": "noarch",
"name": "fatbuildr",
"size": 587200,
"version": "0.1-2.deb11"
},
{
"architecture": "noarch",
"name": "fatbuildr-common",
"size": 10792,
"version": "0.1-2.deb11"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers",
"size": 13012,
"version": "0.1-2.deb11"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers-dbgsym",
"size": 5988,
"version": "0.1-2.deb11"
}
],
"changelog": [
{
"author": "John Doe <john@doe.org>",
"changes": [
"Another Fatbuildr test build"
],
"date": 1655841969,
"version": "0.1-2.deb11"
},
{
"author": "John Doe <john@doe.org>",
"changes": [
"Fatbuildr test build"
],
"date": 1655838256,
"version": "0.1-1.deb11"
}
]
}
Request:
$ curl -X GET http://localhost:5000/default/registry/deb/bullseye/main/x86_64/fatbuildr-wrappers.json
Response:
{
"artifact": "fatbuildr-wrappers",
"changelog": [
{
"author": "John Doe <john@doe.org>",
"changes": [
"Another Fatbuildr test build"
],
"date": 1655841969,
"version": "0.1-2.deb11"
},
{
"author": "John Doe <john@doe.org>",
"changes": [
"Fatbuildr test build"
],
"date": 1655838256,
"version": "0.1-1.deb11"
}
],
"source": {
"architecture": "src",
"name": "fatbuildr",
"size": 0,
"version": "0.1-2.deb11"
},
"content": [
{
"path": "/usr",
"size": 0,
"type": "d"
},
{
"path": "/usr/libexec",
"size": 0,
"type": "d"
},
{
"path": "/usr/libexec/fatbuildr",
"size": 0,
"type": "d"
},
{
"path": "/usr/libexec/fatbuildr/u-mkosi",
"size": 14504,
"type": "f"
},
{
"path": "/usr/libexec/fatbuildr/u-nspawn",
"size": 14504,
"type": "f"
},
{
"path": "/usr/share",
"size": 0,
"type": "d"
},
{
"path": "/usr/share/doc",
"size": 0,
"type": "d"
},
{
"path": "/usr/share/doc/fatbuildr-wrappers",
"size": 0,
"type": "d"
},
{
"path": "/usr/share/doc/fatbuildr-wrappers/changelog.Debian.gz",
"size": 271,
"type": "f"
},
{
"path": "/usr/share/doc/fatbuildr-wrappers/changelog.gz",
"size": 6897,
"type": "f"
},
{
"path": "/usr/share/doc/fatbuildr-wrappers/copyright",
"size": 53,
"type": "f"
}
]
}
Artifact Deletion
DELETE /{instance}/registry/{format}/{distribution}/{derivative}/{architecture}/{artifact}.json
Permission action: edit-registry
Delete an artifact from registry.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Artifact format name |
string |
|
|
Dis$tribution name |
string |
|
|
Name of distribution derivative |
string |
|
|
Name of CPU architecture of the artifact. The special value |
string |
|
|
Name of the artifact |
string |
|
Query Parameters
Name | Description | Type | Required | Example |
---|---|---|---|---|
|
Version of the artifact. |
string |
✅ |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
|
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key not found, format not supported by the instance, distribution, derivative, architecture or artifact not found in registry. |
|
Error object |
Examples
Request:
$ curl -X DELETE http://localhost:5000/default/registry/deb/bullseye/main/src/fatbuildr.json?version=2.0.1
Response:
{
"task": "ef6176ad-9489-449a-804e-77370fee2540"
}
Artifact Search
GET /{instance}/search.json
Permission action: view-registry
Search for artifacts in instance registries.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Query Parameters
Name | Description | Type | Required | Example |
---|---|---|---|---|
|
Part of artifact name to search. All artifacts whose name contains this parameter are selected in results. |
string |
✓ |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
|
400 |
Missing artifact query parameter |
|
|
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/search.json?artifact=fatbuildr
Response:
{
"deb": {
"bullseye": {
"main": [
{
"architecture": "noarch",
"name": "fatbuildr",
"size": 587200,
"version": "0.1-1.deb11"
},
{
"architecture": "noarch",
"name": "fatbuildr-common",
"size": 10792,
"version": "0.1-1.deb11"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers",
"size": 13012,
"version": "0.1-1.deb11"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers-dbgsym",
"size": 5988,
"version": "0.1-1.deb11"
},
{
"architecture": "src",
"name": "fatbuildr",
"size": 0,
"version": "0.1-1.deb11"
}
]
}
},
"rpm": {
"el8": {
"main": [
{
"architecture": "noarch",
"name": "fatbuildr",
"size": 464556,
"version": "0.1-1.el8"
},
{
"architecture": "noarch",
"name": "fatbuildr-common",
"size": 8560,
"version": "0.1-1.el8"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers",
"size": 12748,
"version": "0.1-1.el8"
},
{
"architecture": "x86_64",
"name": "fatbuildr-wrappers-dbgsym",
"size": 9748,
"version": "0.1-1.el8"
},
{
"architecture": "src",
"name": "fatbuildr",
"size": 2166701,
"version": "0.1-1.el8"
}
]
}
}
}
Tasks
Submit Build Task
POST /{instance}/build
Permission action: build
Submit artifact build task in queue.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Consumes
Content Type | Data Type |
---|---|
|
BuildSubmission object |
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
|
400 |
Missing form parameter |
|
|
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X POST \
-F "format=deb" \
-F "distribution=bullseye" \
-F "architectures=x84_64" \
-F "derivative=main" \
-F "artifact=fatbuildr" \
-F "user_name=John Doe" \
-F "user_email=john.doe@example.org" \
-F "message=Test new awesome feature" \
-F "tarball=@artifact.tar.xz" \
http://localhost:5000/default/build
Response:
{
"task": "ef6176ad-9489-449a-804e-77370fee2540"
}
Running Task
GET /{instance}/running.json
Permission action: view-task
Returns information about the running task.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
Task object or null |
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/running.json
Response:
{
"architectures": [
"x86_64"
],
"archives": [
{
"id": "fatbuildr",
"path": "/var/cache/fatbuildr/default/fatbuildr/v1.1.0.tar.gz"
},
{
"id": "bootstrap",
"path": "/var/cache/fatbuildr/default/fatbuildr/bootstrap-5.2.3-dist.zip"
}
],
"artifact": "fatbuildr",
"derivative": "main",
"distribution": "bullseye",
"email": "john.doe@example.org",
"format": "deb",
"id": "c8c9935e-44c9-48de-a318-b6060c08b8c8",
"io": {
"console": "/var/lib/fatbuildr/workspaces/default/c8c9935e-44c9-48de-a318-b6060c08b8c8/console.sock",
"interactive": null,
"journal": {
"path": "/var/lib/fatbuildr/workspaces/default/c8c9935e-44c9-48de-a318-b6060c08b8c8/task.journal"
}
},
"message": "Test of new feature",
"name": "artifact build",
"place": "/var/lib/fatbuildr/workspaces/default/c8c9935e-44c9-48de-a318-b6060c08b8c8",
"state": "running",
"submission": 1656074753,
"user": "John Doe"
}
Pending Tasks
GET /{instance}/queue.json
Permission action: view-task
Returns list of pending tasks.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
array[Task object] |
403 |
Forbidden |
|
Error object |
404 |
Instance or JWT signing key not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/queue.json
Response:
[
{
"architectures": [
"x86_64"
],
"archives": [],
"artifact": "fatbuildr",
"derivative": "main",
"distribution": "bullseye",
"email": "john.doe@example.org",
"format": "deb",
"id": "604a1348-dd3a-4082-b78d-78563c728bef",
"io": {
"console": "/var/lib/fatbuildr/workspaces/default/604a1348-dd3a-4082-b78d-78563c728bef/console.sock",
"interactive": null,
"journal": {
"path": "/var/lib/fatbuildr/workspaces/default/604a1348-dd3a-4082-b78d-78563c728bef/task.journal"
}
},
"message": "Test of new feature on Debian bullseye",
"name": "artifact build",
"place": "/var/lib/fatbuildr/workspaces/default/604a1348-dd3a-4082-b78d-78563c728bef",
"state": "pending",
"submission": 1656075042,
"user": "John Doe"
},
{
"architectures": [
"x86_64"
],
"archives": [],
"artifact": "fatbuildr",
"derivative": "main",
"distribution": "bookworm",
"email": "john.doe@example.org",
"format": "deb",
"id": "ace984e3-4d5b-4aa1-a2ba-5997ea6ae7e6",
"io": {
"console": "/var/lib/fatbuildr/workspaces/default/ace984e3-4d5b-4aa1-a2ba-5997ea6ae7e6/console.sock",
"interactive": null,
"journal": {
"path": "/var/lib/fatbuildr/workspaces/default/ace984e3-4d5b-4aa1-a2ba-5997ea6ae7e6/task.journal"
}
},
"message": "Test of new feature on Debian bookworm",
"name": "artifact build",
"place": "/var/lib/fatbuildr/workspaces/default/ace984e3-4d5b-4aa1-a2ba-5997ea6ae7e6",
"state": "pending",
"submission": 1656075042,
"user": "John Doe"
}
]
Task Information
GET /{instance}/tasks/{task}.json
Permission action: view-task
Returns information about an archived task.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Task UUID |
uuid |
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
Task object or null |
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key or task not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/tasks/c8c9935e-44c9-48de-a318-b6060c08b8c8.json
Response:
{
"architectures": [
"x86_64"
],
"archives": [
{
"id": "fatbuildr",
"path": "/var/cache/fatbuildr/default/fatbuildr/v1.1.0.tar.gz"
},
{
"id": "bootstrap",
"path": "/var/cache/fatbuildr/default/fatbuildr/bootstrap-5.2.3-dist.zip"
}
],
"artifact": "fatbuildr",
"derivative": "main",
"distribution": "bullseye",
"email": "john.doe@example.org",
"format": "deb",
"id": "c8c9935e-44c9-48de-a318-b6060c08b8c8",
"io": {
"console": "/var/lib/fatbuildr/workspaces/default/c8c9935e-44c9-48de-a318-b6060c08b8c8/console.sock",
"interactive": null,
"journal": {
"path": "/var/lib/fatbuildr/workspaces/default/c8c9935e-44c9-48de-a318-b6060c08b8c8/task.journal"
}
},
"message": "Test of new feature",
"name": "artifact build",
"place": "/var/lib/fatbuildr/workspaces/default/c8c9935e-44c9-48de-a318-b6060c08b8c8",
"state": "finished",
"submission": 1656074753,
"user": "John Doe"
}
Task Journal
GET /{instance}/watch/{task}.journal
Permission action: view-task
Returns the binary journal of either running or archived task.
The response is a binary file encoded with Fatbuildr specific
ConsoleMessage protocol. This is supposed to be consumed by
fatbuildrctl watch command only.
|
When the task is running, the output is streamed until the task is over. In this case, the duration of the response might be significant. |
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
|
Task UUID |
uuid |
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
file |
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key or task not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/watch/c8c9935e-44c9-48de-a318-b6060c08b8c8.journal \
--output task.journal
Response:
$ file task.journal
task.journal: data
Keyring
Keyring Armored Public Key
GET /{instance}/keyring.asc
Permission action: view-keyring
Download instance keyring public key in armored format.
Path Parameters
Name | Description | Type | Example |
---|---|---|---|
|
Name of Fatbuildr instance |
string |
|
Responses
Code | Description | Content Type | Data Type |
---|---|---|---|
200 |
Operation successful |
|
string |
403 |
Forbidden |
|
Error object |
404 |
Instance, JWT signing key or keyring not found |
|
Error object |
Examples
Request:
$ curl -X GET http://localhost:5000/default/keyring.asc
Response:
-----BEGIN PGP PUBLIC KEY BLOCK-----
…
-----END PGP PUBLIC KEY BLOCK-----
Objects
Instance
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Instance identifier |
✓ |
string |
|
Full name of the instance |
✓ |
string |
|
The user identifier of instance signing keyring |
✓ |
string |
PipelineFormat
Additional Properties type: array[PipelineFormatItem object]
PipelineFormatItem
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Name of registry distribution |
✓ |
string |
|
Name of build environment |
✓ |
string |
|
List of derivatives available for the associated registry distribution |
✓ |
array[string] |
ArtifactDescription
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Name of the artifact |
✓ |
string |
|
Corresponding list of produced binary artifacts (only for source artifact). |
array[Artifact object] |
|
|
Corresponding original source artifact (only for binary artifact). |
Artifact object |
|
|
List of artifact changelog entries |
✓ |
array[ChangelogEntry object] |
|
List of artifact content |
✓ |
array[ArtifactContent object] |
Artifact
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Name of CPU architecture of the artifact |
✓ |
string |
|
Name of artifact |
✓ |
string |
|
Version number of the artifact |
✓ |
string |
|
Size of the artifact in bytes |
✓ |
integer |
ArtifactContent
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Path to file in artifact |
✓ |
string |
|
File type encoded as a single character ( |
✓ |
string |
|
File size in bytes |
✓ |
integer |
ChangelogEntry
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Artifact build author with name and email |
✓ |
string |
|
List of changes with the build |
✓ |
array[string] |
|
Timestamp since epoch of the build |
✓ |
integer |
|
Version number of the artifact |
✓ |
string |
ArtifactSearchResult
Additional Properties type: ArtifactFormatSearchResult object
ArtifactFormatSearchResult
Additional Properties type: ArtifactDistributionSearchResult object
ArtifactDistributionSearchResult
Additional Properties type: ArtifactDerivativeSearchResult object
ArtifactDerivativeSearchResult
Additional Properties type: array[Artifact object]
BuildSubmission
Additional Properties type: array[Artifact object]
Properties:
Name | Description | Required | Type | ||
---|---|---|---|---|---|
|
Comma-separated list of targeted CPU architectures |
✓ |
string |
||
|
Name of artifact |
✓ |
string |
||
|
Distribution derivative name |
✓ |
string |
||
|
Distribution name |
✓ |
array[string] |
||
|
Artifact format |
✓ |
string |
||
|
Build description integrated in changelog entry |
✓ |
string |
||
|
Optional archive of artifact sources for identifier
|
file |
|||
|
Tarball with artifact definition files |
✓ |
file |
||
|
User name |
✓ |
string |
||
|
User email address |
✓ |
string |
SourceArchive
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Artifact source identifier |
✓ |
string |
|
Absolute path of artifact source archive |
✓ |
string |
Task
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Build environment CPU architecture (only for image build environment creation and image build environment update tasks) |
string |
|
|
Build targeted CPU architectures (only for artifact build tasks) |
array[string] |
|
|
List of artifact source archives used for build (only for artifact build tasks) |
array[SourceArchive object] |
|
|
Artifact name (only for artifact build and artifact deletion tasks) |
string (for artifact build) or Artifact object (for artifact deletion task) |
|
|
Distribution derivative name (only for artifact build tasks) |
string |
|
|
Distribution name (only for artifact build tasks) |
string |
|
|
Keyring renewal duration time (only for keyring renewal tasks) |
string |
|
|
User email address (only for artifact build tasks) |
string |
|
|
Build environment name (only for image build environment creation and image build environment update tasks) |
string |
|
|
Force image creation when already existing (only for image creation tasks) |
boolean |
|
|
Artifact format (only for artifact build, image creation, image update, image build environment creation and image build environment update tasks) |
string |
|
|
Submitted task UUID |
✓ |
uuid |
|
Task IO channels |
✓ |
TaskIO object |
|
Build description integrated in changelog entry (only for artifact build tasks) |
string |
|
|
Task type name |
✓ |
string |
|
Absolute path to task running directory |
✓ |
string |
|
Current status of task |
✓ |
string |
|
Timestamp since epoch of task submission |
✓ |
integer |
|
User name (only for artifact build tasks) |
string |
TaskIO
Properties:
Name | Description | Required | Type |
---|---|---|---|
|
Absolute path to console Unix socket |
✓ |
string |
|
Indicates if task is in interactive mode |
✓ |
boolean |
|
Task journal object |
✓ |
TaskIOJournal object |