47539 lines
1.5 MiB
47539 lines
1.5 MiB
---
|
|
openapi: 3.0.0
|
|
servers:
|
|
- url: "/"
|
|
tags:
|
|
- name: Announcements
|
|
- name: Attribute Namespaces
|
|
- name: Attributes
|
|
- name: Build
|
|
- name: Comments
|
|
- name: Configuration
|
|
- name: Distributions
|
|
- name: General Information
|
|
- name: Groups
|
|
- name: Issue Trackers
|
|
- name: Notifications
|
|
- name: Person
|
|
- name: Published Binaries
|
|
- name: Requests
|
|
- name: Search
|
|
description: |
|
|
All endpoints besides the owner search listed in the search group use Xpath expressions. The `match` query parameter is used
|
|
to pass the Xpath predicate. The individual endpoints refer to different objects like Packages, Projects, Issues and more...
|
|
Please refer to the documentation of the individual search endpoints to know which attributes can be accessed through the predicate,
|
|
and which extra query parameters are supported or might be required in order to run the search.
|
|
|
|
|
|
These functions can be used with the predicates: `boolean`, `contains`, `not`, `starts_with`, `ends_with`.
|
|
|
|
_Example_:
|
|
|
|
For a list of all projects where the name starts with "OBS:".
|
|
|
|
`/search/project?match=starts_with(@name,'OBS:')`
|
|
|
|
|
|
More than one predicate can be combined with the following operators: `eq`, `and`, `or`, `neq`, `gt`, `lt`, `gteq`, `lteq`.
|
|
|
|
_Example_:
|
|
|
|
To receive details about the package "obs-server" that is part of the project "OBS:Server:Unstable".
|
|
|
|
`/search/package?match=@name='obs-server'+and+@project='OBS:Server:Unstable'`
|
|
- name: Sources
|
|
- name: Sources - Projects
|
|
- name: Sources - Packages
|
|
- name: Sources - Files
|
|
- name: Staging Workflow
|
|
- name: Statistics
|
|
- name: Status Messages
|
|
- name: Status Project
|
|
- name: Status Reports
|
|
- name: Status Reports - Required Checks
|
|
- name: Trigger
|
|
- name: Workers
|
|
info:
|
|
description: |
|
|
The _Open Build Service API_ is an XML API. To make sure you are querying the API and not the Web User Interface, provide the `Accept: application/xml; charset=utf-8` header in your API requests.
|
|
|
|
To authenticate, use [HTTP basic authentication](https://en.wikipedia.org/wiki/Basic_access_authentication) by passing the _Authorization_ header in the form of `Authorization: Basic <credentials>`.
|
|
|
|
There is no API versioning, since there is no need for it right now.
|
|
|
|
Only rudimentary rate limiting is implemented, so please be gentle when using the API concurrently, especially with potentially expensive operations.
|
|
|
|
Your OBS Admin might have implemented other authentication schemes or stricter rate limiting in front of the application. Check the [site main page](/) for details.
|
|
|
|
For command-line users, we recommend using [osc](https://github.com/openSUSE/osc) with its _api_ command to interact with the API.
|
|
It's as simple as this example: `osc api /about` (_about_ is one of the endpoints documented below)
|
|
|
|
In order to make sure that the XML that is send in a requests body is in the expected format, the API validates it.
|
|
Either against a XML Schema Definition (`.xsd`) or a RELAX NG Schema (`.rng`). The schemas are mentioned
|
|
in the endpoint documentation. If there is no schema file mentioned, no validation of the XML is done.
|
|
In case the XML is not valid, a validation error is reported.
|
|
|
|
The legacy API documentation is reachable [here](https://api.opensuse.org/apidocs-old/index).
|
|
version: 2.10.50
|
|
title: Open Build Service API
|
|
contact:
|
|
url: https://openbuildservice.org/
|
|
name: Open Build Service
|
|
license:
|
|
url: https://github.com/openSUSE/open-build-service/blob/master/COPYING
|
|
name: GNU General Public License v2.0
|
|
paths:
|
|
"/about":
|
|
get:
|
|
summary: Get information about API.
|
|
description: Get generic information about the API.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [about.xsd](../schema/about.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
required:
|
|
- title
|
|
- description
|
|
- revision
|
|
properties:
|
|
title:
|
|
type: string
|
|
example: Open Build Service API
|
|
description:
|
|
type: string
|
|
example: API to the Open Build Service
|
|
revision:
|
|
type: string
|
|
example: 2.11~alpha.20201110T101235.7b5d82e614
|
|
last_deployment:
|
|
type: string
|
|
example: '2020-11-10 15:07:02 +0000'
|
|
commit:
|
|
type: string
|
|
example: 7b5d82e6143442a8eb8459f35cc94d2fbe263ebe
|
|
xml:
|
|
name: about
|
|
tags:
|
|
- General Information
|
|
"/announcements":
|
|
get:
|
|
deprecated: true
|
|
summary: List all announcements.
|
|
description: List all messages from type announcement.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
status_message:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
message:
|
|
type: string
|
|
user:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
scope:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
xml:
|
|
name: status_message
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status_messages
|
|
example:
|
|
count: 2
|
|
status_message:
|
|
- id: 2
|
|
message: OBS 3.0 is released!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-15 13:28:22 UTC
|
|
- id: 1
|
|
message: Feature number 42 was implemented!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-12 11:18:12 UTC
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Announcements
|
|
post:
|
|
deprecated: true
|
|
summary: Create an announcement.
|
|
description: |
|
|
Create an announcement.
|
|
|
|
This is only for users with roles "Admin" or "Staff".
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: Announcement definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
content:
|
|
type: string
|
|
xml:
|
|
name: announcement
|
|
example:
|
|
title: OBS 3.0 released!
|
|
content: We are glad to announce that OBS 3.0 is released.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Invalid Announcement.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
message_cant_be_blank:
|
|
summary: Message can't be blank
|
|
value:
|
|
code: invalid_announcement
|
|
summary: '["Message can''t be blank"]'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Announcements
|
|
"/announcements/{announcement_id}":
|
|
get:
|
|
deprecated: true
|
|
summary: Show an announcement.
|
|
description: Show the content of an announcement.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: announcement_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the announcement.
|
|
example: 16
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
message:
|
|
type: string
|
|
user:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
scope:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
xml:
|
|
name: status_message
|
|
example:
|
|
id: 16
|
|
message: Feature number 42 was implemented!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-12 11:18:12 UTC
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=0 [WHERE `status_messages`.`severity`
|
|
= ?]
|
|
tags:
|
|
- Announcements
|
|
put:
|
|
deprecated: true
|
|
summary: Update an announcement.
|
|
description: |
|
|
Update the content of an announcement.
|
|
|
|
This is only for users with roles "Admin" or "Staff".
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: announcement_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the announcement.
|
|
example: 16
|
|
requestBody:
|
|
description: Announcement definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
content:
|
|
type: string
|
|
xml:
|
|
name: announcement
|
|
examples:
|
|
update_title:
|
|
summary: Update only the title
|
|
value:
|
|
title: New title!
|
|
update_title_and_content:
|
|
summary: Update title and content
|
|
value:
|
|
title: New title!
|
|
content: New content.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Invalid Announcement.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
message_cant_be_blank:
|
|
summary: Message can't be blank
|
|
value:
|
|
code: invalid_announcement
|
|
summary: '["Message can''t be blank"]'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=0 [WHERE `status_messages`.`severity`
|
|
= ?]
|
|
tags:
|
|
- Announcements
|
|
delete:
|
|
deprecated: true
|
|
summary: Delete an announcement.
|
|
description: |
|
|
Delete an announcement.
|
|
|
|
This is only for users with roles "Admin" or "Staff".
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: announcement_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the announcement.
|
|
example: 16
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=0 [WHERE `status_messages`.`severity`
|
|
= ?]
|
|
tags:
|
|
- Announcements
|
|
"/architectures":
|
|
get:
|
|
summary: List all known architectures.
|
|
description: |
|
|
Get a list of all known architectures known to OBS in general.
|
|
This is not the list of architectures provided by this instance. Check the
|
|
schedulers element from the `/configuration` route for this.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: '4'
|
|
entry:
|
|
- name: aarch64
|
|
- name: armv7l
|
|
- name: s390x
|
|
- name: x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- General Information
|
|
"/architectures/{architecture_name}":
|
|
get:
|
|
summary: Show one architecture.
|
|
description: Show information about one architecture.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: architecture
|
|
example:
|
|
name: x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_architecture
|
|
summary: 'Architecture does not exist: x999'
|
|
tags:
|
|
- General Information
|
|
"/attribute":
|
|
get:
|
|
summary: List all attribute namespaces.
|
|
description: List all attribute namespaces.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: '2'
|
|
entry:
|
|
- name: OBS
|
|
- name: openSUSE
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Attribute Namespaces
|
|
"/attribute/{namespace}":
|
|
get:
|
|
summary: List all attributes below a namespace.
|
|
description: List all attributes under a given attribute namespace.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: '2'
|
|
entry:
|
|
- name: AutoCleanup
|
|
- name: OwnerRootProject
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
tags:
|
|
- Attributes
|
|
delete:
|
|
summary: Delete an attribute namespace and all attributes below.
|
|
description: |
|
|
Delete an attribute namespace and all attributes below.
|
|
|
|
This operation is the same as the one defined with [DELETE /attribute/{namespace}/_meta](#/Attributes/delete_attribute__namespace___meta).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Attribute Namespaces
|
|
"/attribute/{namespace}/_meta":
|
|
get:
|
|
summary: Show attribute namespace.
|
|
description: Shows attribute namespace.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [attribute_namespace_meta.xsd](../schema/attribute_namespace_meta.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: OBS_TEST
|
|
xml:
|
|
attribute: true
|
|
modifiable_by:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: string
|
|
example: user_login_name
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: namespace
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
tags:
|
|
- Attribute Namespaces
|
|
post:
|
|
summary: Change attribute namespace. Create an attribute namespace if it doesn't
|
|
exist.
|
|
description: |
|
|
This endpoint can be used for both, creating an attribute namespace and updating it:
|
|
* If the attribute namespace passed as parameter doesn't exist, it will create the attribute namespace.
|
|
* If the attribute namespace passed as parameter already exists, it will update the namespace attribute.
|
|
|
|
This operation is the same as the one defined with [PUT](#/Attributes/put_attribute__namespace___meta).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
requestBody:
|
|
description: |
|
|
Attribute namespace definition.
|
|
|
|
XML Schema used for body validation: [attribute_namespace_meta.xsd](../schema/attribute_namespace_meta.xsd)
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: OBS_TEST
|
|
xml:
|
|
attribute: true
|
|
modifiable_by:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: string
|
|
example: user_login_name
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: namespace
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Validation Failed.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
empty_body:
|
|
value:
|
|
code: validation_failed
|
|
summary: Document is empty, not allowed for attribute_namespace_meta
|
|
summary: Validation Failed (Empty Body)
|
|
wrong_xml_element:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'attribute_namespace_meta validation error: 1:0: ERROR:
|
|
Element ''foo'': No matching global declaration available for
|
|
the validation root.'
|
|
summary: Validation Failed (Wrong XML Element)
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
user:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find User with login = user_login_name
|
|
summary: Not Found (User)
|
|
tags:
|
|
- Attribute Namespaces
|
|
put:
|
|
summary: Change attribute namespace. Create an attribute namespace if it doesn't
|
|
exist.
|
|
description: |
|
|
This endpoint can be used for both, creating an attribute namespace and updating it:
|
|
* If the attribute namespace passed as parameter doesn't exist, it will create the attribute namespace.
|
|
* If the attribute namespace passed as parameter already exists, it will update the namespace attribute.
|
|
|
|
This operation is the same as the one defined with [POST](#/Attributes/post_attribute__namespace___meta).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
requestBody:
|
|
description: |
|
|
Attribute namespace definition.
|
|
|
|
XML Schema used for body validation: [attribute_namespace_meta.xsd](../schema/attribute_namespace_meta.xsd)
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: OBS_TEST
|
|
xml:
|
|
attribute: true
|
|
modifiable_by:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: string
|
|
example: user_login_name
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: namespace
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Validation Failed.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
empty_body:
|
|
value:
|
|
code: validation_failed
|
|
summary: Document is empty, not allowed for attribute_namespace_meta
|
|
summary: Validation Failed (Empty Body)
|
|
wrong_xml_element:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'attribute_namespace_meta validation error: 1:0: ERROR:
|
|
Element ''foo'': No matching global declaration available for
|
|
the validation root.'
|
|
summary: Validation Failed (Wrong XML Element)
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
user:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find User with login = user_login_name
|
|
summary: Not Found (User)
|
|
tags:
|
|
- Attribute Namespaces
|
|
delete:
|
|
summary: Delete an attribute namespace and all attributes below.
|
|
description: |
|
|
Delete an attribute namespace and all attributes below.
|
|
|
|
This operation is the same as the one defined with [DELETE /attribute/{namespace}](#/Attributes/delete_attribute__namespace_).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Attribute Namespaces
|
|
"/attribute/{namespace}/{attribute_name}":
|
|
delete:
|
|
summary: Delete an attribute and all its values in projects or packages.
|
|
description: |
|
|
Delete an attribute and all its values in projects or packages.
|
|
|
|
This operation is the same as the one defined with [DELETE /attribute/{namespace}/{attribute_name}/_meta](#/Attributes/delete_attribute__namespace___attribute_name___meta)
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
tags:
|
|
- Attributes
|
|
"/attribute/{namespace}/{attribute_name}/_meta":
|
|
get:
|
|
summary: Shows attribute.
|
|
description: Shows attribute.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: OBS_TEST
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
example: OwnerRootProjectTest
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: An example description for an attribute.
|
|
allowed:
|
|
type: object
|
|
properties:
|
|
value:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- DisableDevelTest
|
|
- BugownerOnlyTest
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
modifiable_by:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: string
|
|
example: user_login_name
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: definition
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
unknown_attribute:
|
|
value:
|
|
code: unknown_attribute
|
|
summary: Unknown attribute 'OBS_TEST':'OwnerRootProjectTest'
|
|
summary: Unknown Attribute
|
|
tags:
|
|
- Attributes
|
|
post:
|
|
summary: Change attribute data. Create an attribute if it doesn't exist.
|
|
description: |
|
|
This endpoint can be used for both, creating an attribute and updating it:
|
|
* If the attribute passed as parameter doesn't exist, it will create the attribute.
|
|
* If the attribute passed as parameter already exists, it will update the attribute.
|
|
|
|
This operation is the same as the one defined with [PUT](#/Attributes/put_attribute__namespace___attribute_name___meta).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
requestBody:
|
|
description: Attribute definition.
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: OBS_TEST
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
example: OwnerRootProjectTest
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: An example description for an attribute.
|
|
allowed:
|
|
type: object
|
|
properties:
|
|
value:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- DisableDevelTest
|
|
- BugownerOnlyTest
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
modifiable_by:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: string
|
|
example: user_login_name
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: definition
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Validation Failed.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
empty_body:
|
|
value:
|
|
code: validation_failed
|
|
summary: Document is empty, not allowed for attrib_type
|
|
summary: Validation Failed (Empty Body)
|
|
wrong_xml_element:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'attrib_type validation error: 1:0: ERROR: Element definition
|
|
failed to validate attributes'
|
|
summary: Validation Failed (Wrong XML Attributes)
|
|
illegal_request:
|
|
value:
|
|
code: illegal_request
|
|
summary: 'Illegal request: PUT/POST /attribute/OBS_TEST/OwnerRootProjectTest/_meta:
|
|
path does not match content'
|
|
summary: Illegal Request
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
unknown_attribute:
|
|
value:
|
|
code: unknown_attribute
|
|
summary: Unknown attribute 'OBS_TEST':'OwnerRootProjectTest'
|
|
summary: Unknown Attribute
|
|
tags:
|
|
- Attributes
|
|
put:
|
|
summary: Change attribute data. Create an attribute if it doesn't exist.
|
|
description: |
|
|
This endpoint can be used for both, creating an attribute and updating it:
|
|
* If the attribute passed as parameter doesn't exist, it will create the attribute.
|
|
* If the attribute passed as parameter already exists, it will update the attribute.
|
|
|
|
This operation is the same as the one defined with [POST](#/Attributes/post_attribute__namespace___attribute_name___meta).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
requestBody:
|
|
description: Attribute definition.
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: OBS_TEST
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
example: OwnerRootProjectTest
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: An example description for an attribute.
|
|
allowed:
|
|
type: object
|
|
properties:
|
|
value:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- DisableDevelTest
|
|
- BugownerOnlyTest
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
modifiable_by:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: string
|
|
example: user_login_name
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: definition
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Validation Failed.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
empty_body:
|
|
value:
|
|
code: validation_failed
|
|
summary: Document is empty, not allowed for attrib_type
|
|
summary: Validation Failed (Empty Body)
|
|
wrong_xml_element:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'attrib_type validation error: 1:0: ERROR: Element definition
|
|
failed to validate attributes'
|
|
summary: Validation Failed (Wrong XML Attributes)
|
|
illegal_request:
|
|
value:
|
|
code: illegal_request
|
|
summary: 'Illegal request: PUT/POST /attribute/OBS_TEST/OwnerRootProjectTest/_meta:
|
|
path does not match content'
|
|
summary: Illegal Request
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
unknown_attribute:
|
|
value:
|
|
code: unknown_attribute
|
|
summary: Unknown attribute 'OBS_TEST':'OwnerRootProjectTest'
|
|
summary: Unknown Attribute
|
|
tags:
|
|
- Attributes
|
|
delete:
|
|
summary: Delete an attribute and all its values in projects or packages.
|
|
description: |
|
|
Delete an attribute and all its values in projects or packages.
|
|
|
|
This operation is the same as the one defined with [DELETE /attribute/{namespace}/{attribute_name}](#/Attributes/delete_attribute__namespace___attribute_name_)
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: namespace
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The namespace
|
|
example: OBS_TEST
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
namespace:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find AttribNamespace
|
|
summary: Not Found (Namespace)
|
|
tags:
|
|
- Attributes
|
|
"/build":
|
|
get:
|
|
summary: Get a simple directory listing of all projects
|
|
description: Get a simple directory listing of all projects
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: openSUSE:Leap:15.1
|
|
- name: openSUSE:Leap:15.2
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Build
|
|
"/build/_workerstatus":
|
|
get:
|
|
deprecated: true
|
|
summary: Lists status of workers, jobs, backend services and general statistics.
|
|
description: |
|
|
Lists status of workers, running jobs, waiting jobs, status of the backend services and general statistics.
|
|
|
|
This endpoint is exactly the same as `GET /worker/_status`, please use that one.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
clients:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
idle:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
building:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
down:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
waiting:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
blocked:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
partition:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
daemon:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
queue:
|
|
type: object
|
|
properties:
|
|
high:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
med:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
low:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
next:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: workerstatus
|
|
example:
|
|
clients: '2'
|
|
idle:
|
|
- workerid: 1a1f67b948b6:1
|
|
hostarch: x86_64
|
|
building:
|
|
- repository: openSUSE_11.3_Update
|
|
arch: x86_64
|
|
project: home:enzokiel
|
|
package: android-sdk
|
|
starttime: '1289838671'
|
|
workerid: 1a1f67b948b6:2
|
|
hostarch: x86_64
|
|
down:
|
|
- workerid: armbuild03:1
|
|
hostarch: aarch64
|
|
waiting:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
blocked:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
buildavg:
|
|
- arch: i586
|
|
buildavg: '1200'
|
|
- arch: x86_64
|
|
buildavg: '1200'
|
|
partition:
|
|
- daemon:
|
|
- type: srcserver
|
|
state: running
|
|
starttime: '1617711138'
|
|
- type: servicedispatch
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: service
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: clouduploadserver
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: clouduploadworker
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: scheduler
|
|
arch: i586
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: scheduler
|
|
arch: x86_64
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: repserver
|
|
state: running
|
|
starttime: '1617711143'
|
|
- type: dispatcher
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: publisher
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: signer
|
|
state: running
|
|
starttime: '1617711146'
|
|
- name: back-main
|
|
daemon:
|
|
- type: scheduler
|
|
arch: aarch64
|
|
state: running
|
|
starttime: '1617148925'
|
|
queue:
|
|
high: '0'
|
|
med: '1'
|
|
low: '4'
|
|
next: '22'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}":
|
|
get:
|
|
summary: Get a simple directory listing of all repositories for the specified
|
|
project
|
|
description: Get a simple directory listing of all repositories for the specified
|
|
project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: openSUSE_Tumbleweed
|
|
- name: openSUSE_Leap_15.3
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
post:
|
|
summary: Apply different actions on builds/build processes of the specified
|
|
project
|
|
description: Apply different actions on builds/build processes of the specified
|
|
project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: Name of the package. Scope the commands to the specified package.
|
|
example: firefox
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Name of the build architecture. Scope the commands to the specified
|
|
architectures.
|
|
example: x86_64
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Name of the repository. Scope the commands to the specified repository.
|
|
example: openSUSE_Leap_15.2
|
|
- in: query
|
|
name: cmd
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- wipe
|
|
- restartbuild
|
|
- killbuild
|
|
- abortbuild
|
|
- rebuild
|
|
- unpublish
|
|
- sendsysrq
|
|
description: |
|
|
**NOTE**: All commands described below, can be scoped to a package within the project by setting the `package`
|
|
parameter.
|
|
|
|
* `wipe`: Delete all binaries build by the project.
|
|
* `restartbuild`: Restart all running build processes inside the project.
|
|
* `rebuild`: Trigger a rebuild of all packages inside the project.
|
|
* `abortbuild`: Abort all running build processes for the specified project, marking them as failed.
|
|
* `killbuild`: Alias for `abortbuild`.
|
|
* `unpublish`: Delete all published package binaries, for the specified project, from the download repository.
|
|
* `sendsysrq`: Send a single sysrq character to the kernel of a running build. Character need to be specified
|
|
through the `sysrq` parameter. Only a subset of debugging requests are supported (eg. 9, t or w).
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Illegal request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Illegal Request:
|
|
value:
|
|
code: illegal_request
|
|
summary: unsupported POST command '<some command>' to <some url>.
|
|
'403':
|
|
description: |
|
|
Execute command no permission.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Execute cmd no permission:
|
|
value:
|
|
code: execute_cmd_no_permission
|
|
summary: No permission to execute command on package <some package>
|
|
in project <some project>
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/_result":
|
|
get:
|
|
summary: Get the build results for packages, architectures and repositories
|
|
of the specified project.
|
|
description: Get the build results for packages, architectures and repositories
|
|
of the specified project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- status
|
|
- summary
|
|
- binarylist
|
|
default: status
|
|
description: |
|
|
Specify which sections should be included in the result list.
|
|
|
|
* `status`: Include detailed infos about the build status.
|
|
* `summary`: Include the summary of the status values.
|
|
* `binarylist`: Include a list of generated binary files.
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: Name of the package. Limit results to the specified package.
|
|
example: obs-server
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Name of the build architecture. Limit results to the specified
|
|
build architecture.
|
|
example: x86_64
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Name of the repository. Limit results to the specified repository.
|
|
example: openSUSE_Leap_15.2
|
|
- in: query
|
|
name: lastbuild
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to show the last build result (excludes current building
|
|
job states).
|
|
enum:
|
|
- 0
|
|
- 1
|
|
default: 0
|
|
example: 1
|
|
- in: query
|
|
name: locallink
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to include build results from packages with project
|
|
local links.
|
|
enum:
|
|
- 0
|
|
- 1
|
|
default: 0
|
|
example: 1
|
|
- in: query
|
|
name: multibuild
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to include build results from _multibuild definitions.
|
|
enum:
|
|
- 0
|
|
- 1
|
|
default: 0
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK.
|
|
|
|
XML Schema used for body validation: [buildresult.rng](../schema/buildresult.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
example: e096d16554264fa553ca0aa3226cf189
|
|
xml:
|
|
attribute: true
|
|
result:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: openSUSE_Leap_15.3
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
example: x86_64
|
|
xml:
|
|
attribute: true
|
|
code:
|
|
type: string
|
|
example: published
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
example: published
|
|
xml:
|
|
attribute: true
|
|
status:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
example: ctris
|
|
xml:
|
|
attribute: true
|
|
code:
|
|
type: string
|
|
example: succeeded
|
|
xml:
|
|
attribute: true
|
|
details:
|
|
type: string
|
|
example: package whitelist
|
|
binarylist:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
example: ctris
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
filename:
|
|
type: string
|
|
example: hello-2.10-3.1.x86_64.rpm
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
example: '58352'
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
example: '1617270174'
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: object
|
|
properties:
|
|
statuscount:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
example: disabled
|
|
xml:
|
|
attribute: true
|
|
count:
|
|
type: string
|
|
example: '2'
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: resultlist
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `multibuild`,
|
|
for example.
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}":
|
|
get:
|
|
summary: List of all architectures the specified project builds against a given
|
|
repository.
|
|
description: List of all architectures the specified project builds against
|
|
a given repository.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: x86_64
|
|
- name: i586
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 404
|
|
summary: project '<project_name>' has no repository '<repository_name>'
|
|
details: 404 project '<project_name>' has no repository '<repository_name>'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/_buildconfig":
|
|
get:
|
|
summary: Show the build configuration for the specified repository.
|
|
description: |
|
|
Show the build configuration for the specified repository. Includes all base package
|
|
requirements, mappings and macros.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
text/plain:
|
|
example: |
|
|
%define _project home:Admin
|
|
|
|
### from openSUSE.org:openSUSE:Leap:15.2
|
|
%define _repository standard
|
|
|
|
Macros:
|
|
%vendor obs://build.some.where/home:Admin
|
|
%_project home:Admin
|
|
|
|
### from openSUSE.org:openSUSE:Leap:15.2
|
|
|
|
%_repository standard
|
|
:Macros
|
|
|
|
|
|
Release: <CI_CNT>.<B_CNT> spec:lp152.<CI_CNT>.<B_CNT>
|
|
%define gcc_version 7
|
|
|
|
# testing new cycle algorithm
|
|
BuildFlags: genmetaalgo:1
|
|
|
|
# abort the build if the log file didn't move in an hour (seen in libreoffice builds)
|
|
BuildFlags: logidlelimit:3600
|
|
|
|
PublishFlags: ympdist:openSUSE%20Leap%2015.2
|
|
|
|
# Help with the switch to the gcc7 provided libs
|
|
Prefer: -libstdc++6-gcc7 -libtsan0-gcc7 -libgomp1-gcc7 -libgcc_s1-gcc7 -libatomic1-gcc7 -libcilkrts5-gcc7 -libitm1-gcc7
|
|
Prefer: -liblsan0-gcc7 -libmpx2-gcc7 -libubsan0-gcc7
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/_builddepinfo":
|
|
get:
|
|
summary: Show the build dependencies of packages that are part of the project.
|
|
description: |
|
|
Show the build dependencies of packages that are part of the project,
|
|
for a given repository and architecture.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: Name of the package. Limit results to the specified package.
|
|
example: obs-server
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- pkgnames
|
|
- revpkgnames
|
|
- order
|
|
description: |
|
|
* `pkgnames`: Show whole package dependencies, instead of individual binaries.
|
|
* `revpkgnames`: Show which packages depend on the provided project/package for
|
|
the given repository/architecture, and therefore a rebuild gets triggered on change.
|
|
* `order`: Show packages ordered by dependencies.
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: memcached
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: string
|
|
example: memcached
|
|
pkgdep:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- gzip
|
|
- obs-server
|
|
subpkg:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- memcached-devel
|
|
- memcached-debugsource
|
|
xml:
|
|
name: builddepinfo
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
post:
|
|
deprecated: true
|
|
summary: Show the build dependencies of packages that are part of the project.
|
|
description: |
|
|
This endpoint is exactly the same as
|
|
`GET /build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_builddepinfo`, please use that one.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/_jobhistory":
|
|
get:
|
|
summary: Get the build log of all finished builds.
|
|
description: Get the build log of all finished builds, for a given project,
|
|
repository and architecture.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: query
|
|
name: code
|
|
schema:
|
|
type: string
|
|
description: 'Filter results by finished build code: `failed`, `succeeded`,
|
|
`unchanged`.'
|
|
example: succeeded
|
|
- in: query
|
|
name: endtime_end
|
|
schema:
|
|
type: integer
|
|
description: Show builds which finished before given time.
|
|
example: 1714135617
|
|
- in: query
|
|
name: endtime_start
|
|
schema:
|
|
type: integer
|
|
description: Show builds which finished after given time.
|
|
example: 1714130617
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of retrieved results elements to the specified
|
|
number.
|
|
example: 10
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: Name of the package. Limit results to the specified package.
|
|
example: obs-server
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
versrel:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
bcnt:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
readytime:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
endtime:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
uri:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
reason:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
verifymd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: jobhist
|
|
xml:
|
|
wrapped: true
|
|
name: jobhistlist
|
|
example:
|
|
- package: obs-server
|
|
rev: 17367
|
|
srcmd5: e2fc6b9e014441f3f8a33beb62446215
|
|
versrel: 2.11~alpha.20240426T143809.ab0551f7-16803
|
|
bcnt: 1
|
|
readytime: 1714135430
|
|
starttime: 1714135490
|
|
endtime: 1714135617
|
|
code: succeeded
|
|
uri: http://192.168.2.130:42344
|
|
workerid: i02-ch1d:21
|
|
hostarch: x86_64
|
|
reason: source change
|
|
verifymd5: 518a4d1c0e95fe3c04117aafba722a1f
|
|
- package: obs-server:obs-bundled-gems
|
|
rev: 17368
|
|
srcmd5: feac17ca9cf334d57d719f3ba52a300f
|
|
versrel: 2.11~alpha.20240426T150958.ca259016-16804
|
|
bcnt: 1
|
|
readytime: 1714137054
|
|
starttime: 1714137078
|
|
endtime: 1714137296
|
|
code: succeeded
|
|
uri: http://192.168.2.130:42344
|
|
workerid: i04-ch4d:9
|
|
hostarch: x86_64
|
|
reason: source change
|
|
verifymd5: f81504abf10aaca978a8acea9eaa5bf5
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/_repository":
|
|
get:
|
|
summary: List all binaries (produced by all packages of the given project).
|
|
description: |
|
|
List all binaries (produced by all packages of the given project) for the specified
|
|
repository and architecture.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: OK.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
binary:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
filename:
|
|
type: string
|
|
example: hello-2.10-3.1.x86_64.rpm
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
example: '58352'
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
example: '1617270174'
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: binarylist
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}":
|
|
get:
|
|
summary: List binaries built by the sources of the specified package.
|
|
description: List binaries built by the sources of the specified package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: OK.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
binary:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
filename:
|
|
type: string
|
|
example: hello-2.10-3.1.x86_64.rpm
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
example: '58352'
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
example: '1617270174'
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: binarylist
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_buildenv":
|
|
get:
|
|
summary: Return the environment information for the last performed build.
|
|
description: Get specifics of the environment information for the last performed
|
|
build.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Admin
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: ctris
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
example: i586
|
|
srcmd5:
|
|
type: string
|
|
example: 6b7c8d9cb5c5d36453c1dc8e102016b1
|
|
verifymd5:
|
|
type: string
|
|
example: 6b7c8d9cb5c5d36453c1dc8e102016b1
|
|
versrel:
|
|
type: string
|
|
example: 0.42.1-3
|
|
bcnt:
|
|
type: string
|
|
example: '2'
|
|
release:
|
|
type: string
|
|
example: '3.2'
|
|
config:
|
|
type: string
|
|
example: |
|
|
%define _project home:enavarro_suse
|
|
|
|
### from openSUSE:Factory
|
|
%define _repository ports
|
|
|
|
Macros:
|
|
%vendor obs://build.opensuse.org/home:enavarro_suse
|
|
%_download_url https://download.opensuse.org/repositories
|
|
%_project home:enavarro_suse
|
|
bdep:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: liblua5_4-5
|
|
xml:
|
|
attribute: true
|
|
hdrmd5:
|
|
type: string
|
|
example: 4f50c1ea427e184620686ded4baa3097
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
example: openSUSE:Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: dod
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: buildinfo
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_buildinfo":
|
|
get:
|
|
summary: Return build information about a build description would produce.
|
|
description: |
|
|
Get build information using the default spec file.
|
|
|
|
To use other file than the default spec file, use this same endpoint path with the `POST` action.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- name: add
|
|
in: query
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Add a list of build dependencies (`BuildRequires`) to the build.
|
|
example:
|
|
- less
|
|
- vim
|
|
- name: debug
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to add debug information about dependencies. This
|
|
information is added inside an `expandeddebug` xml element.
|
|
example: 0
|
|
responses:
|
|
'200':
|
|
description: Returns the artifact building information.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Admin
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: ctris
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
example: i586
|
|
srcmd5:
|
|
type: string
|
|
example: 6b7c8d9cb5c5d36453c1dc8e102016b1
|
|
verifymd5:
|
|
type: string
|
|
example: 6b7c8d9cb5c5d36453c1dc8e102016b1
|
|
rev:
|
|
type: integer
|
|
example: 3
|
|
specfile:
|
|
type: string
|
|
example: ctris.spec
|
|
file:
|
|
type: string
|
|
example: ctris.spec
|
|
versrel:
|
|
type: string
|
|
example: 0.42.1-3
|
|
bcnt:
|
|
type: string
|
|
example: '2'
|
|
release:
|
|
type: string
|
|
example: '3.2'
|
|
debuginfo:
|
|
type: integer
|
|
example: 0
|
|
subpack:
|
|
type: string
|
|
example: ctris
|
|
bdep:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: liblua5_4-5
|
|
xml:
|
|
attribute: true
|
|
preinstall:
|
|
type: string
|
|
example: '1'
|
|
xml:
|
|
attribute: true
|
|
notmeta:
|
|
type: string
|
|
example: '1'
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: 5.4.2
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
example: '3.1'
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
example: i586
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
example: openSUSE.org:openSUSE:Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: dod
|
|
xml:
|
|
attribute: true
|
|
path:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Admin
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
example: https://download.opensuse.org/repositories/home:/enavarro_suse/openSUSE_Tumbleweed/
|
|
xml:
|
|
attribute: true
|
|
expanddebug:
|
|
type: string
|
|
example: |
|
|
=== meta deps expansion
|
|
expand args: rpm-build gcc-PIE
|
|
added rpm-build@openSUSE:Tumbleweed/dod because of (direct):rpm-build
|
|
added gcc-PIE@openSUSE:Tumbleweed/dod because of (direct):gcc-PIE
|
|
--- now doing normal dependencies
|
|
added glibc@openSUSE:Tumbleweed/dod because of rpm-build:libc.so.6(GLIBC_2.34)(64bit)
|
|
added glibc@openSUSE:Tumbleweed/dod because of rpm-build:libc.so.6(GLIBC_2.4)(64bit)
|
|
xml:
|
|
name: buildinfo
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
post:
|
|
summary: Return build information about a build description would produce.
|
|
description: |
|
|
Get build information using the file passed in the request body.
|
|
|
|
Despite using the method `POST`, this endpoint doesn't alter any data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Package name.
|
|
|
|
It can take the value `_repository`, if the designated package does not exist yet in the server.
|
|
This is useful for testing a build locally before committing a package.
|
|
examples:
|
|
Normal Package Name:
|
|
value: ctris
|
|
No Package Yet:
|
|
value: _repository
|
|
- name: add
|
|
in: query
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Add a list of build dependencies (`BuildRequires`) to the build.
|
|
example:
|
|
- less
|
|
- vim
|
|
- name: debug
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to add debug information about dependencies. This
|
|
information is added inside an `expandeddebug` xml element.
|
|
example: 0
|
|
requestBody:
|
|
description: A RPM specfile or a Debian "dsc" file.
|
|
required: true
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: |
|
|
Name: hello_world
|
|
Version: 1
|
|
Release: 1
|
|
Summary: Most simple RPM package
|
|
License: CC0-1.0
|
|
|
|
%build
|
|
cat > hello_world.sh <<EOF
|
|
#!/usr/bin/bash
|
|
echo Hello world
|
|
EOF
|
|
|
|
%install
|
|
mkdir -p %{buildroot}/usr/bin/
|
|
install -m 755 hello_world.sh %{buildroot}/usr/bin/hello_world.sh
|
|
|
|
%files
|
|
/usr/bin/hello_world.sh
|
|
responses:
|
|
'200':
|
|
description: Returns the artifact building information.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Admin
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: ctris
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
example: i586
|
|
srcmd5:
|
|
type: string
|
|
example: 6b7c8d9cb5c5d36453c1dc8e102016b1
|
|
verifymd5:
|
|
type: string
|
|
example: 6b7c8d9cb5c5d36453c1dc8e102016b1
|
|
rev:
|
|
type: integer
|
|
example: 3
|
|
specfile:
|
|
type: string
|
|
example: ctris.spec
|
|
file:
|
|
type: string
|
|
example: ctris.spec
|
|
versrel:
|
|
type: string
|
|
example: 0.42.1-3
|
|
bcnt:
|
|
type: string
|
|
example: '2'
|
|
release:
|
|
type: string
|
|
example: '3.2'
|
|
debuginfo:
|
|
type: integer
|
|
example: 0
|
|
subpack:
|
|
type: string
|
|
example: ctris
|
|
bdep:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: liblua5_4-5
|
|
xml:
|
|
attribute: true
|
|
preinstall:
|
|
type: string
|
|
example: '1'
|
|
xml:
|
|
attribute: true
|
|
notmeta:
|
|
type: string
|
|
example: '1'
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: 5.4.2
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
example: '3.1'
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
example: i586
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
example: openSUSE.org:openSUSE:Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: dod
|
|
xml:
|
|
attribute: true
|
|
path:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Admin
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
example: https://download.opensuse.org/repositories/home:/enavarro_suse/openSUSE_Tumbleweed/
|
|
xml:
|
|
attribute: true
|
|
expanddebug:
|
|
type: string
|
|
example: |
|
|
=== meta deps expansion
|
|
expand args: rpm-build gcc-PIE
|
|
added rpm-build@openSUSE:Tumbleweed/dod because of (direct):rpm-build
|
|
added gcc-PIE@openSUSE:Tumbleweed/dod because of (direct):gcc-PIE
|
|
--- now doing normal dependencies
|
|
added glibc@openSUSE:Tumbleweed/dod because of rpm-build:libc.so.6(GLIBC_2.34)(64bit)
|
|
added glibc@openSUSE:Tumbleweed/dod because of rpm-build:libc.so.6(GLIBC_2.4)(64bit)
|
|
xml:
|
|
name: buildinfo
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 400
|
|
origin: backend
|
|
details: '400 remote error: could not parse name in build description
|
|
(spec) (http://backend:5252/build/home:Admin/openSUSE_Tumbleweed/x86_64/hello_world/_buildinfo)'
|
|
summary: 'remote error: could not parse name in build description
|
|
(spec) (http://backend:5252/build/home:Admin/openSUSE_Tumbleweed/x86_64/hello_world/_buildinfo)'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_history":
|
|
get:
|
|
description: This endpoint returns the build history for a specific artifact
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: Returns ok when the build status is ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
entry:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
example: '4'
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
example: 63a6f075d3d420c6c1160a7b5dc31354
|
|
xml:
|
|
attribute: true
|
|
versrel:
|
|
type: string
|
|
example: 0.42.1-4
|
|
xml:
|
|
attribute: true
|
|
bcnt:
|
|
type: string
|
|
example: '1'
|
|
xml:
|
|
attribute: true
|
|
time:
|
|
type: string
|
|
example: '1617812788'
|
|
xml:
|
|
attribute: true
|
|
duration:
|
|
type: string
|
|
example: '222'
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: buildhistory
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
post:
|
|
deprecated: true
|
|
summary: Return the build history for a specific artifact
|
|
description: |
|
|
This endpoint is exactly the same as
|
|
`GET /build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_history`, please use that one.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_jobstatus":
|
|
get:
|
|
summary: Show the build status of a currently running build job.
|
|
description: |
|
|
Show the build status of a currently running build job. Shows an empty
|
|
result if no build job is running.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK.
|
|
|
|
XML Schema used for body validation: [jobstatus.rng](../schema/jobstatus.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
example: building
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
example: '1618222900'
|
|
lastduration:
|
|
type: string
|
|
example: '43'
|
|
hostarch:
|
|
type: string
|
|
example: x86_64
|
|
uri:
|
|
type: string
|
|
example: http://172.18.0.5:38963
|
|
jobid:
|
|
type: string
|
|
example: 17c8d25b92da67f6ec428ea51a9b5342
|
|
xml:
|
|
name: jobstatus
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_log":
|
|
get:
|
|
description: This endpoint returns the last log file for a specific build artifact
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: This endpoint returns the log file content
|
|
content:
|
|
text/plain:
|
|
example: "[ 0s] Memory limit set to 23077696KB\n[ 0s] Using BUILD_ROOT=/var/cache/obs/worker/root_2\n[
|
|
\ 0s] Using BUILD_ARCH=i586:i486:i386\n[ 0s] \n[ 0s] \n[ 0s]
|
|
5d0262043f4a started \"build ctris.spec\" at Tue Apr 6 12:27:31 UTC
|
|
2021.\n[ 0s] \n[ 0s] Building ctris for project 'home:Admin'
|
|
repository 'openSUSE_Tumbleweed' arch 'i586' srcmd5 '6b7c8d9cb5c5d36453c1dc8e102016b1'\n"
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Error: Not Acceptable
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission to download binaries from package ctris, project
|
|
home:Admin
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_reason":
|
|
get:
|
|
summary: Show the reason for the lastly triggered build.
|
|
description: Details about the reason of the lastly triggered build.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
explain:
|
|
type: string
|
|
example: source change
|
|
time:
|
|
type: string
|
|
example: '1617982407'
|
|
oldsource:
|
|
type: string
|
|
example: da9ebc6a12b6da45f9ead3fc2f924889
|
|
xml:
|
|
name: reason
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_statistics":
|
|
get:
|
|
summary: Return build statistics from the last performed build.
|
|
description: Get specifics of build statistics from the last performed build.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
disk:
|
|
type: object
|
|
properties:
|
|
usage:
|
|
type: object
|
|
properties:
|
|
size:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
io_requests:
|
|
type: string
|
|
io_sectors:
|
|
type: string
|
|
memory:
|
|
type: object
|
|
properties:
|
|
usage:
|
|
type: object
|
|
properties:
|
|
size:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
times:
|
|
type: object
|
|
properties:
|
|
total:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
preinstall:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
install:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
main:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
postchecks:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rpmlint:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildcmp:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
deltarpms:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
download:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
cpusteal:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
download:
|
|
type: object
|
|
properties:
|
|
size:
|
|
type: object
|
|
properties:
|
|
unit:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binaries:
|
|
type: string
|
|
cachehits:
|
|
type: string
|
|
xml:
|
|
name: buildstatistics
|
|
example:
|
|
disk:
|
|
usage:
|
|
size:
|
|
unit: M
|
|
io_requests: 7750
|
|
io_sectors: 1248010
|
|
memory:
|
|
usage:
|
|
size:
|
|
unit: M
|
|
times:
|
|
total:
|
|
time:
|
|
unit: s
|
|
preinstall:
|
|
time:
|
|
unit: s
|
|
download:
|
|
size:
|
|
unit: k
|
|
binaries: 5
|
|
cachehits: 131
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_status":
|
|
get:
|
|
description: This endpoint returns the building status for a specific artifact
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: Returns ok when the build status is ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
example: ctris
|
|
xml:
|
|
attribute: true
|
|
code:
|
|
type: string
|
|
example: failed
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: 1'
|
|
tags:
|
|
- Build
|
|
post:
|
|
deprecated: true
|
|
summary: Return the building status for a specific artifact
|
|
description: |
|
|
This endpoint is exactly the same as
|
|
`GET /build/{project_name}/{repository_name}/{architecture_name}/{package_name}/_status`, please use that one.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/{file_name}":
|
|
get:
|
|
summary: Return a specific artifact file contents
|
|
description: Given a project, repository, architecture and package, retrieve
|
|
the given file's content.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: Returns the artifact's actual file contents
|
|
content:
|
|
application/*:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: '404'
|
|
summary: project 'home:Admin' has no repository '4'
|
|
details: 404 project 'home:Admin' has no repository '4'
|
|
tags:
|
|
- Build
|
|
put:
|
|
summary: Update a specific artifact file contents
|
|
description: |
|
|
Given a project, repository, architecture and package, update the given file's content.
|
|
|
|
This is for Admins only.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- name: package_name
|
|
in: path
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- _repository
|
|
required: true
|
|
description: Package name
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
requestBody:
|
|
content:
|
|
plain/text:
|
|
schema:
|
|
type: string
|
|
properties:
|
|
file:
|
|
type: string
|
|
format: binary
|
|
responses:
|
|
'200':
|
|
description: Updates the artifact's file contents
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: No permission to upload binaries for this project
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: upload_binary_no_permission
|
|
summary: No permission to upload binaries.
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: '404'
|
|
summary: project 'home:Admin' has no repository '4'
|
|
details: 404 project 'home:Admin' has no repository '4'
|
|
tags:
|
|
- Build
|
|
delete:
|
|
summary: Delete an existing repository artifact
|
|
description: |
|
|
Given a project, repository and architecture delete the given file in the repository.
|
|
|
|
The user needs to have write permissions into the artifact
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- name: package_name
|
|
in: path
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- _repository
|
|
required: true
|
|
description: Package name. '_repository' is the only posible value.
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Operation is not allowed
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_operation
|
|
summary: Delete operation of build results is not allowed
|
|
'403':
|
|
description: No permission to delete binaries from this project
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: delete_binary_no_permission
|
|
summary: No permission to delete binaries from project home:Admin.
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: '404'
|
|
summary: project 'home:Admin' has no repository '4'
|
|
tags:
|
|
- Build
|
|
"/build/{project_name}/{repository_name}/{architecture_name}/{package_name}/{file_name}?view=fileinfo":
|
|
get:
|
|
summary: This endpoint returns details about an specific artifact
|
|
description: Given a project, repository, architecture and package, retrieve
|
|
the given artifact's details.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
- name: view
|
|
in: query
|
|
required: true
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- fileinfo
|
|
- fileinfo_ext
|
|
responses:
|
|
'200':
|
|
description: Returns details about the artifact
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
filename:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
version:
|
|
type: string
|
|
release:
|
|
type: string
|
|
arch:
|
|
type: string
|
|
source:
|
|
type: string
|
|
summary:
|
|
type: string
|
|
description:
|
|
type: string
|
|
size:
|
|
type: string
|
|
mtime:
|
|
type: string
|
|
provides:
|
|
type: array
|
|
items:
|
|
type: string
|
|
requires:
|
|
type: array
|
|
items:
|
|
type: string
|
|
provides_ext:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
dep:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
requires_ext:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
dep:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
provided_by:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: fileinfo
|
|
examples:
|
|
fileinfo:
|
|
summary: view=fileinfo
|
|
value:
|
|
filename: ctris-0.42.1-4.1.x86_64.rpm
|
|
name: ctris
|
|
version: 0.42.1
|
|
release: '4.1'
|
|
arch: x86_64
|
|
summary: Console based tetris clone
|
|
description: ctris is a colorized, small and flexible Tetris(TM)-clone
|
|
for the console. Go play!
|
|
size: '765725'
|
|
mtime: '1617270174'
|
|
provides:
|
|
- ctris = 0.42.1-6.2
|
|
- ctris(x86-64) = 0.42.1-6.2
|
|
requires:
|
|
- libc.so.6()(64bit)
|
|
- libc.so.6(GLIBC_2.2.5)(64bit)
|
|
fileinfo_ext:
|
|
summary: view=fileinfo_ext
|
|
value:
|
|
filename: ctris-0.42.1-4.2.x86_64.rpm
|
|
name: ctris
|
|
version: 0.42.1
|
|
release: '4.1'
|
|
arch: x86_64
|
|
source: ctris
|
|
summary: Console based tetris clone
|
|
description: ctris is a colorized, small and flexible Tetris(TM)-clone
|
|
for the console. Go play!
|
|
size: '765725'
|
|
mtime: '1617270174'
|
|
provides:
|
|
- ctris = 0.42.1-6.2
|
|
- ctris(x86-64) = 0.42.1-6.2
|
|
requires:
|
|
- libc.so.6()(64bit)
|
|
- libc.so.6(GLIBC_2.2.5)(64bit)
|
|
provides_ext:
|
|
dep: ctris(x86-64) = 0.42.1-6.2
|
|
requires_ext:
|
|
dep: libc.so.6()(64bit)
|
|
provided_by:
|
|
name: glibc
|
|
version: '2.33'
|
|
release: '4.1'
|
|
arch: x86_64
|
|
project: openSUSE.org:openSUSE:Tumbleweed
|
|
repository: dod
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Error: Not Found
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: '404'
|
|
summary: project 'home:Admin' has no repository '4'
|
|
details: 404 project 'home:Admin' has no repository '4'
|
|
tags:
|
|
- Build
|
|
"/comment/{comment_id}":
|
|
delete:
|
|
summary: Delete a comment
|
|
description: Delete a given comment based on its id.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: comment_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the comment.
|
|
example: 1124
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: delete_comment_not_authorized
|
|
summary: Sorry, you are not authorized to delete this comment
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Comment with id '1124'
|
|
tags:
|
|
- Comments
|
|
"/comment/{comment_id}/history":
|
|
get:
|
|
summary: List the history of a comment
|
|
description: |
|
|
List the versions of a edited comment.
|
|
|
|
**(Beta/Unstable)** This endpoint is currently behind the `content_moderation` beta flag.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: comment_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the comment.
|
|
example: 5
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
XML Schema used for body validation: [comment_history.rng](../schema/comment_history.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
comment:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: comment_history
|
|
example: |
|
|
<comment_history comment="6">
|
|
<comment who="bar" when="2024-02-28 16:12:45 UTC" id="6">First version of comment</comment>
|
|
<comment who="bar" when="2024-02-28 16:15:27 UTC" id="6">UHH DONT LIKE MY COMMENT</comment>
|
|
</comment_history>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: history_comment_not_authorized
|
|
summary: Sorry, you are not authorized to history this comment.
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Comment with 'id'=67
|
|
tags:
|
|
- Comments
|
|
"/comments/user":
|
|
get:
|
|
summary: List all the logged in user's comments
|
|
description: List all the comments for the currently logged in user.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
comment:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
parent:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
bsrequest:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: comments
|
|
example: |
|
|
<comments user="Iggy">
|
|
<comment who="Iggy" when="2021-10-15 13:28:22 UTC" id="1" bsrequest="115">This is a pretty cool request!</comment>
|
|
<comment who="Iggy" when="2021-10-15 13:49:39 UTC" id="2" project="home:Admin">This is a pretty cool project!</comment>
|
|
<comment who="Iggy" when="2021-10-15 13:54:38 UTC" id="3" project="home:Admin" package="0ad">This is a pretty cool package!</comment>
|
|
</comments>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Comments
|
|
"/comments/request/{id}":
|
|
get:
|
|
summary: List all the request's comments
|
|
description: List all the comments for the request.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
comment:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
parent:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
bsrequest:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: comments
|
|
example: |
|
|
<comments request="115">
|
|
<comment who="Iggy" when="2021-10-15 13:28:22 UTC" id="1">This is a pretty cool comment!</comment>
|
|
</comments>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: Couldn't find Request with number '1234'
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Request with number '1234'
|
|
tags:
|
|
- Comments
|
|
post:
|
|
summary: Create a request comment
|
|
description: Create a comment for the request.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
- in: query
|
|
name: parent_id
|
|
schema:
|
|
type: integer
|
|
description: Id of the comment to reply to
|
|
example: 10401
|
|
requestBody:
|
|
description: Content of the comment
|
|
required: true
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: This is a very valuable comment
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Invalid Comment.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_record:
|
|
summary: Parent belongs to different object
|
|
value:
|
|
code: invalid_record
|
|
summary: Parent belongs to different object
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: Couldn't find Request with number '1234'
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Request with number '1234'
|
|
tags:
|
|
- Comments
|
|
"/comments/project/{project_name}":
|
|
get:
|
|
summary: List all the project's comments
|
|
description: List all the comments for the project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
comment:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
parent:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
bsrequest:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: comments
|
|
example: |
|
|
<comments project="home:Admin">
|
|
<comment who="Iggy" when="2021-10-15 13:28:22 UTC" id="1">This is a pretty cool comment!</comment>
|
|
</comments>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: 'Project not found: notaproject'
|
|
value:
|
|
code: not_found
|
|
summary: 'Project not found: notaproject'
|
|
tags:
|
|
- Comments
|
|
post:
|
|
summary: Create a project comment
|
|
description: Create a comment for the project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: parent_id
|
|
schema:
|
|
type: integer
|
|
description: Id of the comment to reply to
|
|
example: 10401
|
|
requestBody:
|
|
description: Content of the comment
|
|
required: true
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: This is a very valuable comment
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Invalid Comment.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_record:
|
|
summary: Parent belongs to different object
|
|
value:
|
|
code: invalid_record
|
|
summary: Parent belongs to different object
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
value:
|
|
code: not_found
|
|
tags:
|
|
- Comments
|
|
"/comments/package/{project_name}/{package_name}":
|
|
get:
|
|
summary: List all the package's comments
|
|
description: List all the comments for the package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
comment:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
parent:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
bsrequest:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: comments
|
|
example: |
|
|
<comments project="home:Admin" package="0ad">
|
|
<comment who="Iggy" when="2021-10-15 13:28:22 UTC" id="1">This is a pretty cool comment!</comment>
|
|
</comments>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: 'Package not found: home:Admin/notapackage'
|
|
value:
|
|
code: not_found
|
|
summary: 'Package not found: home:Admin/notapackage'
|
|
tags:
|
|
- Comments
|
|
post:
|
|
summary: Create a package comment
|
|
description: Create a comment for the package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: parent_id
|
|
schema:
|
|
type: integer
|
|
description: Id of the comment to reply to
|
|
example: 10401
|
|
requestBody:
|
|
description: Content of the comment
|
|
required: true
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: This is a very valuable comment
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Invalid Comment.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_record:
|
|
summary: Parent belongs to different object
|
|
value:
|
|
code: invalid_record
|
|
summary: Parent belongs to different object
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: 'Package not found: openSUSE:Factory/eeee'
|
|
value:
|
|
code: not_found
|
|
summary: 'Package not found: openSUSE:Factory/eeee'
|
|
tags:
|
|
- Comments
|
|
"/configuration":
|
|
get:
|
|
summary: Display the configuration of this Open Build Service instance
|
|
description: Display the configuration of this Open Build Service instance.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
example: Open Build Service
|
|
description:
|
|
type: string
|
|
example: The openSUSE Build Service is the public instance of
|
|
the Open Build Service (OBS)
|
|
name:
|
|
type: string
|
|
example: private
|
|
download_on_demand:
|
|
type: string
|
|
example: true
|
|
enforce_project_keys:
|
|
type: string
|
|
example: false
|
|
anonymous:
|
|
type: string
|
|
example: true
|
|
registration:
|
|
type: string
|
|
example: allow
|
|
default_access_disabled:
|
|
type: string
|
|
example: false
|
|
allow_user_to_create_home_project:
|
|
type: string
|
|
example: true
|
|
disallow_group_creation:
|
|
type: string
|
|
example: false
|
|
change_password:
|
|
type: string
|
|
example: true
|
|
obs_url:
|
|
type: string
|
|
example: https://unconfigured.openbuildservice.org
|
|
tos_url:
|
|
type: string
|
|
example: https://en.opensuse.org/Terms_of_site
|
|
hide_private_options:
|
|
type: string
|
|
example: false
|
|
gravatar:
|
|
type: string
|
|
example: true
|
|
cleanup_empty_projects:
|
|
type: string
|
|
example: true
|
|
disable_publish_for_branches:
|
|
type: string
|
|
example: true
|
|
admin_email:
|
|
type: string
|
|
example: unconfigured@openbuildservice.org
|
|
unlisted_projects_filter:
|
|
type: string
|
|
example: "^home:.+"
|
|
unlisted_projects_filter_description:
|
|
type: string
|
|
example: home projects
|
|
default_tracker:
|
|
type: string
|
|
example: bnc
|
|
code_of_conduct:
|
|
type: string
|
|
example: |
|
|
This is an example of a "Code of Conduct".
|
|
|
|
1. First point.
|
|
|
|
2. Second point.
|
|
schedulers:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- armv7l
|
|
- i586
|
|
- x86_64
|
|
xml:
|
|
name: configuration
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Configuration
|
|
put:
|
|
summary: Update the configuration of this Open Build Service instance
|
|
description: |
|
|
Update the configuration of this Open Build Service instance.
|
|
|
|
This is for admins only.
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: Configuration definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
example: Open Build Service
|
|
description:
|
|
type: string
|
|
example: The openSUSE Build Service is the public instance of the
|
|
Open Build Service (OBS)
|
|
name:
|
|
type: string
|
|
example: private
|
|
download_on_demand:
|
|
type: string
|
|
example: true
|
|
enforce_project_keys:
|
|
type: string
|
|
example: false
|
|
anonymous:
|
|
type: string
|
|
example: true
|
|
registration:
|
|
type: string
|
|
example: allow
|
|
default_access_disabled:
|
|
type: string
|
|
example: false
|
|
allow_user_to_create_home_project:
|
|
type: string
|
|
example: true
|
|
disallow_group_creation:
|
|
type: string
|
|
example: false
|
|
change_password:
|
|
type: string
|
|
example: true
|
|
obs_url:
|
|
type: string
|
|
example: https://unconfigured.openbuildservice.org
|
|
tos_url:
|
|
type: string
|
|
example: https://en.opensuse.org/Terms_of_site
|
|
hide_private_options:
|
|
type: string
|
|
example: false
|
|
gravatar:
|
|
type: string
|
|
example: true
|
|
cleanup_empty_projects:
|
|
type: string
|
|
example: true
|
|
disable_publish_for_branches:
|
|
type: string
|
|
example: true
|
|
admin_email:
|
|
type: string
|
|
example: unconfigured@openbuildservice.org
|
|
unlisted_projects_filter:
|
|
type: string
|
|
example: "^home:.+"
|
|
unlisted_projects_filter_description:
|
|
type: string
|
|
example: home projects
|
|
default_tracker:
|
|
type: string
|
|
example: bnc
|
|
code_of_conduct:
|
|
type: string
|
|
example: |
|
|
This is an example of a "Code of Conduct".
|
|
|
|
1. First point.
|
|
|
|
2. Second point.
|
|
schedulers:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- armv7l
|
|
- i586
|
|
- x86_64
|
|
xml:
|
|
name: configuration
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
example: Open Build Service
|
|
description:
|
|
type: string
|
|
example: The openSUSE Build Service is the public instance of
|
|
the Open Build Service (OBS)
|
|
name:
|
|
type: string
|
|
example: private
|
|
download_on_demand:
|
|
type: string
|
|
example: true
|
|
enforce_project_keys:
|
|
type: string
|
|
example: false
|
|
anonymous:
|
|
type: string
|
|
example: true
|
|
registration:
|
|
type: string
|
|
example: allow
|
|
default_access_disabled:
|
|
type: string
|
|
example: false
|
|
allow_user_to_create_home_project:
|
|
type: string
|
|
example: true
|
|
disallow_group_creation:
|
|
type: string
|
|
example: false
|
|
change_password:
|
|
type: string
|
|
example: true
|
|
obs_url:
|
|
type: string
|
|
example: https://unconfigured.openbuildservice.org
|
|
tos_url:
|
|
type: string
|
|
example: https://en.opensuse.org/Terms_of_site
|
|
hide_private_options:
|
|
type: string
|
|
example: false
|
|
gravatar:
|
|
type: string
|
|
example: true
|
|
cleanup_empty_projects:
|
|
type: string
|
|
example: true
|
|
disable_publish_for_branches:
|
|
type: string
|
|
example: true
|
|
admin_email:
|
|
type: string
|
|
example: unconfigured@openbuildservice.org
|
|
unlisted_projects_filter:
|
|
type: string
|
|
example: "^home:.+"
|
|
unlisted_projects_filter_description:
|
|
type: string
|
|
example: home projects
|
|
default_tracker:
|
|
type: string
|
|
example: bnc
|
|
code_of_conduct:
|
|
type: string
|
|
example: |
|
|
This is an example of a "Code of Conduct".
|
|
|
|
1. First point.
|
|
|
|
2. Second point.
|
|
schedulers:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- armv7l
|
|
- i586
|
|
- x86_64
|
|
xml:
|
|
name: configuration
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
In the example below, _default_access_disabled_ is one of the possible configuration options which is set in the options.yml file.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: no_permission_to_change
|
|
summary: The api has a different value for default_access_disabled
|
|
configured in options.yml file. Remove it there first
|
|
tags:
|
|
- Configuration
|
|
"/distributions":
|
|
get:
|
|
summary: List all distributions.
|
|
description: |
|
|
List all distributions that can be build against.
|
|
This will not list distributions that are available via [interconnect](https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.concepts.html#id-1.5.10.3.5).
|
|
Check /distributions/include_remotes for this.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [distributions.rng](../schema/distributions.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
distribution:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distributions
|
|
example:
|
|
distribution:
|
|
- vendor: opensuse
|
|
version: Tumbleweed
|
|
id: 16626
|
|
name: openSUSE Tumbleweed
|
|
project: openSUSE:Factory
|
|
reponame: openSUSE_Tumbleweed
|
|
repository: snapshot
|
|
link: http://www.opensuse.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 16
|
|
height: 16
|
|
architecture:
|
|
- i586
|
|
- x86_64
|
|
- vendor: openSUSE
|
|
version: '15.3'
|
|
id: 16629
|
|
name: openSUSE Leap 15.3
|
|
project: openSUSE:Leap:15.3
|
|
reponame: openSUSE_Leap_15.3
|
|
repository: standard
|
|
link: http://www.opensuse.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 16
|
|
height: 16
|
|
architecture: x86_64
|
|
- vendor: Fedora
|
|
version: '33'
|
|
id: 16731
|
|
name: Fedora 33
|
|
project: Fedora:33
|
|
reponame: Fedora_33
|
|
repository: standard
|
|
link: http://www.fedoraproject.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/fedora.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/fedora.png
|
|
width: 16
|
|
height: 16
|
|
architecture:
|
|
- i586
|
|
- x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Distributions
|
|
post:
|
|
summary: Create a distribution.
|
|
description: |
|
|
Create a distribution.
|
|
|
|
This is only for admins.
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: Distribution definition
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distribution
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [distribution.rng](../schema/distribution.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distribution
|
|
example:
|
|
distribution:
|
|
- vendor: opensuse
|
|
version: Tumbleweed
|
|
id: 16626
|
|
name: openSUSE Tumbleweed
|
|
project: openSUSE:Factory
|
|
reponame: openSUSE_Tumbleweed
|
|
repository: snapshot
|
|
link: http://www.opensuse.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 16
|
|
height: 16
|
|
architecture:
|
|
- i586
|
|
- x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Distributions
|
|
"/distributions/include_remotes":
|
|
get:
|
|
summary: List all distributions including remote.
|
|
description: List all distributions that can be build against, including the
|
|
ones provided by the interconnect.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [distributions.rng](../schema/distributions.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
distribution:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distributions
|
|
example:
|
|
distribution:
|
|
- vendor: opensuse
|
|
version: Tumbleweed
|
|
id: 16626
|
|
name: openSUSE Tumbleweed
|
|
project: openSUSE:Factory
|
|
reponame: openSUSE_Tumbleweed
|
|
repository: snapshot
|
|
link: http://www.opensuse.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 16
|
|
height: 16
|
|
architecture:
|
|
- i586
|
|
- x86_64
|
|
- vendor: openSUSE
|
|
version: '15.3'
|
|
id: 16629
|
|
name: openSUSE Leap 15.3
|
|
project: openSUSE:Leap:15.3
|
|
reponame: openSUSE_Leap_15.3
|
|
repository: standard
|
|
link: http://www.opensuse.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
width: 16
|
|
height: 16
|
|
architecture: x86_64
|
|
- vendor: Fedora
|
|
version: '33'
|
|
id: 16731
|
|
name: Fedora 33
|
|
project: Fedora:33
|
|
reponame: Fedora_33
|
|
repository: standard
|
|
link: http://www.fedoraproject.org/
|
|
icon:
|
|
- url: https://static.opensuse.org/distributions/logos/fedora.png
|
|
width: 8
|
|
height: 8
|
|
- url: https://static.opensuse.org/distributions/logos/fedora.png
|
|
width: 16
|
|
height: 16
|
|
architecture:
|
|
- i586
|
|
- x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Distributions
|
|
"/distributions/{distribution_id}":
|
|
get:
|
|
summary: Show a distribution.
|
|
description: Show a distribution that can be build against.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: distribution_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the distribution
|
|
example: 16626
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distribution
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Distribution with 'id'=0
|
|
tags:
|
|
- Distributions
|
|
put:
|
|
summary: Update a distribution.
|
|
description: Update the data of a distribution.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: distribution_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the distribution
|
|
example: 16626
|
|
requestBody:
|
|
description: Distribution definition
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distribution
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The Request has succeeded.
|
|
|
|
XML Schema used for body validation: [distribution.rng](../schema/distribution.rng)
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Distribution with 'id'=0
|
|
tags:
|
|
- Distributions
|
|
delete:
|
|
summary: Delete a distribution.
|
|
description: |
|
|
Delete a distribution.
|
|
|
|
This is only for admins.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: distribution_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the distribution
|
|
example: 16626
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Distribution with 'id'=0
|
|
tags:
|
|
- Distributions
|
|
"/distributions/bulk_replace":
|
|
put:
|
|
summary: Bulk replace all distributions.
|
|
description: |
|
|
Bulk replace all distributions.
|
|
|
|
This is only for admins.
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: Distributions definition
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
distribution:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 16626
|
|
xml:
|
|
attribute: true
|
|
vendor:
|
|
type: string
|
|
example: opensuse
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
example: Tumbleweed
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: openSUSE Tumbleweed
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
repository:
|
|
type: string
|
|
example: snapshot
|
|
reponame:
|
|
type: string
|
|
example: openSUSE_Tumbleweed
|
|
link:
|
|
type: string
|
|
example: http://www.opensuse.org/
|
|
architecture:
|
|
type: array
|
|
example:
|
|
- i586
|
|
- x86_64
|
|
items:
|
|
type: string
|
|
icon:
|
|
type: array
|
|
example:
|
|
- width: 8
|
|
height: 8
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
- width: 16
|
|
height: 16
|
|
url: https://static.opensuse.org/distributions/logos/opensuse.png
|
|
items:
|
|
type: object
|
|
properties:
|
|
width:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
height:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: distributions
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The Request has succeeded.
|
|
|
|
XML Schema used for body validation: [distributions.rng](../schema/distributions.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: validation_failed
|
|
summary: 'distributions validation error: 40:0: ERROR: Expecting an
|
|
element name, got nothing'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Distributions
|
|
"/group":
|
|
get:
|
|
summary: List available groups.
|
|
description: List available groups.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: '2'
|
|
entry:
|
|
- name: group-admin
|
|
- name: group-test
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Groups
|
|
"/group/{group_title}":
|
|
get:
|
|
summary: Read group data.
|
|
description: Read group data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: group_title
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Group title
|
|
example: group-test
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [group.rng](../schema/group.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
example: group-test
|
|
maintainer:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
example: user-test
|
|
xml:
|
|
attribute: true
|
|
person:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
example: user-test
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
wrapped: true
|
|
xml:
|
|
name: group
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Group 'group-testd'
|
|
tags:
|
|
- Groups
|
|
post:
|
|
summary: Modify group data.
|
|
description: Modify group data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: group_title
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Group title
|
|
example: group-test
|
|
- in: query
|
|
name: cmd
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- add_user
|
|
- remove_user
|
|
- set_email
|
|
description: |
|
|
Command to be executed. It takes one of these available values:
|
|
* `add_user`: add a user to a group. `userid` query parameter must be also used.
|
|
* `remove_user`: remove a user from a group. `userid` query parameter must be also used.
|
|
* `set_email`: set email adress of group. `email` query parameter must be also used.
|
|
- in: query
|
|
name: userid
|
|
schema:
|
|
type: string
|
|
description: User login. Used with `cmd=add_user` or `cmd=remove_user`.
|
|
- in: query
|
|
name: email
|
|
schema:
|
|
type: string
|
|
description: Group email. Used with `cmd=set_email`.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: bad_request
|
|
summary: cmd must be set to add_user or remove_user
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
user_not_found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find User with login = user_test
|
|
summary: User Not Found
|
|
group_not_found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Group 'group-testd'
|
|
summary: Group Not Found
|
|
tags:
|
|
- Groups
|
|
put:
|
|
summary: Write group data.
|
|
description: Write group data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: group_title
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Group title
|
|
example: group-test
|
|
requestBody:
|
|
description: |
|
|
Group definition.
|
|
|
|
XML Schema used for body validation: [group.rng](../schema/group.rng)
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
title:
|
|
type: string
|
|
example: group-test
|
|
maintainer:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
example: user-test
|
|
xml:
|
|
attribute: true
|
|
person:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
example: user-test
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
wrapped: true
|
|
xml:
|
|
name: group
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Group 'group-testd'
|
|
tags:
|
|
- Groups
|
|
delete:
|
|
summary: Delete a group.
|
|
description: Delete a group.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: group_title
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Group title
|
|
example: group-test
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Group 'group-testd'
|
|
tags:
|
|
- Groups
|
|
"/image_templates":
|
|
get:
|
|
summary: Get the list of image templates.
|
|
description: Get the list of image templates.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: List of image templates.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
image_template_package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
xml:
|
|
name: image_template_project
|
|
wrapped: true
|
|
xml:
|
|
name: image_template_projects
|
|
wrapped: true
|
|
example:
|
|
- name: openSUSE:Templates:Images:Tumbleweed
|
|
image_template_package:
|
|
- name: kiwi-templates-Minimal
|
|
title: openSUSE Tumbleweed Minimal Images
|
|
description: Images based on Tumbleweed for several platforms.
|
|
- name: minimal-container-image
|
|
title: Application Container using KIWI
|
|
description: |
|
|
Starting ground to build a container image for openSUSE:Factory.
|
|
|
|
It follows the requirements outlined on https://en.opensuse.org/Building_derived_containers.
|
|
- name: OBS:Flatpak:Templates
|
|
image_template_package:
|
|
- name: FlatpakTemplate
|
|
title: Flatpak manifest template
|
|
description: This is an example template how to build a Flatpak
|
|
app in Open Build Service (OBS)
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- General Information
|
|
"/issue_trackers":
|
|
get:
|
|
summary: Get the list of issue trackers.
|
|
description: Get the list of issue trackers.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
List of issue trackers.
|
|
|
|
XML Schema used for body validation: [issue_trackers.rng](../schema/issue_trackers.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: fate
|
|
kind:
|
|
type: string
|
|
example: fate
|
|
description:
|
|
type: string
|
|
example: openSUSE Feature Database
|
|
url:
|
|
type: string
|
|
example: https://features.opensuse.org/
|
|
show-url:
|
|
type: string
|
|
example: https://features.opensuse.org/@@@
|
|
regex:
|
|
type: string
|
|
example: "(?:fate|Fate|FATE)\\s*#\\s*(\\d+)"
|
|
label:
|
|
type: string
|
|
example: fate#@@@
|
|
enable-fetch:
|
|
type: string
|
|
example: 'false'
|
|
xml:
|
|
name: issue-tracker
|
|
xml:
|
|
name: issue-trackers
|
|
wrapped: true
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Issue Trackers
|
|
post:
|
|
summary: Create an issue tracker.
|
|
description: Create an issue tracker.
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: |
|
|
Issue tracker definition.
|
|
|
|
XML Schema used for body validation: [issue_tracker.rng](../schema/issue_tracker.rng)
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: fate
|
|
kind:
|
|
type: string
|
|
example: fate
|
|
description:
|
|
type: string
|
|
example: openSUSE Feature Database
|
|
url:
|
|
type: string
|
|
example: https://features.opensuse.org/
|
|
show-url:
|
|
type: string
|
|
example: https://features.opensuse.org/@@@
|
|
regex:
|
|
type: string
|
|
example: "(?:fate|Fate|FATE)\\s*#\\s*(\\d+)"
|
|
label:
|
|
type: string
|
|
example: fate#@@@
|
|
enable-fetch:
|
|
type: string
|
|
example: 'false'
|
|
xml:
|
|
name: issue-tracker
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Validation failed.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
empty_body:
|
|
value:
|
|
code: validation_failed
|
|
summary: Document is empty, not allowed for issue_tracker
|
|
summary: Empty Body
|
|
wrong_xml_element:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'issue_tracker validation error: 1:0: ERROR: Expecting
|
|
element issue-tracker, got foo'
|
|
summary: Wrong XML Element
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Issue Trackers
|
|
"/issue_trackers/{issue_tracker_name}":
|
|
get:
|
|
summary: Show an issue tracker.
|
|
description: Show an issue tracker.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: issue_tracker_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Issue tracker name
|
|
example: fate
|
|
responses:
|
|
'200':
|
|
description: |
|
|
Issue tracker definition.
|
|
|
|
XML Schema used for body validation: [issue_tracker.rng](../schema/issue_tracker.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: fate
|
|
kind:
|
|
type: string
|
|
example: fate
|
|
description:
|
|
type: string
|
|
example: openSUSE Feature Database
|
|
url:
|
|
type: string
|
|
example: https://features.opensuse.org/
|
|
show-url:
|
|
type: string
|
|
example: https://features.opensuse.org/@@@
|
|
regex:
|
|
type: string
|
|
example: "(?:fate|Fate|FATE)\\s*#\\s*(\\d+)"
|
|
label:
|
|
type: string
|
|
example: fate#@@@
|
|
enable-fetch:
|
|
type: string
|
|
example: 'false'
|
|
xml:
|
|
name: issue-tracker
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Unable to find issue tracker 'foo'
|
|
tags:
|
|
- Issue Trackers
|
|
put:
|
|
summary: Update or create an issue tracker.
|
|
description: Update the issue tracker given as path parameter. If it is not
|
|
found, create it.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: issue_tracker_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Issue tracker name
|
|
example: fate
|
|
requestBody:
|
|
description: |
|
|
Issue tracker definition.
|
|
|
|
XML Schema used for body validation: [issue_tracker.rng](../schema/issue_tracker.rng)
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: fate
|
|
kind:
|
|
type: string
|
|
example: fate
|
|
description:
|
|
type: string
|
|
example: openSUSE Feature Database
|
|
url:
|
|
type: string
|
|
example: https://features.opensuse.org/
|
|
show-url:
|
|
type: string
|
|
example: https://features.opensuse.org/@@@
|
|
regex:
|
|
type: string
|
|
example: "(?:fate|Fate|FATE)\\s*#\\s*(\\d+)"
|
|
label:
|
|
type: string
|
|
example: fate#@@@
|
|
enable-fetch:
|
|
type: string
|
|
example: 'false'
|
|
xml:
|
|
name: issue-tracker
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Validation failed.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
empty_body:
|
|
value:
|
|
code: validation_failed
|
|
summary: Document is empty, not allowed for issue_tracker
|
|
summary: Empty Body
|
|
wrong_xml_element:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'issue_tracker validation error: 1:0: ERROR: Expecting
|
|
element issue-tracker, got foo'
|
|
summary: Wrong XML Element
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Issue Trackers
|
|
delete:
|
|
summary: Delete an issue tracker.
|
|
description: Delete an issue tracker.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: issue_tracker_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Issue tracker name
|
|
example: fate
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Unable to find issue tracker 'foo'
|
|
tags:
|
|
- Issue Trackers
|
|
"/issue_trackers/{issue_tracker_name}/issues/{issue_name}":
|
|
get:
|
|
summary: Show an issue of an issue tracker.
|
|
description: Show an issue of an issue tracker.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: issue_tracker_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Issue tracker name
|
|
example: fate
|
|
- in: path
|
|
name: issue_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Issue name.
|
|
example: 12345
|
|
responses:
|
|
'200':
|
|
description: |
|
|
Issue definition.
|
|
|
|
XML Schema used for body validation: [issue.rng](../schema/issue.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
created_at:
|
|
type: string
|
|
example: 2021-01-18 19:17:51 UTC
|
|
updated_at:
|
|
type: string
|
|
example: 2021-01-18 19:17:51 UTC
|
|
name:
|
|
type: string
|
|
example: 12345
|
|
tracker:
|
|
type: string
|
|
example: fate
|
|
label:
|
|
type: string
|
|
example: fate#12345
|
|
url:
|
|
type: string
|
|
example: https://features.opensuse.org/12345
|
|
state:
|
|
type: string
|
|
summary:
|
|
type: string
|
|
owner:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
email:
|
|
type: string
|
|
realname:
|
|
type: string
|
|
xml:
|
|
name: issue
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: issue_tracker_not_found
|
|
summary: 'Error: Issue Tracker ''foo'' not found.'
|
|
tags:
|
|
- Issue Trackers
|
|
"/my/notifications":
|
|
get:
|
|
summary: List the notifications of the authenticated user.
|
|
description: |
|
|
**(Unstable)** List user's notifications.
|
|
|
|
**NOTE:** Available only in OBS Unstable.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: project
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: page
|
|
schema:
|
|
type: integer
|
|
- in: query
|
|
name: show_maximum
|
|
schema:
|
|
type: string
|
|
example: 1
|
|
- in: query
|
|
name: notifications_type
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- read
|
|
- comments
|
|
- requests
|
|
- unread
|
|
- incoming_requests
|
|
- outgoing_requests
|
|
- relationships_created
|
|
- relationships_deleted
|
|
- build_failures
|
|
- reports
|
|
- workflow_runs
|
|
- appealed_decisions
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
total_pages:
|
|
type: string
|
|
current_page:
|
|
type: string
|
|
notification:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
description:
|
|
type: string
|
|
title:
|
|
type: string
|
|
who:
|
|
type: string
|
|
event_type:
|
|
type: string
|
|
xml:
|
|
name: notifications
|
|
example:
|
|
count: 2
|
|
total_pages: 1
|
|
current_page: 0
|
|
notification:
|
|
- id: 3
|
|
title: test 1
|
|
who: Administrator
|
|
state: new
|
|
when: 2021-09-30 09:12:02.000000000 +02:00
|
|
event_type: review_wanted
|
|
- id: 25
|
|
title: test 2
|
|
who: User 2
|
|
event_type: comment_for_package
|
|
when: 2021-09-27 09:16:19.000000000 +02:00
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Notifications
|
|
"/my/notifications/{id}":
|
|
put:
|
|
summary: Mark a notification as read/unread.
|
|
description: |
|
|
**(Unstable)** If a notification is unread, it will be marked as read. If a notification is read, it will be marked as unread.
|
|
|
|
**NOTE:** Available only in OBS Unstable.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'403':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Notification with 'id'=213453
|
|
tags:
|
|
- Notifications
|
|
"/person":
|
|
get:
|
|
summary: List all people.
|
|
description: List all people.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: prefix
|
|
schema:
|
|
type: string
|
|
required: false
|
|
description: A prefix to filter the people to look for
|
|
example: Adm
|
|
- in: query
|
|
name: confirmed
|
|
schema:
|
|
type: string
|
|
required: false
|
|
description: List only active users. This parameter is interpreted as `true`
|
|
if present, `false` otherwise.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: '9'
|
|
entry:
|
|
- name: Admin
|
|
- name: _nobody_
|
|
- name: Iggy
|
|
- name: user_1
|
|
- name: repo-checker
|
|
- name: reviewhero
|
|
- name: user_2
|
|
- name: user_3
|
|
- name: Requestor
|
|
tags:
|
|
- Person
|
|
post:
|
|
summary: Executes a command on the person endpoint.
|
|
description: |
|
|
Allows executing command on the person endpoint.
|
|
|
|
As of now, the only command allowed is 'register'.
|
|
parameters:
|
|
- in: query
|
|
name: cmd
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- register
|
|
required: true
|
|
description: The command to execute
|
|
example: register
|
|
requestBody:
|
|
description: The data for the person to register.
|
|
required: true
|
|
content:
|
|
application/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
example: jane
|
|
realname:
|
|
type: string
|
|
example: Jane Doe
|
|
email:
|
|
type: string
|
|
example: janedoe@example.com
|
|
password:
|
|
type: string
|
|
example: superpassword123
|
|
note:
|
|
type: string
|
|
example: Jane works in the Engineering team
|
|
state:
|
|
type: string
|
|
example: confirmed
|
|
xml:
|
|
name: unregisteredperson
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Command:
|
|
value:
|
|
code: unknown_command
|
|
summary: Allowed command is 'register'.
|
|
Bad Request:
|
|
value:
|
|
code: err_register_save
|
|
summary: 'Could not save the registration, details: Login is the
|
|
name of an already existing user and Password can''t be blank.'
|
|
tags:
|
|
- Person
|
|
"/person/register":
|
|
post:
|
|
summary: Registers a new person
|
|
deprecated: true
|
|
description: This endpoint is exactly the same as `POST /person?cmd=register`,
|
|
please use that one.
|
|
requestBody:
|
|
description: Data for the person to register.
|
|
required: true
|
|
content:
|
|
application/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
example: jane
|
|
realname:
|
|
type: string
|
|
example: Jane Doe
|
|
email:
|
|
type: string
|
|
example: janedoe@example.com
|
|
password:
|
|
type: string
|
|
example: superpassword123
|
|
note:
|
|
type: string
|
|
example: Jane works in the Engineering team
|
|
state:
|
|
type: string
|
|
example: confirmed
|
|
xml:
|
|
name: unregisteredperson
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: permission_denied
|
|
summary: |
|
|
User accounts can not be registered via OBS when in LDAP mode. Please refer
|
|
to your LDAP server to create new users.
|
|
tags:
|
|
- Person
|
|
"/person/{login}":
|
|
get:
|
|
summary: Get details about a person
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [user.rng](../schema/user.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
example: user_1
|
|
email:
|
|
type: string
|
|
example: unconfigured@openbuildservice.org
|
|
realname:
|
|
type: string
|
|
example: User1
|
|
state:
|
|
type: string
|
|
example: confirmed
|
|
globalrole:
|
|
type: string
|
|
ignore_auth_services:
|
|
type: boolean
|
|
watchlist:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: object
|
|
properties:
|
|
number:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: watchlist
|
|
xml:
|
|
name: person
|
|
example:
|
|
login: Admin
|
|
email: root@localhost
|
|
realname: OBS Instance Superuser
|
|
state: confirmed
|
|
globalrole: Admin
|
|
ignore_auth_services: false
|
|
watchlist:
|
|
- project:
|
|
name: home:Admin
|
|
package:
|
|
name: ad
|
|
project: home:Admin
|
|
request:
|
|
number: '7'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find User with login = <login>
|
|
tags:
|
|
- Person
|
|
post:
|
|
summary: Perform changes on a registered person
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
- in: query
|
|
name: cmd
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- change_password
|
|
- lock
|
|
- delete
|
|
required: true
|
|
description: The command to execute against the provided person.
|
|
example: change_password
|
|
requestBody:
|
|
description: The password in plain text when the cmd param is 'change_password'.
|
|
required: false
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [api_response.xsd](../schema/api_response.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad request.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Command:
|
|
value:
|
|
code: unknown_command
|
|
summary: Allowed commands are '<some command>'.
|
|
Bad Request:
|
|
value:
|
|
code: err_register_save
|
|
summary: 'Could not save the registration, details: Login is the
|
|
name of an already existing user and Password can''t be blank.'
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
update_user_not_authorized:
|
|
value:
|
|
code: update_user_not_authorized
|
|
summary: You are not authorized to update this User.
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find User with login = <login>
|
|
tags:
|
|
- Person
|
|
put:
|
|
summary: Update person
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
requestBody:
|
|
description: The new data for the person referred in the login parameter.
|
|
required: true
|
|
content:
|
|
application/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
example: jane
|
|
realname:
|
|
type: string
|
|
example: Jane Doe
|
|
email:
|
|
type: string
|
|
example: janedoe@example.com
|
|
password:
|
|
type: string
|
|
example: superpassword123
|
|
note:
|
|
type: string
|
|
example: Jane works in the Engineering team
|
|
state:
|
|
type: string
|
|
example: confirmed
|
|
xml:
|
|
name: unregisteredperson
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Subaccount chaining:
|
|
value:
|
|
code: subaccount_chaining
|
|
summary: A subaccount can not be assigned to subaccount <login>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Change user info not permitted:
|
|
value:
|
|
code: change_userinfo_no_permission
|
|
summary: no permission to change userinfo for user <login>
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: password_empty
|
|
summary: Requested non-existing user
|
|
tags:
|
|
- Person
|
|
"/person/{login}/group":
|
|
get:
|
|
summary: List the groups of a person
|
|
description: List the groups the person belongs to.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: '2'
|
|
entry:
|
|
- name: factory-maintainers
|
|
- name: obs-developers
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find User with login = fake
|
|
tags:
|
|
- Person
|
|
"/person/{login}/token":
|
|
get:
|
|
summary: List the authentication tokens of a person.
|
|
description: List the authentication tokens of a person.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [tokenlist.rng](../schema/tokenlist.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
string:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
kind:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
triggered_at:
|
|
type: string
|
|
format: date-time
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
count: 2
|
|
entry:
|
|
- id: 3
|
|
string: FK49K39DKK
|
|
kind: rss
|
|
triggered_at: 2021-10-28 12:32:18 UTC
|
|
- id: 25
|
|
description: Release ghcz
|
|
string: 4T04JGI691
|
|
kind: release
|
|
triggered_at: 2021-09-21 11:12:18 UTC
|
|
project: devel:languages:haskell
|
|
package: ghcz
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: view_user_not_authorized
|
|
summary: You are not authorized to view this User.
|
|
tags:
|
|
- Person
|
|
post:
|
|
summary: Create a new authentication token for a person.
|
|
description: |
|
|
Create a new authentication token for a person.
|
|
|
|
The token may be limited to a specific package. In this case the query parameters
|
|
`project` and `package` should be provided.
|
|
|
|
With an empty request body, a token of the default kind 'runservice' is created.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
- in: query
|
|
name: description
|
|
schema:
|
|
type: string
|
|
description: 'Token description. It helps to identify a token from the rest
|
|
of the tokens of a user.
|
|
|
|
'
|
|
example: Rebuild gchz
|
|
- in: query
|
|
name: project
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Project name. Should be provided, together with the package query parameter,
|
|
to limit the token to a specific package.
|
|
example: home:hans
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Package name. Should be provided, together with the project query parameter,
|
|
to limit the token to a specific package.
|
|
example: gchz
|
|
- in: query
|
|
name: operation
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- runservice
|
|
- rebuild
|
|
- release
|
|
description: |
|
|
Operation indicates the kind of token that is going to be created.
|
|
|
|
When operation is not specified, 'runservice' is the default value.
|
|
example: runservice
|
|
- in: query
|
|
name: scm_token
|
|
schema:
|
|
type: string
|
|
description: |
|
|
**(Beta/Unstable)**
|
|
|
|
SCM token used in OBS workflows to report back the workflow status, when the operation is workflow.
|
|
|
|
It's normally possible to generate SCM tokens directly on the SCM's website like GitHub or GitLab.
|
|
example: ghp_fake_token_123
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
|
|
**NOTE:** This is an example of a valid response. It should include the attribute 'name'
|
|
in every 'data' tag, which is missing in the example using the schema.
|
|
```
|
|
<status code="ok">
|
|
<summary>Ok</summary>
|
|
<data name="token">i6iF4M5cn</data>
|
|
<data name="id">5</data>
|
|
</status>
|
|
```
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
data:
|
|
- i6iF4M5cn
|
|
- 5
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_token
|
|
summary: 'Failed to create token: Name is too long (maximum is 64
|
|
characters).'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: update_user_not_authorized
|
|
summary: You are not authorized to update this User.
|
|
tags:
|
|
- Person
|
|
"/person/{login}/token/{id}":
|
|
delete:
|
|
summary: Delete a token of a person.
|
|
description: Delete a token of the specified person.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Id of the token to be removed.
|
|
example: 3
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: update_user_not_authorized
|
|
summary: You are not authorized to update this User.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Token with 'id'=33
|
|
tags:
|
|
- Person
|
|
"/person/{login}/watchlist":
|
|
get:
|
|
summary: Get details about watchlist
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: object
|
|
properties:
|
|
number:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: watchlist
|
|
example:
|
|
- project:
|
|
name: home:Admin
|
|
package:
|
|
name: ad
|
|
project: home:Admin
|
|
request:
|
|
number: '7'
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: password_empty
|
|
summary: Requested non-existing user
|
|
tags:
|
|
- Person
|
|
put:
|
|
summary: Update watchlist
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: login
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Person login.
|
|
example: Admin
|
|
requestBody:
|
|
description: The new data for the person referred in the login parameter.
|
|
required: true
|
|
content:
|
|
application/xml:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: object
|
|
properties:
|
|
number:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: watchlist
|
|
example:
|
|
- project:
|
|
name: home:Admin
|
|
package:
|
|
name: ad
|
|
project: home:Admin
|
|
request:
|
|
number: '7'
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'404':
|
|
description: |
|
|
Not found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: password_empty
|
|
summary: Requested non-existing user
|
|
tags:
|
|
- Person
|
|
"/published":
|
|
get:
|
|
summary: List all the published projects.
|
|
description: Get a list of all the projects, all of them are considered published.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: OBS:Server:Unstable
|
|
- name: devel:languages:ruby
|
|
- name: openSUSE:Maintenance:9810
|
|
- name: zypp:plugins
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Published Binaries
|
|
"/published/{project_name}":
|
|
get:
|
|
summary: List the repositories of a project with published binaries
|
|
description: Get a list of the repositories of the project that already have
|
|
published binaries.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: SLE_15_SP3
|
|
- name: containers
|
|
- name: images
|
|
- name: openSUSE_15.2
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission for binaries from project home:Admin
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Project
|
|
tags:
|
|
- Published Binaries
|
|
"/published/{project_name}/{repository_name}":
|
|
get:
|
|
summary: List the content of the directory tree where the binaries are published
|
|
at the level project/repository.
|
|
description: |
|
|
Get a list of architectures' directories and other files (.repo, .ymp, etc.) present at the level
|
|
project/repository of the directory tree where the published binaries are stored.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: OBS:Server:Unstable.repo
|
|
- name: OBS_Server.ymp
|
|
- name: aarch64
|
|
- name: x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission for binaries from project home:Admin
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Project
|
|
tags:
|
|
- Published Binaries
|
|
"/published/{project_name}/{repository_name}?view=status":
|
|
get:
|
|
summary: Present information about the last publication of the pair project
|
|
and repository.
|
|
description: Get information about the build process (build id, start time,
|
|
etc.) for the pair project and repository.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- status
|
|
description: Set this parameter to status in order to get details about the
|
|
last publication.
|
|
example: status
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
example: succeeded
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: integer
|
|
example: 1617574611
|
|
endtime:
|
|
type: integer
|
|
example: 1617574611
|
|
buildid:
|
|
type: integer
|
|
example: 1569496563
|
|
xml:
|
|
name: status
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission for binaries from project home:Admin
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project:
|
|
code: not_found
|
|
summary: Couldn't find Project
|
|
unknown:
|
|
value:
|
|
code: unknown
|
|
tags:
|
|
- Published Binaries
|
|
"/published/{project_name}/{repository_name}/{architecture_name}":
|
|
get:
|
|
summary: List the content of the directory tree where the binaries are published
|
|
at the level project/repository/architecture.
|
|
description: |
|
|
Get a list of binaries and other files present at the level project/repository/architecture of the directory
|
|
tree as a result of successful building and publishing processes.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: apache2-mod_auth_memcookie-1.1.1-lp152.2.1.x86_64.rpm
|
|
- name: obs-api-testsuite-rspec-2.11~alpha.20200618T200341.d42d8310aa-lp152.10515.1.x86_64.rpm
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission for binaries from project home:Admin
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Project
|
|
tags:
|
|
- Published Binaries
|
|
"/published/{project_name}/{repository_name}/{architecture_name}/{binary_filename}":
|
|
get:
|
|
summary: Return the binary file itself.
|
|
description: |
|
|
Allow to download the binary file that was published and stored under the directory
|
|
given by project/repository/architecture/.
|
|
|
|
Can response with Media Types like application/x-rpm, text/xml, etc.
|
|
|
|
NOTE: Use this only if you absolutely have to, as it doesn't use the redirector.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: binary_filename
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Binary filename
|
|
example: ctris-0.42.1-8.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/*:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
text/xml:
|
|
schema:
|
|
type: string
|
|
format: binary
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission for binaries from project home:Admin
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
NotFound:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Project
|
|
NoSuchFile:
|
|
value:
|
|
code: 404
|
|
summary: no such file
|
|
details: 404 no such file
|
|
tags:
|
|
- Published Binaries
|
|
"/published/{project_name}/{repository_name}/{architecture_name}/{binary_filename}?view=ymp":
|
|
get:
|
|
summary: Generate a ymp pattern that includes the needed repositories to install
|
|
the given binary.
|
|
description: |
|
|
Generate a ymp pattern, which contains the list of packages needed for intalling certain software without having to
|
|
create dependencies between them.
|
|
|
|
Read more about patterns [in this tutorial](https://en.opensuse.org/openSUSE:Build_Service_Tutorial#Create_Patterns).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: binary_filename
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Binary filename
|
|
example: ctris-0.42.1-8.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: OK.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
group:
|
|
type: object
|
|
properties:
|
|
repositories:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
recommended:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
summary:
|
|
type: string
|
|
description:
|
|
type: string
|
|
url:
|
|
type: string
|
|
software:
|
|
type: object
|
|
properties:
|
|
item:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
summary:
|
|
type: string
|
|
description:
|
|
type: string
|
|
distversion:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xmlns:os:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: http://opensuse.org/Standards/One_Click_Install
|
|
xmlns:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: http://opensuse.org/Standards/One_Click_Install
|
|
xml:
|
|
name: metapackage
|
|
example:
|
|
group:
|
|
repositories:
|
|
repository:
|
|
- recommended: true
|
|
name: OBS:Server:Unstable
|
|
summary: Developer versions of the Open Build Service Server
|
|
description: These are the developer versions of the tools for
|
|
the Open Build Service project
|
|
url: https://download.opensuse.org/repositories/OBS:/Server:/Unstable/openSUSE_15.2
|
|
- recommended: false
|
|
name: openSUSE:Leap:15.2
|
|
summary: openSUSE Leap 15.2
|
|
description: openSUSE Leap borrows packages from SLE for the
|
|
base system
|
|
url: http://download.opensuse.org/distribution/leap/15.2/repo/oss
|
|
software:
|
|
item:
|
|
name: virt-v2v-debuginfo
|
|
summary: Debug information for package virt-v2v
|
|
description: This package provides debug information for package
|
|
virt-v2v
|
|
distversion: openSUSEsLeap 15.2
|
|
xmlns:os: http://opensuse.org/Standards/One_Click_Install
|
|
xmlns: http://opensuse.org/Standards/One_Click_Install
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: download_binary_no_permission
|
|
summary: No permission for binaries from project home:Admin
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find Project
|
|
tags:
|
|
- Published Binaries
|
|
"/request":
|
|
get:
|
|
summary: Get a simple directory listing of all requests
|
|
description: Get a simple directory listing of all requests
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
entry:
|
|
- name: 122
|
|
- name: 123
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Requests
|
|
post:
|
|
summary: Create a request
|
|
description: Create a request
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: cmd
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- create
|
|
description: This endpoint will refuse the creation of a new request if this
|
|
parameter is not set.
|
|
- in: query
|
|
name: addrevision
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Ask the server to add revisions of the current sources to the
|
|
request.
|
|
- in: query
|
|
name: ignore_delegate
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Enforce a new package instance in a project which has OBS:DelegateRequestTarget
|
|
set
|
|
- in: query
|
|
name: ignore_build_state
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Skip the build state check
|
|
requestBody:
|
|
description: |
|
|
Request XML
|
|
|
|
**NOTE:** You cannot pass the request id in the xml. You can pass the history in the xml, but it will be simply ignored.
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK.
|
|
|
|
XML Schema used for body validation: [request.rng](../schema/request.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: expand_error
|
|
summary: The source of package test-project/test-package for revision
|
|
2 is broken
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: create_bs_request_not_authorized
|
|
summary: You are not authorized to create this Bs request.
|
|
tags:
|
|
- Requests
|
|
"/request?view=collection":
|
|
get:
|
|
summary: Get a collection of requests for a specified target.
|
|
description: |
|
|
Get a collection of requests for a specified target.
|
|
|
|
**NOTE:** You need to set at least one of the following parameters in order to use this endpoint:
|
|
|
|
* `user`
|
|
* `group`
|
|
* `project`
|
|
* `package`
|
|
* `states`
|
|
* `reviewstates`
|
|
* `types`
|
|
* `ids`
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: user
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Filter the results of requests and open reviews for a certain user. If no other parameters are
|
|
applied, it will include requests where the user is maintainer of the target or the creator of
|
|
the request.
|
|
example: hans
|
|
- in: query
|
|
name: group
|
|
schema:
|
|
type: string
|
|
description: Filter the results of requests and open reviews for a certain
|
|
group.
|
|
example: obs-group
|
|
- in: query
|
|
name: project
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Limit the results to requests with this project as source or target,
|
|
or requests which were assigned to be reviewed by the maintainers of this project.
|
|
example: home:hans
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Limit the results to requests with this package as source or target,
|
|
or requests which were assigned to be reviewed by the maintainers of this package.
|
|
example: ruby
|
|
- in: query
|
|
name: states
|
|
schema:
|
|
type: string
|
|
description: Limit results to a given request state. Multiple states can be
|
|
provided as a comma separated list.
|
|
example: new,review
|
|
- in: query
|
|
name: reviewstates
|
|
schema:
|
|
type: string
|
|
description: Limit results to a given review state. Multiple states can be
|
|
provided as a comma separated list.
|
|
example: new,declined,accepted,superseded,obsoleted
|
|
- in: query
|
|
name: types
|
|
schema:
|
|
type: string
|
|
description: Limit the results to certain action types. Multiple types can
|
|
be provided as a comma separated list.
|
|
example: add_role,submit
|
|
- in: query
|
|
name: roles
|
|
schema:
|
|
type: string
|
|
description: Limit the results to a given role. Multiple roles can be provided
|
|
as a comma separated list.
|
|
example: creator,maintainer,reviewer,source,target
|
|
- in: query
|
|
name: withhistory
|
|
schema:
|
|
type: string
|
|
description: Include the request history in the results.
|
|
example: 1
|
|
- in: query
|
|
name: withfullhistory
|
|
schema:
|
|
type: string
|
|
description: Includes both, request and review history in the results.
|
|
example: 1
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the results by the specified amount of requests.
|
|
example: 7
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Offset the results by the specified amount of requests.
|
|
example: 7
|
|
- in: query
|
|
name: ids
|
|
schema:
|
|
type: string
|
|
description: Limit the result to specified request id's. Multiple id's can
|
|
be provided as a comma separated list.
|
|
example: 151923
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: string
|
|
example: 7
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
xml:
|
|
name: collection
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Require Filter:
|
|
value:
|
|
code: require_filter
|
|
summary: This call requires at least one filter, either by user,
|
|
project or package or states or types or reviewstates
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find User with login = foo
|
|
tags:
|
|
- Requests
|
|
"/request/{id}":
|
|
get:
|
|
summary: Show details about a specified request.
|
|
description: Show details about a specified request.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
- in: query
|
|
name: withhistory
|
|
schema:
|
|
type: string
|
|
description: Include the request history in the results.
|
|
example: 1
|
|
- in: query
|
|
name: withfullhistory
|
|
schema:
|
|
type: string
|
|
description: Includes both, request and review history in the results.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK.
|
|
|
|
XML Schema used for body validation: [request.rng](../schema/request.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find request with id '5'
|
|
tags:
|
|
- Requests
|
|
post:
|
|
summary: Apply certain actions on a specified request.
|
|
description: Apply certain actions on a specified request.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
- in: query
|
|
name: cmd
|
|
description: |
|
|
- `addreview`:
|
|
Add a review to a request. **NOTE:** You need to specify who has to address
|
|
the review by providing an additional paramter. Possible options are:
|
|
* by_user
|
|
* by_group
|
|
* by_project
|
|
|
|
- `assignreview`:
|
|
Accept a review for a given group and assign a new review to a specific user.
|
|
**NOTE:** You need to pass the group name in the `by_group` parameter
|
|
and the new reviewer in the `reviewer` parameter.
|
|
|
|
- `changestate`: Modify the state of a given request.
|
|
**NOTE:** You need to pass the new state through the `newstate` parameter. Changing
|
|
from one state to another is in certain cases not allowed. You can still force
|
|
the operation by using the `force` parameter.
|
|
|
|
To supersede the given request with another request, pass the ID of the other request
|
|
in the `superseded_by` parameter, in addition to `newstate=superseded`.
|
|
|
|
- `changereviewstate`:
|
|
Change the state of a review inside a given request.
|
|
|
|
- `setpriority`:
|
|
Change the priority of a given request. You have to pass the choosen priority through
|
|
the `priority` parameter. Possible values are:
|
|
* low
|
|
* moderate
|
|
* important
|
|
* critical
|
|
|
|
- `setincident`: Change the target incident for maintenance_incident actions
|
|
**NOTE:** You need to provide the incident number through the `incident`
|
|
parameter.
|
|
|
|
- `setacceptat`: Set or modify the accept_at time. Either specified by the `time`
|
|
parameter or by default set to now.
|
|
|
|
- `approve`: Pre-approve a request in the review state. It will turn into state `accepted`
|
|
after the last review.
|
|
|
|
- `cancelapproval`: Reset the approval of a request
|
|
schema:
|
|
type: string
|
|
style: form
|
|
explode: false
|
|
examples:
|
|
addreview:
|
|
value: cmd=addreview&by_group=heroes
|
|
assignreview:
|
|
value: cmd=assignreview&by_group=heroes&reviewer=foo
|
|
assignreview with revert:
|
|
value: cmd=assignreview&by_group=heroes&reviewer=foo&revert=1
|
|
changestate:
|
|
value: cmd=changestate&newstate=accepted
|
|
changestate (superseded):
|
|
value: cmd=changestate&newstate=superseded&superseded_by=173
|
|
changereviewstate:
|
|
value: cmd=changereviewstate&by_group=heroes&newstate=new&comment=reopened
|
|
setpriority:
|
|
value: cmd=setpriority&priority=low&comment=notsoimportant
|
|
setincident:
|
|
value: cmd=setincident&incident=12
|
|
setacceptat:
|
|
value: cmd=setacceptat&time='2020-12-01%2000:00:00%20UTC'
|
|
approve:
|
|
value: cmd=approve
|
|
cancelapproval:
|
|
value: cmd=cancelapproval
|
|
- in: query
|
|
name: newstate
|
|
schema:
|
|
type: string
|
|
description: Define the new state
|
|
- in: query
|
|
name: superseded_by
|
|
schema:
|
|
type: string
|
|
description: Required and used only with the combination of the `changestate`
|
|
command and the `newstate=superseded` parameter - Supersede the given request
|
|
with another request by passing its ID in this parameter
|
|
- in: query
|
|
name: priority
|
|
schema:
|
|
type: string
|
|
description: Define the new priority
|
|
- in: query
|
|
name: by_user
|
|
schema:
|
|
type: string
|
|
description: Specify the user of a new review
|
|
- in: query
|
|
name: by_group
|
|
schema:
|
|
type: string
|
|
description: Specify the group of the new review
|
|
- in: query
|
|
name: by_project
|
|
schema:
|
|
type: string
|
|
description: Specify the project of the new review
|
|
- in: query
|
|
name: by_package
|
|
schema:
|
|
type: string
|
|
description: Specify the package of the new review
|
|
- in: query
|
|
name: force
|
|
schema:
|
|
type: string
|
|
allowEmptyValue: true
|
|
description: Pass this parameter with an empty value to force the `changestate`
|
|
command.
|
|
- in: query
|
|
name: incident
|
|
schema:
|
|
type: string
|
|
description: Specify the incident number for `setincident`
|
|
- in: query
|
|
name: revert
|
|
schema:
|
|
type: string
|
|
description: Revert an assignreview command to assign review back to group
|
|
- in: query
|
|
name: time
|
|
schema:
|
|
type: string
|
|
description: Specify the time for `setacceptat`
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Add a comment to one of the actions
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: no_maintenance_release_target
|
|
summary: |
|
|
Maintenance incident request contains release target project test_maintenance_project with
|
|
invalid project kind "standard" (should be "maintenance_release") for package package01
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Request Not Modifiable:
|
|
value:
|
|
code: request_not_modifiable
|
|
summary: request is not in review state
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find request with id '120'
|
|
tags:
|
|
- Requests
|
|
put:
|
|
summary: Modify a given request.
|
|
description: |
|
|
Modify a given request.
|
|
|
|
**NOTE:** Certain parts of a request can only be changed by admins.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
requestBody:
|
|
description: |
|
|
Request XML
|
|
|
|
**NOTE:** You cannot pass the request id in the xml. You can pass the history in the xml, but it will be simply ignored.
|
|
|
|
XML Schema used for body validation: [request.rng](../schema/request.rng)
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK.
|
|
|
|
XML Schema used for body validation: [request.rng](../schema/request.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: request_save_error
|
|
summary: Auto accept time is in the past
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find request with id '10'
|
|
tags:
|
|
- Requests
|
|
delete:
|
|
summary: Delete a given request.
|
|
description: Delete a given request.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find request with id '10'
|
|
tags:
|
|
- Requests
|
|
"/request/{id}?cmd=diff":
|
|
post:
|
|
summary: Get the diff for all packages affected by the request.
|
|
description: Get the diff for all packages affected by the request.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
- in: query
|
|
name: diff_to_superseded
|
|
schema:
|
|
type: integer
|
|
description: 'Diff relative to a given superseded request. State the id of
|
|
the corresponding superseded request.
|
|
|
|
'
|
|
example: 10401
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- xml
|
|
description: Set this parameter to xml in order to receive a structured diff
|
|
instead of plain text.
|
|
- in: query
|
|
name: withissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- 1
|
|
description: Include parsed issues from referenced sources
|
|
- in: query
|
|
name: withdescriptionissues
|
|
schema:
|
|
type: string
|
|
description: Include parsed issues from request description
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
text/plain; charset=utf-8:
|
|
schema:
|
|
type: string
|
|
example: |
|
|
spec files:
|
|
-----------
|
|
--- test.spec
|
|
+++ test.spec
|
|
@@ -0,0 +1 @@
|
|
+# NEW COMMENT
|
|
\ No newline at end of file
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
example: 12
|
|
xml:
|
|
attribute: true
|
|
actions:
|
|
type: string
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Iggy:branches:home:Admin
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: ruby
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
example: 3
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Admin
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: ruby
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
example: cleanup
|
|
type: string
|
|
sourcediff:
|
|
type: object
|
|
properties:
|
|
key:
|
|
type: string
|
|
example: 9dbe9eb1767c5e12c69839af893dc239
|
|
xml:
|
|
attribute: true
|
|
old: &1
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:Iggy:branches:home:Admin
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: ruby
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
example: 3
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
example: 59300f4ba65f53334b2e2a39f87ba3a0
|
|
xml:
|
|
attribute: true
|
|
new: *1
|
|
files:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
file:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
example: changed
|
|
xml:
|
|
attribute: true
|
|
old: &2
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: ruby.spec
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
example: d4f573d2bf9a0e306f87dad7eee0cf56
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
example: 70
|
|
xml:
|
|
attribute: true
|
|
new: *2
|
|
diff:
|
|
type: string
|
|
example: |
|
|
spec files:
|
|
-----------
|
|
--- test.spec
|
|
+++ test.spec
|
|
@@ -0,0 +1 @@
|
|
+# NEW COMMENT
|
|
\ No newline at end of file
|
|
issues:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
issue:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
example: added
|
|
xml:
|
|
attribute: true
|
|
tracker:
|
|
type: string
|
|
example: bnc
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
example: 922894
|
|
xml:
|
|
attribute: true
|
|
label:
|
|
type: string
|
|
example: boo#944302
|
|
xml:
|
|
attribute: true
|
|
url:
|
|
type: string
|
|
example: https://bugzilla.opensuse.org/show_bug.cgi?id=944302
|
|
xml:
|
|
attribute: true
|
|
components:
|
|
schemas:
|
|
NewOldDestination: *1
|
|
OldNewFile: *2
|
|
xml:
|
|
name: diff
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: Couldn't find request with id '355'
|
|
tags:
|
|
- Requests
|
|
"/search":
|
|
get:
|
|
summary: Search in projects or in packages.
|
|
description: Get a list of projects or a list of packages that match a XPath
|
|
expression, passed in the query parameter `match`.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: in
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- projects
|
|
- packages
|
|
example: projects
|
|
description: |
|
|
Where to search and apply a XPath expression: either the list of projects or the list of packages.
|
|
|
|
Example of a result when `projects` is selected:
|
|
```
|
|
<collection>
|
|
<project name="home:Admin">
|
|
<title></title>
|
|
<description></description>
|
|
<person userid="Admin" role="maintainer"/>
|
|
<repository name="openSUSE_Tumbleweed">
|
|
<path project="openSUSE.org:openSUSE:Factory" repository="snapshot"/>
|
|
<arch>x86_64</arch>
|
|
</repository>
|
|
<repository name="15.3">
|
|
<path project="openSUSE.org:openSUSE:Leap:15.3" repository="standard"/>
|
|
<arch>x86_64</arch>
|
|
</repository>
|
|
</project>
|
|
<project name="openSUSE.org">
|
|
<title>Standard OBS instance at build.opensuse.org</title>
|
|
<description>This instance delivers the default build targets for OBS.</description>
|
|
<remoteurl>https://api.opensuse.org/public</remoteurl>
|
|
</project>
|
|
</collection>
|
|
```
|
|
|
|
Example of a result when `packages` is selected:
|
|
```
|
|
<collection>
|
|
<package name="ctris" project="home:Admin">
|
|
<title></title>
|
|
<description></description>
|
|
</package>
|
|
</collection>
|
|
```
|
|
- in: query
|
|
name: match
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: XPath expression used to filter the results.
|
|
examples:
|
|
non_empty_element:
|
|
summary: Non empty element
|
|
value: repository/arch
|
|
non_empty_attribute:
|
|
summary: Non empty attribute
|
|
value: repository/name
|
|
element_content:
|
|
summary: Element content
|
|
value: repository/arch='x86_64'
|
|
attribute_content:
|
|
summary: Attribute content
|
|
value: repository/name='openSUSE_Tumbleweed'
|
|
compound_condition:
|
|
summary: Compound condition
|
|
value: name='OBS:Server:Unstable'+and+repository/arch='x86_64'
|
|
- in: query
|
|
name: return
|
|
schema:
|
|
type: string
|
|
example: repository/name
|
|
description: |
|
|
XPath expression that defines which values will be returned.
|
|
|
|
Instead of returning a collection of projects or packages, the result will be a collection of:
|
|
- contents of elements, when that XPath expression match elements, or,
|
|
- values of atttributes, when that XPath expression match atttributes.
|
|
|
|
Example of result, for a query string like `?in=projects&match=repository/arch='x86_64'&return=repository/name`:
|
|
```
|
|
<collection>
|
|
<value>openSUSE_Tumbleweed</value>
|
|
<value>15.3</value>
|
|
</collection>
|
|
```
|
|
- in: query
|
|
name: values
|
|
schema:
|
|
type: string
|
|
example: 1
|
|
description: |
|
|
When set to `1`, return a list of values, instead of returning a list of projects or packages.
|
|
|
|
The result will be a collection of:
|
|
- contents of elements, when the expression defined in the `match` query parameter match elements.
|
|
For example: `match=repository/arch`.
|
|
- values of atttributes, when the expression defined in the `match` query parameter match atttributes.
|
|
For example: `match=repository/name`.
|
|
|
|
Example of result, for a query string like `?in=projects&match=repository/path/project&values=1`:
|
|
```
|
|
<collection>
|
|
<value>openSUSE.org:openSUSE:Factory</value>
|
|
<value>openSUSE.org:openSUSE:Leap:15.3</value>
|
|
</collection>
|
|
```
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
oneOf:
|
|
- type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
person:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
- type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
xml:
|
|
name: collection
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_in_parameter:
|
|
summary: Invalid in parameter
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: "'in' parameter needs to be either 'projects' or 'packages'"
|
|
missing_match_parameter:
|
|
summary: Missing match parameter
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: parameter 'match' is missing
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: Search in projects or in packages.
|
|
description: This endpoint is exactly the same as `GET /search`, please use
|
|
that one.
|
|
tags:
|
|
- Search
|
|
"/search/channel":
|
|
get:
|
|
summary: List channel objects that match a XPath condition.
|
|
description: Return a collection of channel objects with release informations
|
|
that match a XPath condition.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all channels.
|
|
|
|
Available predicates are:
|
|
- General fields: `@package` and `@project`
|
|
- Binary fields: `binary/@name`, `binary/@binaryarch`, `binary/@package` and `binary/@supportstatus`
|
|
- Target fields: `target/disabled`, `target/updatefor/@project` and `target/updatefor/@product`
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
package:
|
|
summary: Name of the package that contains the `_channel` xml
|
|
value: "@package=openSUSE_Channels"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: starts_with(@project,'open')
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: string
|
|
example: 1
|
|
xml:
|
|
attribute: true
|
|
channel:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
supportstatus:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updatefor:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
product:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
baseversion:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
patchlevel:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: channel
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
one_result:
|
|
summary: One matching result
|
|
value:
|
|
matches: 1
|
|
channel:
|
|
- project: openSUSE:Channels
|
|
package: openSUSE:Leap_15_2_x86
|
|
binary:
|
|
name: Mesa
|
|
project: openSUSE:Leap:15.2:Update
|
|
package: Mesa
|
|
supportstatus: l3
|
|
target:
|
|
project: openSUSE:Updates:Leap:15.2:x86
|
|
repository: update
|
|
updatefor:
|
|
project: openSUSE:Leap:15.2:Update
|
|
product: Leap
|
|
baseversion: 15
|
|
version: 2
|
|
patchlevel: 2
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'channels'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List channel objects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/channel`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/channel/binary":
|
|
get:
|
|
summary: List channel objects that match a XPath condition.
|
|
description: |
|
|
Return a collection of channel objects with release informations that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with `GET /search/channel/binary/id` with the exception of the results returned.
|
|
While the former operation only returns a list of channel objects with the channel definition related to the binary, this one returns a list of channel
|
|
objects with release information.
|
|
See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all channels.
|
|
|
|
Available predicates are:
|
|
- General fields: `@name`, `@binaryarch`, `@package`, `@project` and `@supportstatus`
|
|
- Target fields: `target/disabled`
|
|
- Updatefor fields: `updatefor/@product` and `updatefor/@product`
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
package:
|
|
summary: Name of the package that contains the `_channel` xml
|
|
value: "@name=Mesa-debuginfo"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: starts_with(@project,'open')
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: string
|
|
example: 1
|
|
xml:
|
|
attribute: true
|
|
channel:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
supportstatus:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updatefor:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
product:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
baseversion:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
patchlevel:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: channel
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
one_result:
|
|
summary: One matching result
|
|
value:
|
|
matches: 1
|
|
channel:
|
|
- project: openSUSE:Channels
|
|
package: openSUSE:Leap_15_2_x86
|
|
binary:
|
|
name: Mesa
|
|
project: openSUSE:Leap:15.2:Update
|
|
package: Mesa
|
|
supportstatus: l3
|
|
target:
|
|
project: openSUSE:Updates:Leap:15.2:x86
|
|
repository: update
|
|
updatefor:
|
|
project: openSUSE:Leap:15.2:Update
|
|
product: Leap
|
|
baseversion: 15
|
|
version: 2
|
|
patchlevel: 2
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'channel_binaries'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List channel objects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/channel/binary`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/channel/binary/id":
|
|
get:
|
|
summary: List channel objects that match a XPath condition.
|
|
description: |
|
|
Return a collection of channel objects that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with `GET /search/channel/binary` with the exception of the results returned.
|
|
While the former operation returns a list of channel objects with release information, this one only returns a list of channel
|
|
objects with the channel definition related to the binary.
|
|
See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Not providing a value or providing a value of `*` will return all released binaries.
|
|
|
|
Available predicates are:
|
|
- General fields: `@name`, `@binaryarch`, `@package`, `@project` and `@supportstatus`
|
|
- Target fields: `target/disabled`
|
|
- Updatefor fields: `updatefor/@product` and `updatefor/@product`
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
package:
|
|
summary: Name of the package that contains the `_channel` xml
|
|
value: "@name=Mesa-debuginfo"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: starts_with(@project,'open')
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: string
|
|
example: 1
|
|
xml:
|
|
attribute: true
|
|
channel:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
supportstatus:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updatefor:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
product:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
baseversion:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
patchlevel:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: channel
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
one_result:
|
|
summary: One matching result
|
|
value:
|
|
matches: 1
|
|
channel:
|
|
- project: openSUSE:Channels
|
|
package: openSUSE:Leap_15_2_x86
|
|
binary:
|
|
name: Mesa
|
|
project: openSUSE:Leap:15.2:Update
|
|
package: Mesa
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'channel_binaries'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List channel objects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/channel/binary/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/issue":
|
|
get:
|
|
summary: List issues that match a XPath condition.
|
|
description: Return a collection of issue objects that match a XPath condition.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all issues.
|
|
|
|
Available predicates are:
|
|
- Issue fields: `@name`, `@state`, and `@tracker`.
|
|
- Issue owner fields: `owner/@email`, and `owner/@login`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
name:
|
|
summary: Issue name
|
|
value: "@name='5021'"
|
|
function_contains:
|
|
summary: Funcion contains
|
|
value: contains(owner/@email,'my-domain.org')
|
|
combination:
|
|
summary: Tracker and state
|
|
value: "@tracker='bnc' and @state='CLOSED'"
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
issue:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
created_at:
|
|
type: string
|
|
example: 2021-01-18 19:17:51 UTC
|
|
updated_at:
|
|
type: string
|
|
example: 2021-01-18 19:17:51 UTC
|
|
name:
|
|
type: string
|
|
example: 12345
|
|
tracker:
|
|
type: string
|
|
example: fate
|
|
label:
|
|
type: string
|
|
example: fate#12345
|
|
url:
|
|
type: string
|
|
example: https://features.opensuse.org/12345
|
|
state:
|
|
type: string
|
|
summary:
|
|
type: string
|
|
owner:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
email:
|
|
type: string
|
|
realname:
|
|
type: string
|
|
xml:
|
|
name: issue
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
issue:
|
|
- name: 941384
|
|
created_at: 2015-08-12 06:11:00 UTC
|
|
updated_at: 2020-01-09 10:58:33 UTC
|
|
tracker: bnc
|
|
label: boo#941384
|
|
url: https://opensusebugzilla-next.opensuse.org/show_bug.cgi?id=941384
|
|
state: CLOSED
|
|
summary: vmware-guest-kmp is not built for SLE_11_SP3
|
|
owner:
|
|
login: user_1
|
|
email: user_1@example.com
|
|
realname:
|
|
- name: 4883
|
|
created_at: 2018-12-11 03:22:54 UTC
|
|
updated_at: 2018-12-11 03:22:54 UTC
|
|
tracker: boost
|
|
label: boost#4883
|
|
url: https://svn.boost.demo/trac/boost/ticket/4883
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'issues'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List issues that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/issue`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/missing_owner":
|
|
get:
|
|
summary: |
|
|
Search for packages that miss the definition for a by default
|
|
responsible person or group.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: project
|
|
schema:
|
|
type: string
|
|
description: Only return results for a given project.
|
|
- in: query
|
|
name: filter
|
|
schema:
|
|
type: string
|
|
description: |
|
|
A comma separated list of role names that should be
|
|
taken into account in the result.
|
|
example: bugowner,maintainer
|
|
- in: query
|
|
name: attribute
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Choose the attribute name that marks the rootproject which defines the
|
|
owner's for all corresponding subprojects and limit the returned results
|
|
to those. The default value is `OBS:OwnerRootProject`.
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
missing_owner:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
rootproject:
|
|
type: string
|
|
example: openSUSE
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: yast2-branding-openSUSE
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
'400':
|
|
description: Bad request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_attribute
|
|
summary: 'Attribute ''foo'' must be in the $NAMESPACE:$NAME style
|
|
|
|
'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: bla'
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: |
|
|
Search for packages that miss the definition for a by default
|
|
responsible person or group.
|
|
description: This endpoint is exactly the same as `GET /search/missing_owner`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/owner":
|
|
get:
|
|
summary: Search for the users or groups who are the owners of a project or package.
|
|
description: |
|
|
The owners are users/groups with the maintainer or bugowner roles in the given project/package.
|
|
|
|
By default the owner search will get results from projects (and their sub-projects) that have the
|
|
OBS:OwnerRootProject attribute.
|
|
|
|
You can search for the package name, a user login, a group title or a binary package name.
|
|
If you don't want to search the default projects, you can provide another project to search in.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: The name of the package whose owners you want to search.
|
|
- in: query
|
|
name: binary
|
|
schema:
|
|
type: string
|
|
description: 'The name of a binary package whose owners you want to search.
|
|
|
|
'
|
|
- in: query
|
|
name: user
|
|
schema:
|
|
type: string
|
|
description: 'Search what this user is owner of.
|
|
|
|
'
|
|
- in: query
|
|
name: group
|
|
schema:
|
|
type: string
|
|
description: 'The title of a group. Search what this group is owner of.
|
|
|
|
'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Limit the number of returned results. This is only available for
|
|
the search with the `binary` parameter. The default is set to `1`,
|
|
use `0` to receive all results or `-1` for the deepest match.
|
|
- in: query
|
|
name: devel
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
- 1
|
|
- 0
|
|
description: Include/exclude devel packages in the result.
|
|
- in: query
|
|
name: project
|
|
schema:
|
|
type: string
|
|
description: |
|
|
By default the owner search will get results from projects (and their sub-projects) that have the OBS:OwnerRootProject attribute.
|
|
Use this parameter to overwrite the default and search in this project (and it's sub-projects).
|
|
- in: query
|
|
name: filter
|
|
schema:
|
|
type: string
|
|
description: |
|
|
A comma separated list of role names that should be
|
|
taken into account in the result.
|
|
example: bugowner,maintainer
|
|
- in: query
|
|
name: attribute
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Choose the attribute name that marks the rootproject which defines the
|
|
owner's for all corresponding subprojects and limit the returned results
|
|
to those. The default value is `OBS:OwnerRootProject`.
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
owner:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
rootproject:
|
|
type: string
|
|
example: openSUSE
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: yast2-branding-openSUSE
|
|
xml:
|
|
attribute: true
|
|
person:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
example: bugowner
|
|
xml:
|
|
attribute: true
|
|
group:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: bar
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
example: maintainer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
only package:
|
|
summary: Search by package name
|
|
description: Search by package name 'aaa_base' only.
|
|
value:
|
|
owner:
|
|
- rootproject: ''
|
|
project: Base:System
|
|
package: aaa_base
|
|
person:
|
|
name: user_1
|
|
role: maintainer
|
|
- rootproject: ''
|
|
project: Base:System
|
|
person:
|
|
name: user_1
|
|
role: maintainer
|
|
group:
|
|
name: factory-maintainers
|
|
role: maintainer
|
|
- rootproject: ''
|
|
project: Base
|
|
person:
|
|
name: user_2
|
|
role: maintainer
|
|
only project:
|
|
summary: Search by project name
|
|
description: Search by project name 'openSUSE:Factory' only.
|
|
value:
|
|
owner:
|
|
- rootproject: ''
|
|
project: openSUSE:Factory
|
|
person:
|
|
name: user_1
|
|
role: maintainer
|
|
group:
|
|
name: factory-maintainers
|
|
role: maintainer
|
|
- rootproject: ''
|
|
project: openSUSE
|
|
group:
|
|
name: factory-maintainers
|
|
role: maintainer
|
|
only binary:
|
|
summary: Search by binary name
|
|
description: Search by binary name 'aaa_base' only.
|
|
value:
|
|
owner:
|
|
rootproject: openSUSE
|
|
project: Base:System
|
|
package: aaa_base
|
|
person:
|
|
- name: user_1
|
|
role: maintainer
|
|
- name: user_2
|
|
role: maintainer
|
|
group and project:
|
|
summary: Search by group and project
|
|
description: Search by group title 'factory-maintainers' and project
|
|
name 'openSUSE:Leap:42.3'.
|
|
value:
|
|
owner:
|
|
rootproject: openSUSE:Leap:42.3
|
|
project: openSUSE:Leap:42.3
|
|
'400':
|
|
description: Bad request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
without expected parameters:
|
|
summary: Without the expected parameters
|
|
description: One or a combination of the parameters package, user,
|
|
group, binay and project is required.
|
|
value:
|
|
code: no_binary
|
|
summary: 'The search needs at least a ''binary'', ''package''
|
|
or ''user'' parameter
|
|
|
|
'
|
|
search root not set:
|
|
summary: Search root is not set
|
|
description: At least one of the projects in your instance should
|
|
contain the OBS:OwnerRootProject attribute.
|
|
value:
|
|
summary: 'The attribute OBS:OwnerRootProject is not set to define
|
|
default projects.
|
|
|
|
'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: bla'
|
|
Group Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Group 'fake'
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: Search for the users or groups who are the owners of a project or package.
|
|
description: This endpoint is exactly the same as `GET /search/owner`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/package":
|
|
get:
|
|
summary: List package objects that match a XPath condition.
|
|
description: |
|
|
Return a collection of package objects that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with [GET /search/package/id](#/Search/get_search_package_id) with the exception of the results returned.
|
|
While the former operation returns a list of package names, this one return a list of package objects. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all packages.
|
|
|
|
Available predicates are:
|
|
- Package fields: `@name`, `title`, `description`, `scmsync`, and `kind`.
|
|
- `@project`: name of the project of the package.
|
|
- Devel package fields:
|
|
- `devel/@project`: name of the devel project of the package.
|
|
- `devel/@package`: name of the devel package of the package.
|
|
- Issue fields: `issue/@state`, `issue/@name`, `issue/@tracker`, and `issue/@change`.
|
|
- Issue owner fields: `issue/owner/@email`, and `issue/owner/@login`.
|
|
- Fields of attributes of an issue: `attribute_issue/@state`, `attribute_issue/@name`, and `attribute_issue/@tracker`.
|
|
- Fields of owners of an attribute of an issue: `attribute_issue/owner/@email` and `attribute_issue/owner/@login`.
|
|
- Users and groups:
|
|
- `person/@userid`: login of a user related to this package.
|
|
- `person/@role`: name of the role which a user could be related with this package.
|
|
- `group/@groupid`: name (title) of a group related to this package.
|
|
- `group/@role`: name of the role which a group could be related with this package.
|
|
- `attribute/@name`: name of an attribute of the package.
|
|
- `project/attribute/@name`: name of an attribute of the project of the package.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
project_name_and_package_name:
|
|
summary: Project name and package name
|
|
value: "@project='my:project:name' and @name='my_package_name'"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: contains(description,'editor')
|
|
combination:
|
|
summary: User and role
|
|
value: person/@userid='iggy' and person/@role='reviewer'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
package:
|
|
- project: home:Admin
|
|
name: ruby
|
|
title: A Glass of Blessings
|
|
description: Qui quod nostrum laudantium.
|
|
- project: home:Admin:branch:home:Admin
|
|
name: ruby
|
|
title: To Your Scattered Bodies Go
|
|
description: Quasi reiciendis qui ut.
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'packages'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List packages that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/package`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/package/id":
|
|
get:
|
|
summary: List packages that match a XPath condition.
|
|
description: |
|
|
Return a collection of package names that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with [GET /search/package](#/Search/get_search_package) with the exception of the results returned.
|
|
While the former operation returns a list of package objects, this one return a list of package names. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Not providing a value or providing a value of `*` will return all packages.
|
|
|
|
Available predicates are:
|
|
- Package fields: `@name`, `title`, `description`, `scysync`, and `kind`.
|
|
- `@project`: name of the project of the package.
|
|
- Devel package fields:
|
|
- `devel/@project`: name of the devel project of the package.
|
|
- `devel/@package`: name of the devel package of the package.
|
|
- Issue fields: `issue/@state`, `issue/@name`, `issue/@tracker`, and `issue/@change`.
|
|
- Issue owner fields: `issue/owner/@email`, and `issue/owner/@login`.
|
|
- Fields of attributes of an issue: `attribute_issue/@state`, `attribute_issue/@name`, and `attribute_issue/@tracker`.
|
|
- Fields of owners of an attribute of an issue: `attribute_issue/owner/@email` and `attribute_issue/owner/@login`.
|
|
- Users and groups:
|
|
- `person/@userid`: login of a user related to this package.
|
|
- `person/@role`: name of the role which a user could be related with this package.
|
|
- `group/@groupid`: name (title) of a group related to this package.
|
|
- `group/@role`: name of the role which a group could be related with this package.
|
|
- `attribute/@name`: name of an attribute of the package.
|
|
- `project/attribute/@name`: name of an attribute of the project of the package.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
project_name_and_package_name:
|
|
summary: Project name and package name
|
|
value: "@project='my:project:name' and @name='my_package_name'"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: contains(description,'editor')
|
|
combination:
|
|
summary: User and role
|
|
value: person/@userid='iggy' and person/@role='reviewer'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
package:
|
|
- project: home:Admin
|
|
name: ruby
|
|
- project: home:Admin:branch:home:Admin
|
|
name: ruby
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'packages'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List packages that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/package/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/package_id":
|
|
get:
|
|
deprecated: true
|
|
summary: List packages that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/package/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List packages that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/package/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/person":
|
|
get:
|
|
summary: List users that match a XPath condition.
|
|
description: Return a collection of users that match a XPath condition.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all users.
|
|
|
|
Available predicates are: `@login`, `@email`, `@realname`, and `@state`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
login:
|
|
summary: Login
|
|
value: "@login='user_1'"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: contains(@realname,'lee')
|
|
combination:
|
|
summary: User email and state
|
|
value: "@email='iggy@example.com' and @state='confirmed'"
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
person:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
login:
|
|
type: string
|
|
email:
|
|
type: string
|
|
realname:
|
|
type: string
|
|
state:
|
|
type: string
|
|
globalrole:
|
|
type: string
|
|
ignore_auth_services:
|
|
type: string
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
person:
|
|
- login: Iggy
|
|
email: iggy@example.com
|
|
realname: Shanta
|
|
state: confirmed
|
|
- login: superkraig
|
|
email: kraig@example.com
|
|
realname: Kraig Doe
|
|
state: confirmed
|
|
globalrole: Admin
|
|
ignore_auth_services: false
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate '@foo' for 'users'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List users that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/person`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/project":
|
|
get:
|
|
summary: List project objects that match a XPath condition.
|
|
description: |
|
|
Return a collection of projects objects that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with [GET /search/project/id](#/Search/get_search_project_id) with the exception of the results returned.
|
|
While the former operation returns a list of project names, this one return a list of project objects. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all projects.
|
|
|
|
Available predicates are:
|
|
- Project fields: `@name`, `@kind`, `title`, `description`, `scmsync`, `url`, and `remoteurl`.
|
|
- `package/@name`: name of the packages of the project.
|
|
- `attribute/@name`: name of the attributes of the project.
|
|
- Users and groups:
|
|
- `person/@userid`: login of a user related to this project.
|
|
- `person/@role`: name of the role which a user could be related with this project.
|
|
- `group/@groupid`: name (title) of a group related to this project.
|
|
- `group/@role`: name of the role which a group could be related with this project.
|
|
- More complex predicates are: `maintenance/maintains/@project`, `repository/@name`,
|
|
`repository/path/@project`, `repository/releasetarget/@trigger`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
name:
|
|
summary: Project name
|
|
value: "@name='my:project:name'"
|
|
function_contains:
|
|
summary: Funcion contains
|
|
value: contains(@name,'Test')
|
|
combination:
|
|
summary: User and role
|
|
value: person/@userid='iggy' and person/@role='reviewer'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
person:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
project:
|
|
- name: home:Iggy
|
|
title:
|
|
description:
|
|
person:
|
|
userid: Iggy
|
|
role: maintainer
|
|
- name: home:Iggy:branches:home:Admin
|
|
title: East of Eden
|
|
description:
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'projects'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List project objects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/project`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/project/id":
|
|
get:
|
|
summary: List projects that match a XPath condition.
|
|
description: |
|
|
Return a collection of project names that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with [GET /search/project](#/Search/get_search_project) with the exception of the results returned.
|
|
While the former operation returns a list of project objects, this one return a list of project names. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Not providing a value or providing a value of `*` will return all projects.
|
|
|
|
Available predicates are:
|
|
- Project fields: `@name`, `@kind`, `title`, `description`, `scmsync`, `url`, and `remoteurl`.
|
|
- `package/@name`: name of the packages of the project.
|
|
- `attribute/@name`: name of the attributes of the project.
|
|
- Users and groups:
|
|
- `person/@userid`: login of a user related to this project.
|
|
- `person/@role`: name of the role which a user could be related with this project.
|
|
- `group/@groupid`: name (title) of a group related to this project.
|
|
- `group/@role`: name of the role which a group could be related with this project.
|
|
- More complex predicates are: `maintenance/maintains/@project`, `repository/@name`,
|
|
`repository/path/@project`, `repository/releasetarget/@trigger`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
name:
|
|
summary: Project name
|
|
value: "@name='my:project:name'"
|
|
function_contains:
|
|
summary: Funcion contains
|
|
value: contains(@name,'Test')
|
|
combination:
|
|
summary: User and role
|
|
value: person/@userid='iggy' and person/@role='reviewer'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
person:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
project:
|
|
- name: home:Admin
|
|
- name: openSUSE.org
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'projects'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List projects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/project/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/project_id":
|
|
get:
|
|
deprecated: true
|
|
summary: List projects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/project/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List projects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/project/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/published/binary/id":
|
|
get:
|
|
summary: Search for currently available binaries in the publish area.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: XPath expression.
|
|
example: project='home:foo'+and+name='bar'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 1000 entries to be returned.
|
|
example: 20
|
|
- in: query
|
|
name: withdownloadurl
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 0
|
|
- 1
|
|
description: |
|
|
Add the download url in the results as attribute `downloadurl`.
|
|
|
|
A value `0` means without the download url. A value `1` means with the download url.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
limited:
|
|
type: boolean
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
filename:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
filepath:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
baseproject:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
type:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
downloadurl:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
wrapped: true
|
|
examples:
|
|
including_download_urls:
|
|
value:
|
|
matches: 2
|
|
binary:
|
|
- name: package_name
|
|
project: home:foo
|
|
package: package_name
|
|
repository: openSUSE_Tumbleweed
|
|
version: 20201220
|
|
release: 3.1
|
|
arch: src
|
|
filename: package_name-20201220-3.1.src.rpm
|
|
filepath: home:/foo/openSUSE_Tumbleweed/src/package_name-20201220-3.1.src.rpm
|
|
baseproject: home:bar
|
|
type: rpm
|
|
downloadurl: https://server1.myorg.org/repositories/home:/foo/openSUSE_Tumbleweed/src/package_name-20201220-3.1.src.rpm
|
|
- name: package_name2
|
|
project: home:foo
|
|
package: package_name2
|
|
repository: openSUSE_Tumbleweed
|
|
version: 20201220
|
|
release: 3.1
|
|
arch: src
|
|
filename: package_name2-20201220-3.1.src.rpm
|
|
filepath: home:/foo/openSUSE_Tumbleweed/src/package_name2-20201220-3.1.src.rpm
|
|
baseproject: home:bar
|
|
type: rpm
|
|
downloadurl: https://server1.myorg.org/repositories/home:/foo/openSUSE_Tumbleweed/src/package_name2-20201220-3.1.src.rpm
|
|
summary: Including download urls
|
|
description: Result after adding the `withdownloadurl=1` parameter/value
|
|
pair to the request.
|
|
with_limit:
|
|
value:
|
|
matches: 2
|
|
limited: true
|
|
binary:
|
|
- name: package_name
|
|
project: home:foo
|
|
repository: openSUSE_Tumbleweed
|
|
package: package_name
|
|
version: 20201220
|
|
release: 3.1
|
|
arch: src
|
|
filename: package_name-20201220-3.1.src.rpm
|
|
filepath: home:/foo/openSUSE_Tumbleweed/src/package_name-20201220-3.1.src.rpm
|
|
baseproject: home:bar
|
|
type: rpm
|
|
- name: package_name2
|
|
project: home:foo
|
|
package: package_name2
|
|
repository: openSUSE_Tumbleweed
|
|
version: 20201220
|
|
release: 3.1
|
|
arch: src
|
|
filename: package_name2-20201220-3.1.src.rpm
|
|
filepath: home:/foo/openSUSE_Tumbleweed/src/package_name2-20201220-3.1.src.rpm
|
|
baseproject: home:bar
|
|
type: rpm
|
|
summary: Limiting results
|
|
description: Result after adding `limit=2` parameter/value pair
|
|
to the request.
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 400
|
|
summary: missing string terminator
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_not_found:
|
|
value:
|
|
code: 404
|
|
summary: project 'home:foo' does not exist
|
|
description: 404 project 'home:foo' does not exist
|
|
summary: Not Found
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: Search for currently available binaries in the publish area.
|
|
description: This endpoint is exactly the same as `GET /search/published/binary/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/published/pattern/id":
|
|
get:
|
|
summary: Search for published patterns.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: XPath expression.
|
|
example: project='home:foo'+and+name='bar'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 1000 entries to be returned.
|
|
example: 20
|
|
- in: query
|
|
name: withdownloadurl
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 0
|
|
- 1
|
|
description: |
|
|
Add the download url in the results as attribute `downloadurl`.
|
|
|
|
A value `0` means without the download url. A value `1` means with the download url.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
limited:
|
|
type: boolean
|
|
xml:
|
|
attribute: true
|
|
pattern:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
filename:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
filepath:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
baseproject:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
type:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
downloadurl:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
wrapped: true
|
|
examples:
|
|
including_download_urls:
|
|
value:
|
|
matches: 1
|
|
pattern:
|
|
- name: OBS_Server
|
|
project: OBS:Server:Unstable
|
|
repository: SLE_12_SP4
|
|
filename: OBS_Server.ymp
|
|
filepath: OBS:/Server:/Unstable/SLE_12_SP4/OBS_Server.ymp
|
|
baseproject: SUSE:SLE-12:SLE-Module-Adv-Systems-Management
|
|
type: ymp
|
|
downloadurl: https://download.opensuse.org/repositories/OBS:/Server:/Unstable/SLE_12_SP4/SLE_12_SP4/OBS_Server.ymp
|
|
summary: Including download urls
|
|
description: Result after adding the `withdownloadurl=1` parameter/value
|
|
pair to the request.
|
|
with_limit:
|
|
value:
|
|
matches: 9
|
|
limited: true
|
|
pattern:
|
|
- name: OBS_Server
|
|
project: OBS:Server:Unstable
|
|
repository: 15.3
|
|
filename: OBS_Server.ymp
|
|
filepath: OBS:/Server:/Unstable/15.3/OBS_Server.ymp
|
|
baseproject: SUSE:SLE-15:GA
|
|
type: ymp
|
|
- name: OBS_Server
|
|
project: OBS:Server:Unstable
|
|
repository: SLE_12_SP4
|
|
filename: OBS_Server.ymp
|
|
filepath: OBS:/Server:/Unstable/SLE_12_SP4/OBS_Server.ymp
|
|
baseproject: SUSE:SLE-12:SLE-Module-Adv-Systems-Management
|
|
type: ymp
|
|
summary: Limiting results
|
|
description: Result after adding `limit=2` parameter/value pair
|
|
to the request.
|
|
without_matches:
|
|
value:
|
|
matches: 0
|
|
summary: No matches
|
|
description: 'Empty result, when there is no matches. For example:
|
|
`?match=project=''home:bs-team:OBS''`.
|
|
|
|
'
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 400
|
|
summary: missing string terminator
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: Search for published patterns.
|
|
description: This endpoint is exactly the same as `GET /search/published/pattern/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/published/repoinfo/id":
|
|
get:
|
|
summary: Search for currently available repositories in the publish area.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: XPath expression.
|
|
example: project='home:foo'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 1000 entries to be returned.
|
|
example: 20
|
|
- in: query
|
|
name: withdownloadurl
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 0
|
|
- 1
|
|
description: |
|
|
Add the download url in the results as attribute `downloadurl`.
|
|
|
|
A value `0` means without the download url. A value `1` means with the download url.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
limited:
|
|
type: boolean
|
|
xml:
|
|
attribute: true
|
|
repoinfo:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
wrapped: true
|
|
examples:
|
|
including_download_urls:
|
|
value:
|
|
matches: 1
|
|
repoinfo:
|
|
- project: OBS:Server:Unstable
|
|
repository: SLE_12_SP4
|
|
downloadurl: https://download.opensuse.org/repositories/OBS:/Server:/Unstable/SLE_12_SP4/SLE_12_SP4/OBS_Server.ymp
|
|
summary: Including download urls
|
|
description: Result after adding the `withdownloadurl=1` parameter/value
|
|
pair to the request.
|
|
with_limit:
|
|
value:
|
|
matches: 2
|
|
limited: true
|
|
repoinfo:
|
|
- project: OBS:Server:Unstable
|
|
repository: SLE_12_SP4
|
|
- project: OBS:Server:Unstable
|
|
repository: SLE_12_SP5
|
|
summary: Limiting results
|
|
description: Result after adding `limit=2` parameter/value pair
|
|
to the request.
|
|
without_matches:
|
|
value:
|
|
matches: 0
|
|
summary: No matches
|
|
description: 'Empty result, when there is no matches. For example:
|
|
`?match=project=''home:bs-team:OBS''`.
|
|
|
|
'
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 400
|
|
summary: missing string terminator
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: Search for currently available repositories in the publish area.
|
|
description: This endpoint is exactly the same as `GET /search/published/repoinfo/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/released/binary":
|
|
get:
|
|
summary: List released binaries that match a XPath condition.
|
|
description: |
|
|
Return a collection of released binaries that match a XPath condition.
|
|
|
|
Released binaries are binaries published via the release mechanism. Binaries which got removed are also included.
|
|
|
|
This operation is the same as the one defined with [GET /search/released/binary/id](#/Search/get_search_released_binary_id) with the exception of the results returned.
|
|
While the former operation returns a list of released binaries without details, this one return a list of detailed released binaries. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all released binaries.
|
|
|
|
Available predicates are:
|
|
- Released binary fields: `@name`, `disturl`, `@version`, `@release`, `@arch`, `@medium`, `binaryid`, `cpeid`, `supportstatus`, and `operation`.
|
|
- Update info fields: `updateinfo/@id` and `updateinfo/@version`.
|
|
- Build fields: `build/@time` and `build/@binaryid`.
|
|
- Other fields: `modify/@time` and `obsolete/@time`.
|
|
- Repository fields: `repository/@project` and `repository/@name`.
|
|
- Publish fields: `publish/@time`, `publish/@package` and `publish/@flavor`.
|
|
- "Update for" fields: `updatefor/@project`, `updatefor/@arch`, `updatefor/@product`, `updatefor/@baseversion`, `updatefor/@patchlevel`, and `updatefor/@version`.
|
|
- Product fields: `product/@project`, `product/@version`, `product/@release`, `product/@baseversion`, `product/@patchlevel`, `product/@name`, `product/@arch`, and `product/@medium`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
example1:
|
|
summary: Latest version of given binary in all products
|
|
description: Find the latest version of a given `glibc-devel` binary in
|
|
all products, skipping old and revoked versions.
|
|
value: "@name='glibc-devel'+and+obsolete[not(@time)]"
|
|
example2:
|
|
summary: Specific version by given updateinfo id
|
|
description: Find a specific version by given updateinfo id. This ID is
|
|
visible in the update tools to the end user.
|
|
value: updateinfo/@id='OBS-2014-42'
|
|
example3:
|
|
summary: Specific version by given disturl
|
|
description: Find a specific version by given disturl. Used to find all
|
|
affected products by a certain build of a binary.
|
|
value: disturl='obs://...'
|
|
example4:
|
|
summary: First release of a specific package version
|
|
value: "@name='kernel-default'+and+@version='1.0'+and+@release='1'+and+@arch='i586'+and+supportstatus='l3'+and+operation='added'"
|
|
example5:
|
|
summary: All binaries of a given repository
|
|
value: repository/@project='BaseDistro3'+and+repository/@name='BaseDistro3_repo'
|
|
example6:
|
|
summary: All binaries part of a product release
|
|
value: product/@project='openSUSE'+and+product/@name='openSUSE'+and+(product/@arch='x86_64'+or+not(product/@arch))
|
|
example7:
|
|
summary: All binaries part of the update repositories of a product
|
|
value: updatefor/@project='openSUSE'+and+updatefor/@product='openSUSE'+and+(updatefor/@arch='x86_64'+or+not(updatefor/@arch))
|
|
example8:
|
|
summary: All binaries part of the update repositories of a versioned product
|
|
value: updatefor/@project='openSUSE'+and+updatefor/@product='openSUSE'+and+updatefor/@version='13.2'
|
|
example9:
|
|
summary: All binaries part of the update repositories of a versioned product
|
|
(enterprise style)
|
|
value: updatefor/@project='openSUSE'+and+updatefor/@product='openSUSE'+and+updatefor/@baseversion='12'+and+updatefor/@patchlevel='1'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
operation:
|
|
type: string
|
|
publish:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
time:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
build:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
obsolete:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
disturl:
|
|
type: string
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
binary:
|
|
- project: home:user_1
|
|
repository: openSUSE_Tumbleweed
|
|
name: cowsay
|
|
version: 3.03
|
|
release: 5.7
|
|
arch: noarch
|
|
operation: added
|
|
publish:
|
|
package: cowsay
|
|
time: 2017-11-22 01:26:25 UTC
|
|
build:
|
|
time: 2014-11-22 01:26:25 UTC
|
|
obsolete:
|
|
time: 2018-11-22 01:26:25 UTC
|
|
disturl: obs://openSUSE_TEST/home:user_1/openSUSE_Tumbleweed/60a1a1850b9fd0d3b30f3eefa195579b-cowsay
|
|
- project: home:user_2:branches:openSUSE.org:Cloud:OpenStack:Pike:venv
|
|
repository: SLE_12_SP3
|
|
name: pyhon-Babel
|
|
version: 2.3.4
|
|
release: 3.1
|
|
arch: src
|
|
operation: added
|
|
publish:
|
|
package: python-Babel
|
|
time: 2018-02-08 12:56:52 UTC
|
|
build:
|
|
time: 2018-01-08 12:56:52 UTC
|
|
obsolete:
|
|
time: 2018-02-28 12:56:52 UTC
|
|
disturl: obs://openSUSE_TEST/home:user_2:branches:openSUSE.org:Cloud:OpenStack:Pike:venv/SLE_12_SP3/783d831d5cd44b08db0ca95ebe06c6cc-python-Babel
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'released_binaries'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List released binaries that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/released/binary`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/released/binary/id":
|
|
get:
|
|
summary: List released binaries that match a XPath condition.
|
|
description: |
|
|
Return a collection of released binaries that match a XPath condition.
|
|
|
|
Released binaries are binaries published via the release mechanism. Binaries which got removed are also included.
|
|
|
|
This operation is the same as the one defined with [GET /search/released/binary](#/Search/get_search_released_binary) with the exception of the results returned.
|
|
While the former operation returns a list of detailed released binaries, this one return a list of released binaries without details. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Not providing a value or providing a value of `*` will return all released binaries.
|
|
|
|
Available predicates are:
|
|
- Released binary fields: `@name`, `disturl`, `@version`, `@release`, `@arch`, `@medium`, `binaryid`, `cpeid`, `supportstatus`, and `operation`.
|
|
- Update info fields: `updateinfo/@id` and `updateinfo/@version`.
|
|
- Build fields: `build/@time` and `build/@binaryid`.
|
|
- Other fields: `modify/@time` and `obsolete/@time`.
|
|
- Repository fields: `repository/@project` and `repository/@name`.
|
|
- Publish fields: `publish/@time`, `publish/@package` and `publish/@flavor`.
|
|
- "Update for" fields: `updatefor/@project`, `updatefor/@arch`, `updatefor/@product`, `updatefor/@baseversion`, `updatefor/@patchlevel`, and `updatefor/@version`.
|
|
- Product fields: `product/@project`, `product/@version`, `product/@release`, `product/@baseversion`, `product/@patchlevel`, `product/@name`, `product/@arch`, and `product/@medium`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
example1:
|
|
summary: Latest version of given binary in all products
|
|
description: Find the latest version of a given `glibc-devel` binary in
|
|
all products, skipping old and revoked versions.
|
|
value: "@name='glibc-devel'+and+obsolete[not(@time)]"
|
|
example2:
|
|
summary: Specific version by given updateinfo id
|
|
description: Find a specific version by given updateinfo id. This ID is
|
|
visible in the update tools to the end user.
|
|
value: updateinfo/@id='OBS-2014-42'
|
|
example3:
|
|
summary: Specific version by given disturl
|
|
description: Find a specific version by given disturl. Used to find all
|
|
affected products by a certain build of a binary.
|
|
value: disturl='obs://...'
|
|
example4:
|
|
summary: First release of a specific package version
|
|
value: "@name='kernel-default'+and+@version='1.0'+and+@release='1'+and+@arch='i586'+and+supportstatus='l3'+and+operation='added'"
|
|
example5:
|
|
summary: All binaries of a given repository
|
|
value: repository/@project='BaseDistro3'+and+repository/@name='BaseDistro3_repo'
|
|
example6:
|
|
summary: All binaries part of a product release
|
|
value: product/@project='openSUSE'+and+product/@name='openSUSE'+and+(product/@arch='x86_64'+or+not(product/@arch))
|
|
example7:
|
|
summary: All binaries part of the update repositories of a product
|
|
value: updatefor/@project='openSUSE'+and+updatefor/@product='openSUSE'+and+(updatefor/@arch='x86_64'+or+not(updatefor/@arch))
|
|
example8:
|
|
summary: All binaries part of the update repositories of a versioned product
|
|
value: updatefor/@project='openSUSE'+and+updatefor/@product='openSUSE'+and+updatefor/@version='13.2'
|
|
example9:
|
|
summary: All binaries part of the update repositories of a versioned product
|
|
(enterprise style)
|
|
value: updatefor/@project='openSUSE'+and+updatefor/@product='openSUSE'+and+updatefor/@baseversion='12'+and+updatefor/@patchlevel='1'
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
operation:
|
|
type: string
|
|
publish:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
time:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
build:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
obsolete:
|
|
type: object
|
|
properties:
|
|
time:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
disturl:
|
|
type: string
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
binary:
|
|
- project: openSUSE:13.1:Update
|
|
repository: standard
|
|
name: ImageMagick-extra
|
|
version: 6.8.6.9
|
|
release: 2.12.1
|
|
arch: i586
|
|
- project: openSUSE:13.1:Update
|
|
repository: standard
|
|
name: Mesa
|
|
version: 9.2.3
|
|
release: 61.9.1
|
|
arch: i586
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'released_binaries'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List released binaries that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/released/binary/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/repository/id":
|
|
get:
|
|
summary: List repositories that match a XPath condition.
|
|
description: Return a collection of repository names that match a XPath condition.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Not providing a value or providing a value of `*` will return all projects.
|
|
|
|
Available predicates are:
|
|
- `@name`: name of the repository.
|
|
- `@project`: name of the project of the repository.
|
|
- Path fields: `path/@project` and `path/@repository`.
|
|
- Target product fields: `targetproduct/@project`, `targetproduct/@arch`, `targetproduct/@name`,
|
|
`targetproduct/@baseversion`, `targetproduct/@patchlevel`, and `targetproduct/@version`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
name:
|
|
summary: Project name
|
|
value: "@project='home:Admin'"
|
|
function_contains:
|
|
summary: Funcion contains
|
|
value: contains(@name,'Tumb')
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
repository:
|
|
- name: openSUSE_Tumbleweed
|
|
project: home:Admin
|
|
- name: snapshot
|
|
project: openSUSE.org
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'repositories'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List repositories that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/repository/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/search/request":
|
|
get:
|
|
summary: List request objects that match a XPath condition.
|
|
description: |
|
|
Return a collection of request objects that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with [GET /search/request/id](#/Search/get_search_request_id) with the exception of the results returned.
|
|
While the former operation returns a list of request numbers, this one return a list of request objects. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Providing a value of `*` will return all requests.
|
|
|
|
Available predicates are:
|
|
- Request fields: `@id` and `@creator`.
|
|
- State fields: `state/@name`, `state/@who`, and `state/@when`.
|
|
- Target fields: `target/@project` and `target/@package`.
|
|
- Source fields: `source/@project` and `source/@package`.
|
|
- Actions fields: `action/@type`, `action/grouped/@id`, `action/target/@project`, `action/target/@package`, `action/source/@project`, and `action/source/@package`.
|
|
- Reviews fields:
|
|
- General: `review/@when`, `review/@state`.
|
|
- Review by: `review/@by_user`, `review/@by_group`, `review/@by_project`, and `review/@by_package`.
|
|
- History: `review/history/@when`.
|
|
- History fields: `history/@when` and `history/@who`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
id:
|
|
summary: Request number
|
|
value: "@id=123456"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: contains(@creator,'Igg')
|
|
combination:
|
|
summary: State name and date
|
|
value: state/@name='review' and starts_with(state/@when,'2022-08-22')
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
- in: query
|
|
name: withhistory
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Include the request history.
|
|
|
|
Without a value or with the value `0` means without the request history. A value `1` means with the request history.
|
|
example: 1
|
|
- in: query
|
|
name: withfullhistory
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Include the request and review history.
|
|
|
|
Without a value or with the value `0` means without the request and review history. A value `1` means with the request and review history.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: string
|
|
example: 7
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
request:
|
|
- id: 2
|
|
creator: Iggy
|
|
description: Praesentium in nobis.
|
|
action:
|
|
type: submit
|
|
source:
|
|
project: openSUSE:Leap:15.0
|
|
package: apache2
|
|
target:
|
|
project: my_organization:Factory
|
|
package: inreview
|
|
state:
|
|
name: review
|
|
who: Iggy
|
|
when: '2022-08-22T08:06:58'
|
|
review:
|
|
- state: new
|
|
when: '2022-08-22T08:06:58'
|
|
by_package: apache2
|
|
by_project: openSUSE:Leap:15.0
|
|
- state: new
|
|
when: '2022-08-22T08:06:58'
|
|
by_user: repo-checker
|
|
- state: accepted
|
|
when: '2022-08-22T08:06:58'
|
|
who: Admin
|
|
by_group: group_1
|
|
- id: 4
|
|
creator: Iggy2
|
|
description: Ut voluptas quibusdam.
|
|
action:
|
|
type: submit
|
|
source:
|
|
project: requestor_project
|
|
package: package_1661161028_1
|
|
target:
|
|
project: my_organization:Admin
|
|
package: package_1661161028_1
|
|
state:
|
|
name: review
|
|
who: Requestor
|
|
when: '2022-08-22T09:37:09'
|
|
comment: Dolores dolore animi.
|
|
review:
|
|
- state: new
|
|
when: '2022-08-22T09:37:09'
|
|
who: Requestor
|
|
by_group: dolorum
|
|
comment: Aut ipsum accusantium.
|
|
- state: accepted
|
|
when: '2022-08-22T09:37:09'
|
|
who: Requestor
|
|
by_group: group_1
|
|
comment:
|
|
history:
|
|
who: Admin
|
|
when: '2022-08-22T09:37:09'
|
|
description: Review got accepted
|
|
one_result_with_history:
|
|
summary: One result with history
|
|
value:
|
|
matches: 1
|
|
request:
|
|
- id: 4
|
|
creator: Iggy2
|
|
description: Ut voluptas quibusdam.
|
|
action:
|
|
type: submit
|
|
source:
|
|
project: requestor_project
|
|
package: package_1661161028_1
|
|
target:
|
|
project: my_organization:Admin
|
|
package: package_1661161028_1
|
|
state:
|
|
name: review
|
|
who: Requestor
|
|
when: '2022-08-22T09:37:09'
|
|
comment: Dolores dolore animi.
|
|
review:
|
|
- state: new
|
|
when: '2022-08-22T09:37:09'
|
|
who: Requestor
|
|
by_group: dolorum
|
|
comment: Aut ipsum accusantium.
|
|
- state: accepted
|
|
when: '2022-08-22T09:37:09'
|
|
who: Admin
|
|
by_group: group_1
|
|
comment:
|
|
history:
|
|
who: Admin
|
|
when: '2022-08-22T09:37:09'
|
|
description: Review got accepted
|
|
history:
|
|
- who: Iggy
|
|
when: '2022-08-22T09:37:09'
|
|
description: Request created
|
|
comment: Praesentium in nobis. Tempore omnis error.
|
|
one_result_with_full_history:
|
|
summary: One result with full history
|
|
value:
|
|
matches: 1
|
|
request:
|
|
- id: 4
|
|
creator: Iggy2
|
|
description: Ut voluptas quibusdam.
|
|
action:
|
|
type: submit
|
|
source:
|
|
project: requestor_project
|
|
package: package_1661161028_1
|
|
target:
|
|
project: my_organization:Admin
|
|
package: package_1661161028_1
|
|
state:
|
|
name: review
|
|
who: Requestor
|
|
when: '2022-08-22T09:37:09'
|
|
comment: Dolores dolore animi.
|
|
review:
|
|
- state: new
|
|
when: '2022-08-22T09:37:09'
|
|
who: Requestor
|
|
by_group: dolorum
|
|
comment: Aut ipsum accusantium.
|
|
- state: accepted
|
|
when: '2022-08-22T09:37:09'
|
|
who: Admin
|
|
by_group: group_1
|
|
comment:
|
|
history:
|
|
who: Admin
|
|
when: '2022-08-22T09:37:09'
|
|
description: Review got accepted
|
|
history:
|
|
- who: Iggy
|
|
when: '2022-08-22T09:37:09'
|
|
description: Request created
|
|
comment: Praesentium in nobis. Tempore omnis error.
|
|
- who: Admin
|
|
when: '2022-08-22T09:37:09'
|
|
description: Request got accepted
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'requests'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: search_results_exceed_configured_limit
|
|
summary: |
|
|
The number of results returned by the performed search exceeds the configured limit.
|
|
|
|
You can:
|
|
- retrieve only the ids by using an '/search/.../id' API endpoint, or
|
|
- reduce the number of matches of your search:
|
|
- paginating your results, through the 'limit' and 'offset' parameters, or
|
|
- adjusting your `match` expression.
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List requests objects that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/request`, please
|
|
use that one.
|
|
tags:
|
|
- Search
|
|
"/search/request/id":
|
|
get:
|
|
summary: List request numbers that match a XPath condition.
|
|
description: |
|
|
Return a collection of request numbers that match a XPath condition.
|
|
|
|
This operation is the same as the one defined with [GET /search/request](#/Search/get_search_request) with the exception of the results returned.
|
|
While the former operation returns a list of request objects, this one return a list of request numbers. See example values of a succeeded request below.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: match
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Expression based in XPath.
|
|
|
|
Not providing a value or providing a value of `*` will return all requests.
|
|
|
|
Available predicates are:
|
|
- Request fields: `@id` and `@creator`.
|
|
- State fields: `state/@name`, `state/@who`, and `state/@when`.
|
|
- Target fields: `target/@project` and `target/@package`.
|
|
- Source fields: `source/@project` and `source/@package`.
|
|
- Actions fields: `action/@type`, `action/grouped/@id`, `action/target/@project`, `action/target/@package`, `action/source/@project`, and `action/source/@package`.
|
|
- Reviews fields:
|
|
- General: `review/@when`, `review/@state`.
|
|
- Review by: `review/@by_user`, `review/@by_group`, `review/@by_project`, and `review/@by_package`.
|
|
- History: `review/history/@when`.
|
|
- History fields: `history/@when` and `history/@who`.
|
|
examples:
|
|
all:
|
|
summary: All
|
|
value: "*"
|
|
id:
|
|
summary: Request number
|
|
value: "@id=123456"
|
|
function_contains:
|
|
summary: Function contains
|
|
value: contains(@creator,'Igg')
|
|
combination:
|
|
summary: State name and date
|
|
value: "/search/request?match=state/@name='review' and starts_with(state/@when,'2022-08-22')"
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of results.
|
|
example: 20
|
|
- in: query
|
|
name: offset
|
|
schema:
|
|
type: integer
|
|
description: Return results starting from the element specified by offset.
|
|
example: 10
|
|
- in: query
|
|
name: withhistory
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Include the request history.
|
|
|
|
Without a value or with the value `0` means without the request history. A value `1` means with the request history.
|
|
example: 1
|
|
- in: query
|
|
name: withfullhistory
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Include the request and review history.
|
|
|
|
Without a value or with the value `0` means without the request and review history. A value `1` means with the request and review history.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
matches:
|
|
type: string
|
|
example: 7
|
|
xml:
|
|
attribute: true
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
action:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
source:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: home:foo-user
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: integer
|
|
example: 521
|
|
xml:
|
|
attribute: true
|
|
target:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
example: OBS:Unstable
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: obs-server
|
|
xml:
|
|
attribute: true
|
|
options:
|
|
type: object
|
|
properties:
|
|
sourceupdate:
|
|
type: string
|
|
example: cleanup
|
|
state:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: accepted
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
example: bar-user
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
example: allright
|
|
review:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_user:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_group:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
by_package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
comment:
|
|
type: string
|
|
history:
|
|
type: object
|
|
properties:
|
|
when:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
who:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example:
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_user: obs-maintainer
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_group: obs-group
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_project: OBS:Unstable
|
|
- state: accepted
|
|
when: '2021-01-15T15:49:32'
|
|
who: obs-maintainer
|
|
by_package: obs-server
|
|
history:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
who:
|
|
type: string
|
|
example: foo
|
|
xml:
|
|
attribute: true
|
|
when:
|
|
type: string
|
|
example: '2021-01-15T13:39:43'
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Request created
|
|
comment:
|
|
type: string
|
|
example: Please review sources
|
|
description:
|
|
type: string
|
|
example: A little version update
|
|
xml:
|
|
name: request
|
|
xml:
|
|
name: collection
|
|
examples:
|
|
no_results:
|
|
summary: No matching results
|
|
value:
|
|
matches: 0
|
|
two_results:
|
|
summary: Two matching results
|
|
value:
|
|
matches: 2
|
|
request:
|
|
- id: 2
|
|
- id: 4
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: illegal_xpath_error
|
|
summary: unable to evaluate 'foo' for 'requests'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Search
|
|
post:
|
|
deprecated: true
|
|
summary: List request numbers that match a XPath condition.
|
|
description: This endpoint is exactly the same as `GET /search/request/id`,
|
|
please use that one.
|
|
tags:
|
|
- Search
|
|
"/service":
|
|
get:
|
|
summary: List all services.
|
|
description: Get a list of all services known to OBS.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
description:
|
|
type: string
|
|
parameter:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
allowedvalue:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
type: string
|
|
xml:
|
|
name: service
|
|
xml:
|
|
wrapped: true
|
|
name: servicelist
|
|
example:
|
|
- name: download_url
|
|
summary: Download a file
|
|
description: This services uses curl to download files from remote
|
|
servers via supported protocols.
|
|
parameter:
|
|
- name: protocol
|
|
description: Used Protocol
|
|
allowedvalue:
|
|
- ftp
|
|
- http
|
|
- https
|
|
- name: host
|
|
description: Server Hostname
|
|
required: ''
|
|
- name: source_validator
|
|
summary: Validate sources
|
|
description: The default SUSE source validator which catches common
|
|
pitfalls before build.
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- General Information
|
|
"/source?cmd=branch":
|
|
post:
|
|
summary: Branch a set of packages based on attributes
|
|
description: |
|
|
Create a source link from a package of an existing project to a
|
|
new subproject of the requesters home project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- name: project
|
|
description: The project that you want to branch
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: package
|
|
description: The package that you want to branch
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: target_project
|
|
description: Project which will be used or created
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: target_package
|
|
description: Package name which will be used
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: attribute
|
|
description: Attribute used for package search, default is OBS:MaintenanceProject
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: add_repositories
|
|
description: Copy the repositories from branched project
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
- name: update_path_elements
|
|
description: Check if repository path elements do use each other and adapt
|
|
our own path elements
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
- name: update_project_attribute
|
|
description: Set a different Update Project attribute.
|
|
in: query
|
|
schema:
|
|
type: string
|
|
default: OBS:UpdateProject
|
|
- name: noaccess
|
|
description: Create hidden project. The new created project will be read protected
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
- name: extend_package_names
|
|
description: Extend repo and package names
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
- name: add_repositories_rebuild
|
|
description: Use defined rebuild policy for new repos or copy it from the
|
|
source project
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- transitive direct local copy
|
|
- name: add_repositories_block
|
|
description: Use defined block policy for new repos
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- all
|
|
- local
|
|
- never
|
|
- name: newinstance
|
|
description: The target package exists only via project links, but the link
|
|
should point to given project
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
- name: maintenance
|
|
describe: Explicitly asked for maintenance branch
|
|
in: query
|
|
schema:
|
|
type: boolean
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
data:
|
|
- home:Admin
|
|
- hello_world
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: no packages found by search criteria
|
|
tags:
|
|
- Sources
|
|
"/source?cmd=createmaintenanceincident":
|
|
post:
|
|
summary: Create maintenance incident projects
|
|
description: Create a mainatenance incident project based on attribute search.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: attribute
|
|
schema:
|
|
type: string
|
|
example: OBS:MaintenanceProject
|
|
description: attribute used for package search, default is OBS:MaintenanceProject
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
data:
|
|
- MaintenanceProject:1
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: incident_has_no_maintenance_project
|
|
summary: incident projects shall only create below maintenance projects
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: modify_project_no_permission
|
|
summary: no permission to modify project 'MaintenanceProject'
|
|
tags:
|
|
- Sources
|
|
"/source?cmd=orderkiwirepos":
|
|
post:
|
|
summary: Sort the repositories inside of a kiwi file according to path relationships.
|
|
description: This API takes kiwi XML file in the request body and sort the repositories
|
|
based on priority.
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
schemaversion:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
source:
|
|
type: object
|
|
properties:
|
|
path:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: repository
|
|
xml:
|
|
name: image
|
|
example: |
|
|
<image name="{exc_image_base_name}" schemaversion="7.4">
|
|
<repository type="rpm-md" priority="99" alias="kiwi">
|
|
<source path="obs://Virtualization:Appliances:Builder/openSUSE_Leap_15.3"/>
|
|
</repository>
|
|
<repository type="rpm-md" priority="1" alias="OS" imageinclude="true">
|
|
<source path="{exc_repo}"/>
|
|
</repository>
|
|
</image>
|
|
responses:
|
|
'200':
|
|
description: Sorted list of repositories
|
|
content:
|
|
text/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
schemaversion:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
source:
|
|
type: object
|
|
properties:
|
|
path:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: repository
|
|
xml:
|
|
name: image
|
|
example: |
|
|
<image name="{exc_image_base_name}" schemaversion="7.4">
|
|
<repository type="rpm-md" priority="1" alias="OS" imageinclude="true">
|
|
<source path="{exc_repo}"/>
|
|
</repository>
|
|
<repository type="rpm-md" priority="99" alias="kiwi">
|
|
<source path="obs://Virtualization:Appliances:Builder/openSUSE_Leap_15.3"/>
|
|
</repository>
|
|
</image>
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 400
|
|
summary: "/srv/obs/sources/:upload/1344: not xml"
|
|
tags:
|
|
- Sources
|
|
"/source":
|
|
get:
|
|
summary: List all the projects.
|
|
description: Get the list of all projects.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- name: deleted
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
description: Set to `1` to list the deleted projects. This is available for
|
|
Admins only.
|
|
example: 0
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
examples:
|
|
List of projects:
|
|
value:
|
|
entry:
|
|
- name: home:Admin
|
|
- name: home:Iggy
|
|
Deleted projects:
|
|
value:
|
|
entry:
|
|
- name: home:user_1
|
|
'400':
|
|
description: Wrong value for deleted parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not boolean:
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: No permission to access deleted projects.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: no_permission_for_deleted
|
|
summary: only admins can see deleted projects.
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}":
|
|
get:
|
|
summary: List packages of a project.
|
|
description: Get a list of packages belonging to a project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: deleted
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to list the packages of a deleted project.
|
|
example: 1
|
|
- in: query
|
|
name: expand
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to include packages from linked projects.
|
|
example: 1
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- issues
|
|
- productlist
|
|
- verboseproductlist
|
|
description: |
|
|
Specify which sections should be included in the packages list.
|
|
|
|
* `issues`: Show all tracked issues for all the packages.
|
|
* `productlist`: Show all contained products.
|
|
* `verboseproductlist`: List all contained products with detailed information about the product.
|
|
|
|
Example of a result when `issues` is selected:
|
|
```
|
|
<project name="Base:System">
|
|
<package project="Base:System" name="xz">
|
|
<issue change="kept">
|
|
<created_at>2009-05-21 10:50:00 UTC</created_at>
|
|
<updated_at>2020-02-24 13:01:11 UTC</updated_at>
|
|
<name>505969</name>
|
|
<tracker>bnc</tracker>
|
|
<label>boo#505969</label>
|
|
<url>https://bugzilla.opensuse.org/show_bug.cgi?id=505969</url>
|
|
<state>CLOSED</state>
|
|
<summary>lzma, xz: missing manpages</summary>
|
|
<owner>
|
|
<login>coolo</login>
|
|
<email>coolo@suse.com</email>
|
|
<realname>Stephan Kulow</realname>
|
|
</owner>
|
|
</issue>
|
|
<issue change="kept">
|
|
<created_at>2009-06-04 14:35:00 UTC</created_at>
|
|
<updated_at>2020-02-24 13:01:11 UTC</updated_at>
|
|
<name>509945</name>
|
|
<tracker>bnc</tracker>
|
|
<label>boo#509945</label>
|
|
<url>https://bugzilla.opensuse.org/show_bug.cgi?id=509945</url>
|
|
<state>CLOSED</state>
|
|
<summary>Enforce packaging of static libraries by rpmlint check</summary>
|
|
<owner>
|
|
<login>dirkmueller</login>
|
|
<email>dmueller@suse.com</email>
|
|
<realname>Dirk Mueller</realname>
|
|
</owner>
|
|
</issue>
|
|
</package>
|
|
</project>
|
|
|
|
```
|
|
|
|
Example of a result when `productlist` is selected:
|
|
```
|
|
<productlist count="3">
|
|
<product name="openSUSE-Addon-NonOss" cpe="cpe:/o:opensuse:opensuse-addon-nonoss:20230108" originproject="openSUSE:Factory" originpackage="000product" mtime="1673224560"/>
|
|
<product name="openSUSE" cpe="cpe:/o:opensuse:opensuse:20230108" originproject="openSUSE:Factory" originpackage="000product" mtime="1673224560"/>
|
|
<product name="MicroOS" cpe="cpe:/o:opensuse:microos:20230108" originproject="openSUSE:Factory" originpackage="000product" mtime="1673224560"/>
|
|
</productlist>
|
|
```
|
|
|
|
Example of a result when `verboseproductlist` is selected:
|
|
```
|
|
<productlist count="3">
|
|
<product name="openSUSE-Addon-NonOss" originproject="openSUSE:Factory" originpackage="000product">
|
|
<cpe>cpe:/o:opensuse:opensuse-addon-nonoss:20230108</cpe>
|
|
<version>20230108</version>
|
|
</product>
|
|
<product name="openSUSE" originproject="openSUSE:Factory" originpackage="000product">
|
|
<cpe>cpe:/o:opensuse:opensuse:20230108</cpe>
|
|
<version>20230108</version>
|
|
</product>
|
|
<product name="MicroOS" originproject="openSUSE:Factory" originpackage="000product">
|
|
<cpe>cpe:/o:opensuse:microos:20230108</cpe>
|
|
<version>20230108</version>
|
|
</product>
|
|
</productlist>
|
|
```
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
oneOf:
|
|
- type: object
|
|
properties:
|
|
count:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
originpackage:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
- type: object
|
|
properties:
|
|
count:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
cpe:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
originproject:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
originpackage:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: product
|
|
xml:
|
|
name: productlist
|
|
- type: object
|
|
properties:
|
|
count:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
originproject:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
originpackage:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
cpe:
|
|
type: string
|
|
version:
|
|
type: string
|
|
xml:
|
|
name: product
|
|
xml:
|
|
name: productlist
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not boolean:
|
|
description: Passing a non boolean value to the `deleted` query
|
|
parameter.
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:nonExistentUser'
|
|
tags:
|
|
- Sources - Packages
|
|
delete:
|
|
summary: Delete a specified project.
|
|
description: Deletes a specified project and all the packages of this project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: force
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
description: |
|
|
Set to `1` if you want to delete the project even if the repositories of other
|
|
projects include a path to this project. After deletion, the path
|
|
in the other repository will start pointing towards 'deleted/standard' to
|
|
prevent the build and publishing
|
|
- name: comment
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Unauthorized to delete project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
delete_project_no_permission:
|
|
value:
|
|
code: delete_project_no_permission
|
|
summary: Permission denied (delete project 'project_name')
|
|
summary: No permission
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?view=info":
|
|
get:
|
|
summary: Show information of the packages of a project.
|
|
description: Show source version, md5sums and build description files of all
|
|
packages belonging to a project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- info
|
|
- issues
|
|
- productlist
|
|
- verboseproductlist
|
|
description: |
|
|
Specify which information about each package should be returned.
|
|
|
|
* `info`: Show source version, md5sums and build description files of all packages belonging to a project.
|
|
* `issues`, `productlist`, `verboseproductlist`:
|
|
See this [other endpoint](<#/Sources - Packages/get_source__project_name_>) for details.
|
|
example: info
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Filter by architecture name.
|
|
example: x86_64
|
|
- in: query
|
|
name: noexpand
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to prevent from showing some elements about packages,
|
|
like `filename`, `error` or `linked` elements.
|
|
example: 1
|
|
- in: query
|
|
name: nofilename
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to prevent from showing filename elements. Shows only
|
|
the `sourceinfo` root element.
|
|
example: 1
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
description: Filter by package name.
|
|
example: test
|
|
- in: query
|
|
name: parse
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to show more details, like `originproject`, `linked
|
|
package`, `name`, `version`, `release`, `subpacks`, `deps`, and `prereqs`
|
|
elements.
|
|
example: 1
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Filter by repository name.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: withmetamd5
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to show the `metamd5` attribute.
|
|
example: 1
|
|
- in: query
|
|
name: withchangesmd5
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to show the `revtime` element.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
verifymd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
metamd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
filename:
|
|
type: string
|
|
originproject:
|
|
type: string
|
|
linked:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
version:
|
|
type: string
|
|
release:
|
|
type: string
|
|
revtime:
|
|
type: string
|
|
error:
|
|
type: string
|
|
subpacks:
|
|
type: array
|
|
items:
|
|
type: string
|
|
deps:
|
|
type: array
|
|
items:
|
|
type: string
|
|
prereqs:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: sourceinfo
|
|
xml:
|
|
name: sourceinfolist
|
|
wrapped: true
|
|
examples:
|
|
A project contains three packages:
|
|
value:
|
|
- package: texlive-specs
|
|
rev: 9f5336fcf6e4521b6a9587b02087eef9
|
|
vrev: 25
|
|
srcmd5: 9f5336fcf6e4521b6a9587b02087eef9
|
|
verifymd5: 9b49b7314f5d0dfd8002cd329e048f73
|
|
filename: texlive-specs.spec
|
|
- package: texlive-specs-w
|
|
rev: 9f5336fcf6e4521b6a9587b02087eef9
|
|
vrev: 55
|
|
srcmd5: 9f5336fcf6e4521b6a9587b02087eef9
|
|
verifymd5: 9b49b7314f5d0dfd8002cd329e048f73
|
|
filename: texlive-specs-w.spec
|
|
- package: test
|
|
rev: 5
|
|
vrev: 5
|
|
srcmd5: e3a71081cb7245e3c09c3655dffa7384
|
|
verifymd5: e3a71081cb7245e3c09c3655dffa7384
|
|
error: bad build configuration, no build type defined or detected
|
|
Applying a filter doesn't return any result:
|
|
value:
|
|
- package: hello
|
|
error: 404 package 'hello' does not exist
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `parse`,
|
|
for example.
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_config":
|
|
get:
|
|
summary: Get project's configuration
|
|
description: Read configuration for the specified project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: rev
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: |
|
|
# temporary should be fixed in SUSE:SLE-15-SP4:GA
|
|
Prefer: -libudev-devel
|
|
Prefer: -libudev-devel-32bit
|
|
...
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
put:
|
|
summary: Update project's configuration
|
|
description: Update configuration for the specified project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: comment
|
|
in: query
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
description: configuration you want to update
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: |
|
|
# temporary should be fixed in SUSE:SLE-15-SP4:GA
|
|
Prefer: -libudev-devel
|
|
Prefer: -libudev-devel-32bit
|
|
...
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_meta":
|
|
get:
|
|
summary: Get project meta file
|
|
description: Get project meta file
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: view
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
person:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
path:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: project
|
|
example:
|
|
name: home:Admin
|
|
title: Endless Night
|
|
description: Test project
|
|
person:
|
|
userid: Admin
|
|
role: maintainer
|
|
repository:
|
|
name: openSUSE_Tumbleweed
|
|
path:
|
|
project: openSUSE.org:openSUSE:Factory
|
|
repository: snapshot
|
|
arch:
|
|
- x86_64
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Unknown project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
Invalid Project Parameters:
|
|
value:
|
|
code: invalid_project_parameters
|
|
summary: Not found
|
|
tags:
|
|
- Sources - Projects
|
|
put:
|
|
summary: Write project meta file
|
|
description: Write project's meta file. Create the project if it doesn't exist.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment that explains the changes you made in meta file.
|
|
requestBody:
|
|
description: Project meta definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
person:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
path:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: project
|
|
example:
|
|
name: home:Admin
|
|
title: Endless Night
|
|
description: Test project
|
|
person:
|
|
userid: Admin
|
|
role: maintainer
|
|
repository:
|
|
name: openSUSE_Tumbleweed
|
|
path:
|
|
project: openSUSE.org:openSUSE:Factory
|
|
repository: snapshot
|
|
arch:
|
|
- x86_64
|
|
- aarch64
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad request.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Command:
|
|
value:
|
|
code: unknown_command
|
|
summary: Allowed commands are '<some command>'.
|
|
Bad Request:
|
|
value:
|
|
code: err_register_save
|
|
summary: 'Could not save the registration, details: Login is the
|
|
name of an already existing user and Password can''t be blank.'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: The user does not have permission to change the project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Change project no permission:
|
|
value:
|
|
code: change_project_no_permission
|
|
summary: The project <some project> is locked
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_pattern":
|
|
get:
|
|
summary: Get list of patterns
|
|
description: Get a list of all patterns for the project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
ntime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
name: _pattern
|
|
rev: '3'
|
|
vrev: '555'
|
|
srcmd5: db8d976cd59b1a933ab82a539247aeac
|
|
entry:
|
|
- name: OBS_Server
|
|
md5: d4ba5bf938ed8d26e68a7c6d1237854e
|
|
size: '947'
|
|
ntime: '1463555386'
|
|
- name: OBS_Server:unstable
|
|
md5: d4ba5bf938ed8d26e6xvv8a7c6d12ddd
|
|
size: '737'
|
|
ntime: 146355ddd6
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_pattern/{file_name}":
|
|
get:
|
|
deprecated: true
|
|
summary: Read a specified pattern file
|
|
description: Read a specified pattern file and return the content
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown File:
|
|
value:
|
|
code: unknown_file
|
|
summary: 'File not found: home:some_project/_pattern/some_file'
|
|
tags:
|
|
- Sources - Projects
|
|
delete:
|
|
deprecated: true
|
|
summary: Deletes a specified pattern file.
|
|
description: Deletes a specified pattern file of a project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown File:
|
|
value:
|
|
code: unknown_file
|
|
summary: 'File not found: home:some_project/_pattern/some_file'
|
|
tags:
|
|
- Sources - Projects
|
|
put:
|
|
deprecated: true
|
|
summary: Write a specified pattern file.
|
|
description: Write a specified pattern file of a project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
requestBody:
|
|
content:
|
|
plain/text:
|
|
schema:
|
|
type: string
|
|
properties:
|
|
file:
|
|
type: string
|
|
format: binary
|
|
responses:
|
|
'200':
|
|
description: Updates the artifact's file contents
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
example:
|
|
rev: 28
|
|
srcmd5: 6c73fc9ef8d43369f0778564617b4a93
|
|
time: 1682497725
|
|
user: Admin
|
|
comment:
|
|
requestid:
|
|
'400':
|
|
description: 'Error: Bad request.'
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Bad Request:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'pattern validation error: 1:1: FATAL: Start tag expected,
|
|
< not found
|
|
|
|
'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown File:
|
|
value:
|
|
code: unknown_file
|
|
summary: 'File not found: home:some_project/_pattern/some_file'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_project":
|
|
get:
|
|
summary: List project files
|
|
description: List all the files in project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: meta
|
|
required: false
|
|
schema:
|
|
type: integer
|
|
description: Set to 1 to include _meta files
|
|
example: 1
|
|
- in: query
|
|
name: rev
|
|
required: false
|
|
schema:
|
|
type: integer
|
|
description: Revision number
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
example:
|
|
name: _project
|
|
rev: '7'
|
|
vrev: '445'
|
|
srcmd5: 9a18405476229262648b4c3e548a90a9
|
|
entry:
|
|
name: _pubkey
|
|
md5: 1536ab133eb76be69aaba65d934d827a
|
|
size: '1369'
|
|
mtime: '1650378374'
|
|
'400':
|
|
description: Wrong value for meta parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not boolean:
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_pubkey":
|
|
get:
|
|
summary: Get GPG key
|
|
description: |
|
|
Get the project's GPG key. If the project doesn't have a default GPG key, it looks for the first one
|
|
available in the namespace hierarchy, ending at the global buildservice key.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
example: |
|
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
Version: GnuPG v1.4.5 (GNU/Linux)
|
|
mQENBFfX+W4BCAC89VZEUt8O/o2rXnFoNrW0nsZoaHZX5Kjtzwuns5/UwzBffY/h
|
|
[...]
|
|
-----END PGP PUBLIC KEY BLOCK-----
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: 'Project not found: <some project>.'
|
|
No pubkey:
|
|
value:
|
|
code: no_pubkey
|
|
summary: no pubkey available
|
|
tags:
|
|
- Sources - Projects
|
|
delete:
|
|
summary: Removes the current gpg key
|
|
description: Removes the current gpg key if it exists
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_keyinfo":
|
|
get:
|
|
summary: Get a projects signing keys
|
|
description: Read information about the signing keys for the specified project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
pubkey:
|
|
type: object
|
|
properties:
|
|
keyid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
algo:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
keysize:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
expires:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
fingerprint:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
sslcert:
|
|
type: object
|
|
properties:
|
|
keyid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
serial:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
issuer:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
subject:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
algo:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
keysize:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
begins:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
expires:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
fingerprint:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: keyinfo
|
|
example:
|
|
project: openSUSE:Leap
|
|
pubkey:
|
|
keyid: b88b2fd43dbdc284
|
|
userid: openSUSE Project Signing Key <opensuse@opensuse.org>
|
|
algo: rsa
|
|
keysize: 2048
|
|
expires: 1887851113
|
|
fingerprint: 22c0 7ba5 3417 8cd0 2efe 22aa b88b 2fd4 3dbd c284
|
|
sslcert:
|
|
serial: 18068117070991220325
|
|
issuer: CN=openSUSE Secure Boot CA, C=DE, L=Nuremberg, O=openSUSE
|
|
Project, emailAddress=build@opensuse.org
|
|
subject: CN=openSUSE Secure Boot Signkey, C=DE, L=Nuremberg, O=openSUSE
|
|
Project, emailAddress=build@opensuse.org
|
|
algo: rsa
|
|
keysize: 2048
|
|
begins: 1655126536
|
|
expires: 1966166536
|
|
fingerprint: 1f67 3297 da56 8ae0 dedf db7c 8cc6 8f9e cb85 7275
|
|
keyid: fd9f 2c12 e599 d67c c7f9 0675 41ad f426 b712 469e
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_attribute":
|
|
get:
|
|
summary: Get all the project's attributes
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: view
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- blame
|
|
description: With view=blame, information about who changed each XML tag and
|
|
when is displayed.
|
|
example: blame
|
|
- name: with_default
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If the attribute doesn't contain any value and `with_default` is present,
|
|
the default values will be displayed, if any.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
examples:
|
|
listOfAttributes:
|
|
value:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
- name: ScreenShots
|
|
namespace: OBS
|
|
viewBlame:
|
|
description: Passing view=blame.
|
|
value: |
|
|
10 (Admin 2023-03-09 11:46:01 1) <attributes>
|
|
12 (Iggy 2023-03-13 14:46:01 5) <attribute namespace="OBS" name="MakeOriginOlder"/>
|
|
14 (Admin 2023-03-13 15:14:21 6) <attribute namespace="OBS" name="QualityCategory">
|
|
14 (Admin 2023-03-13 15:14:21 7) <value>Development</value>
|
|
14 (Admin 2023-03-13 15:14:21 8) </attribute>
|
|
10 (Admin 2023-03-09 11:46:01 9) </attributes>
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: remote_project
|
|
summary: Attribute access to remote project is not yet supported
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_attribute/{attribute_name}":
|
|
get:
|
|
summary: Get project's attribute
|
|
description: Get a specified attribute of the project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
- name: view
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- blame
|
|
description: With view=blame, information about who changed each XML tag and
|
|
when is displayed.
|
|
example: blame
|
|
- name: with_default
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If the attribute doesn't contain any value and `with_default` is present,
|
|
the default values will be displayed, if any.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
examples:
|
|
oneAttribute:
|
|
value:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
viewBlame:
|
|
description: Passing view=blame.
|
|
value: |
|
|
6 (Admin 2023-03-09 11:46:01 1) <attributes>
|
|
12 (Iggy 2023-03-13 14:46:01 5) <attribute namespace="OBS" name="MakeOriginOlder"/>
|
|
14 (Admin 2023-03-13 15:14:21 6) <attribute namespace="OBS" name="QualityCategory">
|
|
14 (Admin 2023-03-13 15:14:21 7) <value>Development</value>
|
|
14 (Admin 2023-03-13 15:14:21 8) </attribute>
|
|
6 (Admin 2023-03-09 11:46:01 9) </attributes>
|
|
'400':
|
|
description: Wrong value for deleted parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
value:
|
|
code: 400
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
post:
|
|
summary: Modifies the specified attribute
|
|
description: Modifies the specified attribute
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
- name: comment
|
|
in: query
|
|
schema:
|
|
type: string
|
|
requestBody:
|
|
description: Attributes you want to update
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
example:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Wrong value for deleted parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
value:
|
|
code: 400
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
delete:
|
|
summary: Removes a specified attribute
|
|
description: Removes a specified attribute
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
- name: comment
|
|
in: query
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Wrong value for deleted parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
value:
|
|
code: 400
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_project/_history":
|
|
get:
|
|
summary: Get project commit history.
|
|
description: Get project commit history.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: deleted
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to allow to retrieve the revision history of a deleted
|
|
project.
|
|
example: 1
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of retrieved revision history elements to the
|
|
specified number.
|
|
example: 20
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to retrieve the revision history of the meta file
|
|
(`_meta`) of the project.
|
|
example: 1
|
|
- in: query
|
|
name: startbefore
|
|
schema:
|
|
type: integer
|
|
description: Start the list of revision history elements before the given
|
|
revision number.
|
|
example: 124
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Return the revision entry for a specific revision number.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [revisionlist.rng](../schema/revisionlist.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
xml:
|
|
name: revisionlist
|
|
wrapped: true
|
|
examples:
|
|
Two Revisions:
|
|
value:
|
|
- rev: 1
|
|
vrev: ''
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: ''
|
|
time: 1678364228
|
|
user: Admin
|
|
comment: project was deleted
|
|
- rev: 2
|
|
vrev: ''
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: ''
|
|
time: 1678364246
|
|
user: Admin
|
|
comment: project was undeleted
|
|
rev Parameter Specified (rev = 1):
|
|
value:
|
|
- rev: 1
|
|
vrev: ''
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: ''
|
|
time: 1678364228
|
|
user: Admin
|
|
comment: project was deleted
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/_project/{file_name}":
|
|
get:
|
|
summary: Read a project file
|
|
description: Read a project file
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
- name: deleted
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to read a file of a deleted project.
|
|
example: 1
|
|
- in: query
|
|
name: meta
|
|
required: false
|
|
schema:
|
|
type: integer
|
|
description: Set to `1` to include _meta files
|
|
example: 1
|
|
- in: query
|
|
name: rev
|
|
required: false
|
|
schema:
|
|
type: integer
|
|
description: Revision number
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
person:
|
|
type: object
|
|
properties:
|
|
userid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
role:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
path:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: project
|
|
example:
|
|
name: home:Admin
|
|
title: Endless Night
|
|
description: Test project
|
|
person:
|
|
userid: Admin
|
|
role: maintainer
|
|
repository:
|
|
name: openSUSE_Tumbleweed
|
|
path:
|
|
project: openSUSE.org:openSUSE:Factory
|
|
repository: snapshot
|
|
arch:
|
|
- x86_64
|
|
'400':
|
|
description: Wrong value for meta parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not boolean:
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: The user does not have permission to access the source.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Source access no permission:
|
|
value:
|
|
code: source_access_no_permission
|
|
summary: Source Access not allowed
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=addchannels":
|
|
post:
|
|
summary: Add channels and extend repository list.
|
|
description: |
|
|
Add channels for each one of the provided project packages.
|
|
If the mode parameter is provided, that mode is added to the package channel.
|
|
The mode parameter can be:
|
|
- 'skip_disabled'
|
|
- 'enable_all'
|
|
- 'add_disabled' being the default.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: mode
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- skip_disabled
|
|
- enable_all
|
|
- add_disabled
|
|
description: The channel will be added to the package using this mode.
|
|
example: add_disabled
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=copy":
|
|
post:
|
|
summary: Copy an entire project.
|
|
description: Copy the source project provided by the required parameter `oproject`
|
|
to the target project provided by the path parameter `project_name`.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: |
|
|
Target project name
|
|
|
|
The target project must exist. Otherwise, the copy is not performed and a not found error (404) is returned.
|
|
example: home:Iggy:target
|
|
- in: query
|
|
name: oproject
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Origin project name
|
|
example: home:Iggy:source
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment to be added in the revision history.
|
|
example: Copy project for testing.
|
|
- in: query
|
|
name: makeolder
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Make target older. Set to `1` to bump the source vrev by two
|
|
numbers and the target by one.
|
|
example: 1
|
|
- in: query
|
|
name: makeoriginolder
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Make origin older. Set to `1` to extend the source vrev.
|
|
example: 1
|
|
- in: query
|
|
name: nodelay
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: By default the copying is done as a deferred job. Set to `1`
|
|
to perform the copy right away.
|
|
example: 1
|
|
- in: query
|
|
name: noservice
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` not to run source services.
|
|
example: 1
|
|
- in: query
|
|
name: resign
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to resign all binaries with the target project key.
|
|
example: 1
|
|
- in: query
|
|
name: withbinaries
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to also copy binaries.
|
|
example: 1
|
|
- in: query
|
|
name: withhistory
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to also copy the revision history.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [about.xsd](../schema/about.xsd)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
job_invoked:
|
|
summary: Job Invoked
|
|
value:
|
|
code: invoked
|
|
summary: Job invoked
|
|
ok:
|
|
summary: Ok
|
|
description: Response given when `nodelay` is set to `1`.
|
|
value:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
cmd_execution_no_permission:
|
|
summary: No Permission to Execute Command
|
|
value:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'copy'
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=createkey":
|
|
post:
|
|
summary: Generate a new GPG key for a project.
|
|
description: Generate a new GPG key. If the project already has a GPG key, the
|
|
old key is discarded.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_project_name
|
|
summary: invalid project name '{project_name}'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'createkey'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=createmaintenanceincident":
|
|
post:
|
|
summary: Create a single maintenance incident project.
|
|
description: Create a single maintenance incident project as a sub project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
data:
|
|
- MaintenanceProject:17
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: incident_has_no_maintenance_project
|
|
summary: incident projects shall only create below maintenance projects
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'createmaintenanceincident'
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:Admin'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=createpatchinfo":
|
|
post:
|
|
summary: Creates a patchinfo inside the given project
|
|
description: |
|
|
Creates a new patchinfo package, in the given project, containing a '_patchinfo' file.
|
|
The file will include all the issues in other project's sources, if any.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: name
|
|
schema:
|
|
type: string
|
|
description: Name of the patchinfo package. If not passed, 'patchinfo' is
|
|
the default value.
|
|
example: BaseDistro_patchinfo
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment to be included in the 'summary' XML tag of the patchinfo.
|
|
example: Security update for the Linux Kernel
|
|
- in: query
|
|
name: force
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If the patchinfo with the given name already existed and the force parameter is passed,
|
|
then the patchinfo will be overwritten.
|
|
If the force parameter is not passed, an error will be raised giving you some suggestions.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example: |
|
|
<status code="ok">
|
|
<summary>Ok</summary>
|
|
<data name="targetproject">home:Admin</data>
|
|
<data name="targetpackage">BaseDistro_patchinfo</data>
|
|
</status>
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_project_name:
|
|
value:
|
|
code: invalid_project_name
|
|
summary: invalid project name '0'
|
|
summary: Invalid Project Name
|
|
invalid_package_name:
|
|
value:
|
|
code: invalid_package_name
|
|
summary: invalid package name 'base:distro'
|
|
summary: Invalid Package Name
|
|
patchinfo_file_exists:
|
|
value:
|
|
code: patchinfo_file_exists
|
|
summary: 'createpatchinfo command: the patchinfo BaseDistro exists
|
|
already. Either use force=1 re-create the _patchinfo or use
|
|
updatepatchinfo for updating.'
|
|
summary: Patchinfo File Exists
|
|
package_already_exists:
|
|
value:
|
|
code: package_already_exists
|
|
summary: 'createpatchinfo command: the package BaseDistro exists
|
|
already, but is no patchinfo. Please create a new package instead.'
|
|
summary: Package Already Exists
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=extendkey":
|
|
post:
|
|
summary: Extend the expiration date of GPG keys.
|
|
description: Extend the expiration date of GPG key for the given project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: days
|
|
schema:
|
|
type: integer
|
|
description: Define the number of days until key expiry
|
|
example: 712
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'extendkey'
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:Admin'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=freezelink":
|
|
post:
|
|
summary: Freeze a project link.
|
|
description: Freeze a project link, either creating the freeze or updating it.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: A comment that will appear in the project's comment section explaining
|
|
the reason behind the freezing.
|
|
example: Project link frozen due to some important reason.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=lock":
|
|
post:
|
|
summary: Locks the project.
|
|
description: Locks the project given as parameter. You can pass a comment with
|
|
the reason of the lock.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment that can be added to describe the reasoning behind the
|
|
lock.
|
|
example: Locked project beacause A, B and C.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'403':
|
|
description: |
|
|
No permission to execute command 'lock' because the project is already locked or
|
|
because the user do not have permission to modify the project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'lock'.
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=modifychannels":
|
|
post:
|
|
summary: Modify existing channels.
|
|
description: Add repositories or enable them for existing channels.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: mode
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- add_disabled
|
|
- enable_all
|
|
example: add_disabled
|
|
description: The channel will be added to the package using this mode.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_parameter
|
|
summary: Internal Server Error
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'modifychannels'
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:Admin'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=move":
|
|
post:
|
|
summary: Move all sources and binaries.
|
|
description: |
|
|
Admin permissions required and schedulers need to be stopped.
|
|
This api moves all sources and binaries from a source project (oproject) to a new project (project_name).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: oproject
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: The project you want to move. Source project.
|
|
example: home:Admin
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Project Exists:
|
|
value:
|
|
code: project_exists
|
|
summary: Target project exists already.
|
|
Move Failed:
|
|
value:
|
|
code: move_failed
|
|
summary: Move operation failed
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: Admin permissions required. STOP SCHEDULER BEFORE.
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=release":
|
|
post:
|
|
summary: Release the project.
|
|
description: Release source and binaries for a repository of the project, if
|
|
you have the permissions to do so.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: nodelay
|
|
schema:
|
|
type: string
|
|
description: If this parameter is present, do not delay the relase. If this
|
|
parameter is not present, the release will be delayed to be done later.
|
|
example: 1
|
|
- in: query
|
|
name: target_project
|
|
schema:
|
|
type: string
|
|
description: Project containing the repository targeted by the release.
|
|
example: openSUSE:Factory
|
|
- in: query
|
|
name: target_repository
|
|
schema:
|
|
type: string
|
|
description: Repository targeted by the release.
|
|
example: standard
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Repository for which source and binaries will be released.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: setrelease
|
|
schema:
|
|
type: string
|
|
description: If this parameter is present, the release will be tagged with
|
|
this parameter's value.
|
|
example: Beta1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=remove_flag":
|
|
post:
|
|
summary: Delete a flag for the project.
|
|
description: |
|
|
For the project, you can delete a flag with the provided flag name, repository and architecture.
|
|
You can only delete the flag if you have the permissions to do so.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: flag
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Name of the flag to be deleted
|
|
example: access
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Repository for which the flag is set
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Architecture for which the flag is set
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
missing_parameter:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter flag missing.
|
|
summary: Missing Parameter
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'remove_flag'.
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=set_flag":
|
|
post:
|
|
summary: Set a flag for the project.
|
|
description: |
|
|
For the project, you can set a flag with the provided flag name, status, repository and architecture.
|
|
You can only set the flag if you have the permissions to do so.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: flag
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Name of the flag to be set
|
|
example: access
|
|
- in: query
|
|
name: status
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Status of the flag to be set
|
|
example: disable
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Repository for which the flag is to be set
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Architecture for which the flag is to be set
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
missing_parameter_flag:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter flag missing.
|
|
summary: Missing Parameter flag
|
|
missing_parameter_status:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter status missing.
|
|
summary: Missing Parameter status
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'set_flag'.
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=showlinked":
|
|
post:
|
|
summary: List projects linking to the provided project.
|
|
description: Return a list of projects linking to the provided project. This
|
|
command doesn't perform any action.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: project
|
|
xml:
|
|
name: collection
|
|
wrapped: true
|
|
examples:
|
|
no_results:
|
|
summary: No results
|
|
value: |
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<collection/>
|
|
one_result:
|
|
summary: One result
|
|
value:
|
|
- name: OBS:Server:Unstable:Containers:ruby2.7
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=undelete":
|
|
post:
|
|
summary: Restore a deleted project.
|
|
description: |
|
|
If the given project was previously deleted, you can restore it.
|
|
You can only restore it if you have the permissions to do so.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'undelete'.
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not deleted project:
|
|
value:
|
|
code: 404
|
|
summary: project 'Sandbox' already exists
|
|
description: Response when trying to "undelete" a project that was
|
|
not deleted previously.
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}?cmd=unlock":
|
|
post:
|
|
summary: Unlocks the project.
|
|
description: Unlocks the previously locked project, given as parameter. You
|
|
can pass a comment with the reason of the lock.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: query
|
|
name: comment
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Comment that should be added to describe the reasoning behind
|
|
the unlock.
|
|
example: Unlocked project beacause A, B and C.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
missing_parameter:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter comment missing.
|
|
summary: Missing Parameter
|
|
not_locked:
|
|
value:
|
|
code: not_locked
|
|
summary: project 'Sandbox' is not locked.
|
|
summary: Not Locked
|
|
'403':
|
|
description: No permission to execute command 'unlock' because the user
|
|
do not have permission to modify the project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'unlock'.
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Projects
|
|
"/source/{project_name}/{package_name}":
|
|
get:
|
|
summary: List source files of a package.
|
|
description: Get a list of source files belonging to a package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: deleted
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Set to `1` to list source files of deleted packages.
|
|
|
|
Return a "Bad Request" error (400) if it is set to `1` and the package exists.
|
|
example: 1
|
|
- in: query
|
|
name: expand
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Expand links.
|
|
example: 1
|
|
- in: query
|
|
name: extension
|
|
schema:
|
|
type: string
|
|
description: List source files with the given extension.
|
|
example: txt
|
|
- in: query
|
|
name: lastworking
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Show sources of the last mergeable sources in case of conflicting
|
|
changes.
|
|
example: 1
|
|
- in: query
|
|
name: linkrev
|
|
schema:
|
|
type: string
|
|
description: Show sources of the specified linked revision in the base package.
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to show only the metadata file (`_meta`) in the list
|
|
of files.
|
|
example: 1
|
|
- in: query
|
|
name: product
|
|
schema:
|
|
type: string
|
|
description: Use with `view=products`. Limit the product view to a given product.
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Show sources of the specified revision.
|
|
example: 42
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- cpio
|
|
- getmultibuild
|
|
- info
|
|
- issues
|
|
- products
|
|
- productrepositories
|
|
description: |
|
|
Specify which information about a package should be returned.
|
|
|
|
* `cpio`: Stream all package files as cpio.
|
|
* `getmultibuild`: List multibuild packages.
|
|
* `info`: Show source version, md5sums and build description files, among other information.
|
|
See this [other endpoint](<#/Sources - Packages/get_source__project_name___package_name__view_info>) for details.
|
|
* `issues`: Show all tracked issues for this package.
|
|
* `products`: Show all products of a package (works only on `_product` or `000product` packages).
|
|
* `productrepositories`: Show all repositories used in product definitions (or a given product).
|
|
example: issues
|
|
- in: query
|
|
name: withlinked
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to show all used packages (in case of multiple link
|
|
indirections) in linkinfo information.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [directory.xsd](../schema/directory.xsd). This schema is not used in the following cases:
|
|
* view=cpio
|
|
* view=issues
|
|
* view=products
|
|
* view=productrepositories
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
examples:
|
|
Without Any Parameters:
|
|
value:
|
|
name: package_1
|
|
rev: 4
|
|
vrev: 4
|
|
srcmd5: 2e276a9a18eb1f4e6d1187d456c9335d
|
|
entry:
|
|
- name: _config
|
|
md5: 38a56fe6747ddc35214cb2ace161496f
|
|
size: 59
|
|
mtime: 1677507657
|
|
- name: somefile.txt
|
|
md5: 8680db994e398a1542c6fd05ee7f9fef
|
|
size: 55
|
|
mtime: 1677507647
|
|
With Parameter meta=1:
|
|
value:
|
|
name: package_1
|
|
rev: 4
|
|
vrev: 4
|
|
srcmd5: 2e276a9a18eb1f4e6d1187d456c9335d
|
|
entry:
|
|
- name: _meta
|
|
md5: 6742b7fc375300ce04e56819a1a52f64
|
|
size: 181
|
|
mtime: 1678724165
|
|
With Parameter view=getmultibuild:
|
|
value:
|
|
entry:
|
|
- name: obs-bundled-gems
|
|
- name: obs-api-testsuite-rspec
|
|
With Parameter view=issues:
|
|
value: |
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<package project="project_1" name="package_1">
|
|
<issue change="kept">
|
|
<created_at>2008-11-18 16:47:00 UTC</created_at>
|
|
<updated_at>2020-02-24 13:01:11 UTC</updated_at>
|
|
<name>446164</name>
|
|
<tracker>bnc</tracker>
|
|
<label>boo#246064</label>
|
|
<url>https://bugzilla.test.com/show_bug.cgi?id=246064</url>
|
|
<state>CLOSED</state>
|
|
<summary>AUDIT-0: obs-server: /usr/bin/sign</summary>
|
|
<owner>
|
|
<login>user_1</login>
|
|
<email>user_1@test.com</email>
|
|
<realname>John Doe</realname>
|
|
</owner>
|
|
</issue>
|
|
</package>
|
|
With Parameter view=products:
|
|
value: |
|
|
<productlist>
|
|
<productdefinition xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
<products>
|
|
<product>
|
|
<vendor>openSUSE</vendor>
|
|
<name>openSUSE</name>
|
|
<version>20230315</version>
|
|
<release>0</release>
|
|
<productline>openSUSE</productline>
|
|
<register>
|
|
<updates>
|
|
<distrotarget arch="x86_64">openSUSE-Tumbleweed-x86_64</distrotarget>
|
|
<distrotarget arch="s390x">openSUSE-Tumbleweed-s390x</distrotarget>
|
|
<distrotarget arch="ppc64le">openSUSE-Tumbleweed-ppc64le</distrotarget>
|
|
<distrotarget arch="aarch64">openSUSE-Tumbleweed-aarch64</distrotarget>
|
|
</updates>
|
|
</register>
|
|
<updaterepokey>000000000</updaterepokey>
|
|
<summary>openSUSE Tumbleweed</summary>
|
|
<shortsummary>openSUSE</shortsummary>
|
|
<description>openSUSE Tumbleweed is the rolling distribution by the openSUSE.org project.</description>
|
|
<linguas>
|
|
<language>cs</language>
|
|
<language>da</language>
|
|
</linguas>
|
|
<urls>
|
|
<url name="releasenotes">http://doc.opensuse.org/release-notes/x86_64/openSUSE/Tumbleweed/release-notes-openSUSE.rpm</url>
|
|
<url name="repository">http://download.opensuse.org/tumbleweed/repo/oss/</url>
|
|
</urls>
|
|
<buildconfig>
|
|
<producttheme>openSUSE</producttheme>
|
|
<create_flavors>true</create_flavors>
|
|
</buildconfig>
|
|
<installconfig>
|
|
<defaultlang>en_US</defaultlang>
|
|
<default_obs_repository_name>openSUSE_Tumbleweed</default_obs_repository_name>
|
|
<releasepackage name="openSUSE-release" flag="EQ" version="%{version}"/>
|
|
<distribution>openSUSE</distribution>
|
|
</installconfig>
|
|
<runtimeconfig/>
|
|
</product>
|
|
</products>
|
|
<conditionals>
|
|
<conditional name="baselibs_only_x86_64">
|
|
<platform onlyarch="x86_64"/>
|
|
</conditional>
|
|
<conditional name="baselibs_hammer_from_i686">
|
|
<platform arch="x86_64" baselibs_arch="i686"/>
|
|
</conditional>
|
|
</conditionals>
|
|
<repositories>
|
|
<repository path="obsrepositories:/"/>
|
|
</repositories>
|
|
<archsets>
|
|
<archset name="i586" productarch="i586">
|
|
<arch>i586</arch>
|
|
<arch>i686</arch>
|
|
<arch>noarch</arch>
|
|
</archset>
|
|
<archset name="i686" productarch="i686">
|
|
<arch>i686</arch>
|
|
<arch>i586</arch>
|
|
<arch>i486</arch>
|
|
<arch>i386</arch>
|
|
<arch>noarch</arch>
|
|
</archset>
|
|
</archsets>
|
|
</productdefinition>
|
|
</productlist>
|
|
With Parameter view=productrepositories:
|
|
value: |
|
|
<productrepositories>
|
|
<product name="MicroOS">
|
|
</product>
|
|
<product name="openSUSE-Addon-NonOss">
|
|
</product>
|
|
<product name="openSUSE">
|
|
<distrotarget arch="x86_64">openSUSE-Tumbleweed-x86_64</distrotarget>
|
|
<distrotarget arch="s390x">openSUSE-Tumbleweed-s390x</distrotarget>
|
|
<distrotarget arch="ppc64le">openSUSE-Tumbleweed-ppc64le</distrotarget>
|
|
<distrotarget arch="aarch64">openSUSE-Tumbleweed-aarch64</distrotarget>
|
|
</product>
|
|
</productrepositories>
|
|
application/x-cpio:
|
|
schema:
|
|
type: string
|
|
examples:
|
|
With Parameter view=cpio:
|
|
value: |
|
|
07070100000000000081a40000000000000000000000015331456900000135000000000000000000000000000000000000000d00000000_constraints<constraints>
|
|
<overwrite>
|
|
<conditions>
|
|
<package>obs-server</package>
|
|
</conditions>
|
|
|
|
<hardware>
|
|
<memory>
|
|
<size unit="M">2000</size>
|
|
</memory>
|
|
<physicalmemory>
|
|
<size unit="M">1500</size>
|
|
</physicalmemory>
|
|
</hardware>
|
|
</overwrite>
|
|
</constraints>
|
|
07070100000000000081a40000000000000000000000015b595e440000006a000000000000000000000000000000000000000c00000000_multibuild<multibuild>
|
|
<flavor>obs-bundled-gems</flavor>
|
|
<flavor>obs-api-testsuite-rspec</flavor>
|
|
</multibuild>
|
|
07070100000000000081a40000000000000000000000016229cffc000002ec000000000000000000000000000000000000000900000000_service<?xml version="1.0"?>
|
|
<services>
|
|
<service name="obs_scm">
|
|
<param name="versionformat">2.11~alpha.%ci.%h</param>
|
|
<param name="url">https://github.com/openSUSE/open-build-service.git</param>
|
|
<param name="scm">git</param>
|
|
<param name="revision">master</param>
|
|
<param name="extract">dist/obs-api-testsuite-rspec.spec</param>
|
|
<param name="extract">dist/obs-bundled-gems.spec</param>
|
|
<param name="extract">dist/obs-server.spec</param>
|
|
<param name="extract">dist/obs-rpmlintrc</param>
|
|
</service>
|
|
<service name="set_version"/>
|
|
<service name="tar" mode="buildtime"/>
|
|
<service name="recompress" mode="buildtime">
|
|
<param name="compression">xz</param>
|
|
<param name="file">*.tar</param>
|
|
</service>
|
|
</services>
|
|
07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `meta`,
|
|
for example.
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
With deleted=1 and Package exists:
|
|
description: Passing a value of `1` to `deleted`, and the package
|
|
exists.
|
|
value:
|
|
code: package_exists
|
|
summary: the package is not deleted
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Files
|
|
delete:
|
|
summary: Deletes a specified package including all its source files.
|
|
description: Deletes a specified package including all its source files. By
|
|
default only if no other packages use this package as a devel package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment to be included in the revision history of the package.
|
|
example: This package was no longer needed.
|
|
- in: query
|
|
name: force
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to delete this package, even if other packages use
|
|
this one as devel package.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Delete Error:
|
|
value:
|
|
code: delete_error
|
|
summary: 'Package is used by following packages as devel package:
|
|
project_devel/ctris'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}/_attribute":
|
|
get:
|
|
summary: List the attibutes of a package
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- name: rev
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: 'Passing the number of the revision, this endpoint displays the
|
|
attributes'' XML as it was at that point.
|
|
|
|
'
|
|
example: 3
|
|
- name: view
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- blame
|
|
description: With `view=blame`, information about who changed each XML tag
|
|
and when is displayed.
|
|
example: blame
|
|
- name: with_default
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If the attribute doesn't contain any value and `with_default` is present,
|
|
the default values will be displayed, if any.
|
|
example: 1
|
|
- name: with_project
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: 'Passing `with_project`, the response displays the attributes
|
|
of the package''s project in addition to the package ones.
|
|
|
|
'
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
examples:
|
|
manyAttributes:
|
|
value:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
- name: ScreenShots
|
|
namespace: OBS
|
|
viewBlame:
|
|
description: Passing `view=blame`.
|
|
value: |
|
|
10 (Admin 2023-03-09 11:46:01 1) <attributes>
|
|
12 (Iggy 2023-03-13 14:46:01 5) <attribute namespace="OBS" name="MakeOriginOlder"/>
|
|
14 (Admin 2023-03-13 15:14:21 6) <attribute namespace="OBS" name="QualityCategory">
|
|
14 (Admin 2023-03-13 15:14:21 7) <value>Development</value>
|
|
14 (Admin 2023-03-13 15:14:21 8) </attribute>
|
|
10 (Admin 2023-03-09 11:46:01 9) </attributes>
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
remoteProject:
|
|
value:
|
|
code: remote_project
|
|
summary: Attribute access to remote project is not yet supported
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
post:
|
|
summary: Create or update the package's attribute given in the request body
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: Attribute you want to create or update
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
example:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
description: Wrong attribute name.
|
|
value:
|
|
code: invalid_attribute
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
invalid_xml:
|
|
description: When not passing an XML body to the requset.
|
|
value:
|
|
code: invalid_xml
|
|
summary: Invalid XML
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}/_attribute/{attribute_name}":
|
|
get:
|
|
summary: Get package's attribute
|
|
description: Get the specified attribute of the package
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
- name: rev
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: 'Passing the number of the revision, this endpoint displays the
|
|
attributes'' XML as it was at that point.
|
|
|
|
'
|
|
example: 3
|
|
- name: view
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- blame
|
|
description: With `view=blame`, information about who changed each XML tag
|
|
and when is displayed.
|
|
example: blame
|
|
- name: with_default
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If the attribute doesn't contain any value and `with_default` is present,
|
|
the default values will be displayed, if any.
|
|
example: 1
|
|
- name: with_project
|
|
in: query
|
|
schema:
|
|
type: string
|
|
description: 'Passing `with_project`, the response displays the specified
|
|
attribute of the package''s project, if any, in addition to the package
|
|
one.
|
|
|
|
'
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
examples:
|
|
oneAttribute:
|
|
value:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
viewBlame:
|
|
description: Passing `view=blame`.
|
|
value: |
|
|
10 (Admin 2023-03-09 11:46:01 1) <attributes>
|
|
12 (Iggy 2023-03-13 14:46:01 5) <attribute namespace="OBS" name="MakeOriginOlder"/>
|
|
14 (Admin 2023-03-13 15:14:21 6) <attribute namespace="OBS" name="QualityCategory">
|
|
14 (Admin 2023-03-13 15:14:21 7) <value>Development</value>
|
|
14 (Admin 2023-03-13 15:14:21 8) </attribute>
|
|
10 (Admin 2023-03-09 11:46:01 9) </attributes>
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
description: Wrong attribute name.
|
|
value:
|
|
code: invalid_attribute
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Packages
|
|
post:
|
|
summary: Create or update an attribute of a package
|
|
description: Create or update the specified attribute of the package
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
requestBody:
|
|
description: Attribute you want to create or update
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
example:
|
|
- name: MaintenanceProject
|
|
namespace: OBS
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
description: Wrong attribute name.
|
|
value:
|
|
code: invalid_attribute
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
invalid_xml:
|
|
description: When not passing an XML body to the requset.
|
|
value:
|
|
code: invalid_xml
|
|
summary: Invalid XML
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
delete:
|
|
summary: Delete the specified attribute of a package
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
description: Wrong attribute name.
|
|
value:
|
|
code: invalid_attribute
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: The user don't have permission to delete the specified attribute
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
change_attribute_no_permission:
|
|
value:
|
|
code: change_attribute_no_permission
|
|
summary: User Iggy has no permission to change attribute
|
|
'404':
|
|
description: Unknown attribute
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
unknown_attribute_type:
|
|
value:
|
|
code: unknown_attribute_type
|
|
summary: Attribute Type OBS:Fake does not exist
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}/_history":
|
|
get:
|
|
summary: Get package commit history.
|
|
description: Get package commit history.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: deleted
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to allow to retrieve the revision history of a deleted
|
|
package.
|
|
example: 1
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Limit the number of retrieved revision history elements to the
|
|
specified number.
|
|
example: 20
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to retrieve the revision history of the meta file
|
|
(`_meta`) of the package.
|
|
example: 1
|
|
- in: query
|
|
name: startbefore
|
|
schema:
|
|
type: integer
|
|
description: Start the list of revision history elements before the given
|
|
revision number.
|
|
example: 124
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Return the revision entry for a specific revision number.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [revisionlist.rng](../schema/revisionlist.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
xml:
|
|
name: revisionlist
|
|
wrapped: true
|
|
examples:
|
|
Two Revisions:
|
|
value:
|
|
- rev: 1
|
|
vrev: ''
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: ''
|
|
time: 1678364228
|
|
user: Admin
|
|
comment: package was deleted
|
|
- rev: 2
|
|
vrev: ''
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: ''
|
|
time: 1678364246
|
|
user: Admin
|
|
comment: package was undeleted
|
|
rev Parameter Specified (rev = 1):
|
|
value:
|
|
- rev: 1
|
|
vrev: ''
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: ''
|
|
time: 1678364228
|
|
user: Admin
|
|
comment: package was deleted
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}/_meta":
|
|
get:
|
|
summary: Get package meta file.
|
|
description: Get package meta file.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: string
|
|
description: Set to `1` to force to retrieve the package metadata from the
|
|
backend.
|
|
example: 1
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Return the package metadata for a specific revision number.
|
|
example: 42
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- blame
|
|
description: With `view=blame` show information about who and when each line
|
|
of the package metadata was changed.
|
|
example: blame
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
devel:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
examples:
|
|
Simple Request:
|
|
value:
|
|
name: package_1
|
|
title: ''
|
|
description: Test package
|
|
devel:
|
|
project: home:Admin
|
|
package: package_2
|
|
Request with view=blame:
|
|
value: |
|
|
11 (Admin 2023-03-09 12:14:58 1) <package name="package_1" project="home:Admin">
|
|
12 (Admin 2023-03-09 12:23:11 2) <title></title>
|
|
63 (Admin 2023-03-13 16:16:05 3) <description>Description 2 added...</description>
|
|
44 (Admin 2023-03-09 17:39:39 4) <devel project="home:Admin" package="package_2"/>
|
|
11 (Admin 2023-03-09 12:14:58 5) </package>
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Bad Revision:
|
|
description: Passing `rev=invalid_revision`.
|
|
value:
|
|
code: 400
|
|
summary: bad revision 'invalid_revision'
|
|
Not Boolean:
|
|
description: Passing `meta=not_boolean`.
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
Unknown View:
|
|
description: Passing `view=invalid_view`.
|
|
value:
|
|
code: 400
|
|
summary: unknown view 'invalid_view'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
Unknown Revision:
|
|
value:
|
|
code: 404
|
|
summary: revision '66' does not exist
|
|
details: 404 revision '66' does not exist
|
|
tags:
|
|
- Sources - Packages
|
|
put:
|
|
summary: Write package meta file.
|
|
description: Write package's meta file. Create the package if it doesn't exist.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment that explains the changes you made in the meta file.
|
|
example: Fix the title of the package.
|
|
requestBody:
|
|
description: Package meta definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
title:
|
|
type: string
|
|
description:
|
|
type: string
|
|
devel:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
example:
|
|
name: package_1
|
|
title: ''
|
|
description: Test package
|
|
devel:
|
|
project: home:Admin
|
|
package: package_2
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
XML Not Valid:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'package validation error: 1:11: FATAL: Extra content
|
|
at the end of the document'
|
|
Project Name Mismatch:
|
|
value:
|
|
code: project_name_mismatch
|
|
summary: project name in xml data does not match resource path
|
|
component
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Authorized to Update the Project:
|
|
value:
|
|
code: update_project_not_authorized
|
|
summary: You are not authorized to update this project
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=addcontainers":
|
|
post:
|
|
summary: Add docker container packages and repositories
|
|
description: Add docker container packages and repositories using the maintained
|
|
version of this package
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: cmd
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- addcontainers
|
|
- in: query
|
|
name: extend_package_names
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
example: 1
|
|
description: |
|
|
Set to consider the container name as a parsed combination of container project and container name.
|
|
With format `[container name].[container project name]` where `:` was replaced by `_`,
|
|
i.e. "kiwi-templates-Minimal.SUSE_Templates_Images_SLE-15-SP4".
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=branch":
|
|
post:
|
|
summary: Branch a package.
|
|
description: |
|
|
Create a source link from a package of an existing project to a
|
|
new subproject of the requester's home project.
|
|
The default target is `home:<user>:branches:<project>/<package>`.
|
|
A possible defined devel project in the package meta data gets ignored.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: target_project
|
|
schema:
|
|
type: string
|
|
description: Target project name.
|
|
example: home:Admin:subproject
|
|
- in: query
|
|
name: target_package
|
|
schema:
|
|
type: string
|
|
description: Target package name.
|
|
example: test
|
|
- in: query
|
|
name: add_repositories
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to add repositories based on source project (default for
|
|
new projects).
|
|
- in: query
|
|
name: add_repositories_rebuild
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- transitive
|
|
- direct
|
|
- local
|
|
- copy
|
|
description: Set one of the defined rebuild policies for new repositories
|
|
(`transitive`, `direct` or `local`) or copy it from the source project (`copy`)
|
|
- in: query
|
|
name: add_repositories_block
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- all
|
|
- local
|
|
- never
|
|
description: Set to use defined block policy for new repositories.
|
|
- in: query
|
|
name: autocleanup
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to enable autocleanup on the branched project.
|
|
- in: query
|
|
name: dryrun
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to run without making action, just report results.
|
|
- in: query
|
|
name: extend_package_names
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to extend package and repository names to allow multiple
|
|
instances of the same package.
|
|
- in: query
|
|
name: ignoredevel
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to ignore validation and resolving of devel package or devel
|
|
project definition.
|
|
- in: query
|
|
name: force
|
|
schema:
|
|
type: string
|
|
description: 'Set to 1 to allow overwriting of a pre-existing package.
|
|
|
|
'
|
|
example: 1
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Set to branch against a specific revision.
|
|
- in: query
|
|
name: maintenance
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to explicitly ask for a maintenance branch.
|
|
- in: query
|
|
name: missingok
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to create the target package if it does not exist.
|
|
- in: query
|
|
name: newinstance
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to have the target package exist only via project links,
|
|
but the link should point to the given project.
|
|
- in: query
|
|
name: noaccess
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to make the newly created project be read protected. This
|
|
won't work if the project already exists.
|
|
- in: query
|
|
name: noservice
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to not run source services on branching.
|
|
- in: query
|
|
name: request
|
|
schema:
|
|
type: string
|
|
description: Creates a branch project based on the provided request number.
|
|
- in: query
|
|
name: update_path_elements
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to update all the path elements if needed (used repositories
|
|
depend on each other).
|
|
- in: query
|
|
name: update_project_attribute
|
|
schema:
|
|
type: string
|
|
default: OBS:UpdateProject
|
|
description: Set a different Update Project attribute.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example: |
|
|
<status code="ok">
|
|
<summary>Ok</summary>
|
|
<data name="targetproject">home:Admin:subproject</data>
|
|
<data name="targetpackage">test</data>
|
|
<data name="sourceproject">home:Admin</data>
|
|
<data name="sourcepackage">ctris</data>
|
|
</status>
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Double Branch:
|
|
value:
|
|
code: double_branch_package
|
|
summary: 'branch target package already exists: home:Admin:subproject/test'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=collectbuildenv":
|
|
post:
|
|
summary: Collect build environment information.
|
|
description: |
|
|
Creates _buildenv files based on origin package builds. This can be used
|
|
to re-use exact older build enviroment even when further new binary packages
|
|
got added. For example to re-build an old maintenance update in the same way.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: oproject
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Origin project. The project that the Origin Package will have
|
|
the build information copied from.
|
|
- in: query
|
|
name: opackage
|
|
schema:
|
|
type: string
|
|
description: Origin package. Build environment information of the package
|
|
that will be copied.
|
|
- in: query
|
|
name: orev
|
|
schema:
|
|
type: string
|
|
description: Origin package revision. Revision of the Origin Package on which
|
|
to base the build environment collection.
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment for the new revision.
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
examples:
|
|
Copy:
|
|
value:
|
|
rev: 3
|
|
vrev: 3
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
version: 20220902.37b45c2
|
|
time: 1678785078
|
|
user: Admin
|
|
comment: Copying the build environment from origin
|
|
requestid:
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Missing Parameter:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter opackage missing
|
|
Bad Revision:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: bad revision '-3'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=commit":
|
|
post:
|
|
summary: Commit package changes.
|
|
description: Create a new revision of the package, committing package changes.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Provide a comment to the revision in history.
|
|
example: This was changed to improve foobar.
|
|
- in: query
|
|
name: linkrev
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Link revision in base package. Set to `base` to use the commit revision.
|
|
|
|
Used together with the `keeplink` parameter.
|
|
example: base
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Revision of the package.
|
|
- in: query
|
|
name: keeplink
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to preserve the link (`_link` file) on the source.
|
|
example: 1
|
|
- in: query
|
|
name: repairlink
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: |
|
|
Set to `1` to solve conflicts.
|
|
|
|
Used together with `keeplink` parameter.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. Revision created with this commit.
|
|
content:
|
|
text/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
example:
|
|
rev: 86
|
|
vrev: 86
|
|
srcmd5: 55452f7326fe90cb67ca96bf9e9ffabc
|
|
version: 2.10~pre
|
|
time: 1665060711
|
|
user: Admin
|
|
comment:
|
|
requestid:
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `keeplink`,
|
|
for example.
|
|
value: |
|
|
<xml version="1.0" encoding="UTF-8"?>
|
|
<status code="400" origin="backend">
|
|
<summary>not boolean</summary>
|
|
</status>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=commitfilelist":
|
|
post:
|
|
summary: Commit package changes from a filelist.
|
|
description: |
|
|
Create a new commit using defined files already uploaded to the repository.
|
|
|
|
This requires a directory xml providing file name and md5 as body.
|
|
It is recommended to use the `withvalidate` parameter and add the
|
|
sha256 sum including "sha256:" prefix in "hash" attribute for security reasons.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Provide a comment to the revision
|
|
example: This was changed to improve foobar.
|
|
- in: query
|
|
name: linkrev
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Link revision in base package. Set to `base` to use the commit revision.
|
|
|
|
Used together with the `keeplink` parameter.
|
|
example: base
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Revision of the package.
|
|
- in: query
|
|
name: keeplink
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to preserve the link (`_link` file) on the source.
|
|
example: 1
|
|
- in: query
|
|
name: repairlink
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: |
|
|
Set to `1` to solve conflicts.
|
|
|
|
Used together with `keeplink` parameter.
|
|
example: 1
|
|
- in: query
|
|
name: withvalidate
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to activate sha validation code (optional, but recommended)
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. Revision created with this commit.
|
|
content:
|
|
text/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
example:
|
|
rev: 86
|
|
vrev: 86
|
|
srcmd5: 55452f7326fe90cb67ca96bf9e9ffabc
|
|
version: 2.10~pre
|
|
time: 1665060711
|
|
user: Admin
|
|
comment:
|
|
requestid:
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `keeplink`,
|
|
for example.
|
|
value: |
|
|
<xml version="1.0" encoding="UTF-8"?>
|
|
<status code="400" origin="backend">
|
|
<summary>not boolean</summary>
|
|
</status>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=copy":
|
|
post:
|
|
summary: Copy packages.
|
|
description: "Copy packages. \nAdditionally you can copy the binaries and/or
|
|
the commit history.\nThe copy can be done synchronously or asynchronously.\nYou
|
|
can leave a comment in the package revision.\n"
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- upload
|
|
- repository
|
|
example: repository
|
|
- in: query
|
|
name: opackage
|
|
schema:
|
|
type: string
|
|
description: Origin package. The package that will be copied.
|
|
- in: query
|
|
name: oproject
|
|
schema:
|
|
type: string
|
|
description: Origin project. The project that the Origin Package will be copied
|
|
from.
|
|
- in: query
|
|
name: withbinaries
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to '1' to copy binaries that have been build by the origin
|
|
package too.
|
|
- in: query
|
|
name: makeolder
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to '1' to make the target older, the source vrev is bumped
|
|
by two numbers and target by one. Setting both makeolder and makeoriginolder
|
|
will return an error back.
|
|
- in: query
|
|
name: makeoriginolder
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to '1' to make the origin older, the source vrev is extended
|
|
and target is guaranteed to be newer. Setting both makeoriginolder and makeolder
|
|
will return an error back.
|
|
- in: query
|
|
name: nodelay
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to '1' to do the copying synchronously. By default the copying
|
|
is done asynchronously.
|
|
- in: query
|
|
name: withhistory
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to '1' to copy the package commit history.
|
|
- in: query
|
|
name: noservice
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to '1' to avoid running the services after the copy.
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Comment for the new revision.
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
wrapped: true
|
|
examples:
|
|
Repository:
|
|
value:
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
Upload:
|
|
value:
|
|
srcmd5: d41d8cd98f00b204e9800998ecf8427e
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=createSpecFileTemplate":
|
|
post:
|
|
deprecated: true
|
|
summary: Create a RPM Spec File Template for a specified package.
|
|
description: |
|
|
Create a RPM Spec File Template for a specified package. This endpoint
|
|
is broken and will be removed.
|
|
See [https://github.com/openSUSE/open-build-service/issues/9707](https://github.com/openSUSE/open-build-service/issues/9707)
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=deleteuploadrev":
|
|
post:
|
|
summary: Delete all uploaded sources which are not committed yet.
|
|
description: Removes all changes made to the upload revision and reverts to
|
|
last committed revision
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package ctris in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=diff":
|
|
post:
|
|
summary: Returns the source diff of a package.
|
|
description: |
|
|
Without parameters, return the diff of the last change made to the package.
|
|
Despite using the method `POST`, this endpoint doesn't alter any data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: cacheonly
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: |
|
|
Set to `1` to retrieve a diff only if the diff is already cached.
|
|
|
|
If the diff is not cached return a 412 "Precondition failed" error.
|
|
example: 1
|
|
- in: query
|
|
name: expand
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to expand any link before diffing.
|
|
example: 1
|
|
- in: query
|
|
name: file
|
|
schema:
|
|
type: string
|
|
description: Limit diff to the given file name.
|
|
example: hello_world.spec
|
|
deprecated: true
|
|
- in: query
|
|
name: file[]
|
|
schema:
|
|
type: array
|
|
elements:
|
|
type: string
|
|
description: Limit diff to the given file names.
|
|
example:
|
|
- hello_world.spec
|
|
- my_program.c
|
|
- in: query
|
|
name: filelimit
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Limit the size of the diff to this amount of lines.
|
|
|
|
By default it takes a built-in value of 200.
|
|
|
|
Set to `0` to disable the limit.
|
|
example: 20
|
|
- in: query
|
|
name: linkrev
|
|
schema:
|
|
type: string
|
|
description: Link revision in base package. Set to `base` to use the commit
|
|
revision.
|
|
example: base
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to diff meta data instead of sources.
|
|
example: 1
|
|
- in: query
|
|
name: missingok
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to diff against an inexistent origin.
|
|
example: 1
|
|
- in: query
|
|
name: nodiff
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to only show changed files, and not details inside
|
|
files.
|
|
example:
|
|
- in: query
|
|
name: olinkrev
|
|
schema:
|
|
type: string
|
|
description: Link revision of the origin package.
|
|
- in: query
|
|
name: onlyissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to show no source diff, only the tracker issues and
|
|
their change state.
|
|
example: 1
|
|
- in: query
|
|
name: orev
|
|
schema:
|
|
type: string
|
|
description: Old revision.
|
|
- in: query
|
|
name: opackage
|
|
schema:
|
|
type: string
|
|
description: Old package.
|
|
- in: query
|
|
name: oproject
|
|
schema:
|
|
type: string
|
|
description: Old project.
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Revision of the package.
|
|
- in: query
|
|
name: tarlimit
|
|
schema:
|
|
type: string
|
|
description: Limit the size of the diff of tar files to this amount of lines.
|
|
example: 100
|
|
- in: query
|
|
name: unified
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: |
|
|
Set to `1` to use unified diff format. Same as setting `view=unified`.
|
|
|
|
Setting `unified` to `1` takes precedence on the setting of the `view` parameter.
|
|
|
|
See `view` parameter for details on the unified format.
|
|
example: 1
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- unified
|
|
- xml
|
|
description: |
|
|
Set the format of the diff being returned.
|
|
|
|
Don't pass the parameter for custom diff format.
|
|
|
|
Set to `unified` for unified content.
|
|
|
|
Set to `xml` for structured content in a `sourcediff` xml element.
|
|
example: unified
|
|
- in: query
|
|
name: withissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to include parsed issue tracker issues and their change
|
|
state.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
examples:
|
|
Without parameters. One character change:
|
|
description: Diff of adding an exclamation mark.
|
|
value: |2
|
|
|
|
spec files:
|
|
-----------
|
|
--- hello_world.spec
|
|
+++ hello_world.spec
|
|
@@ -13,7 +13,7 @@
|
|
%build
|
|
cat > hello_world.sh <<EOF
|
|
#!/usr/bin/bash
|
|
-echo Hello world
|
|
+echo Hello world!
|
|
EOF
|
|
|
|
%install
|
|
With view=unified:
|
|
value: |
|
|
Index: hello_world.spec
|
|
===================================================================
|
|
--- hello_world.spec (revision 2)
|
|
+++ hello_world.spec (revision 3)
|
|
@@ -13,7 +13,7 @@
|
|
%build
|
|
cat > hello_world.sh <<EOF
|
|
#!/usr/bin/bash
|
|
-echo Hello world
|
|
+echo Hello world!
|
|
EOF
|
|
|
|
%install
|
|
With view=xml:
|
|
value: |
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<sourcediff key="e27d928c027cca122f604ad5240e4fbc">
|
|
<old project="home:Admin" package="hello_world" rev="2" srcmd5="3793527d5cd7aaac8e52a8b94e3c1ffc"/>
|
|
<new project="home:Admin" package="hello_world" rev="3" srcmd5="672795214454d08abd9143893d673e38"/>
|
|
<files>
|
|
<file state="changed">
|
|
<old name="hello_world.spec" md5="dcd026ba76f1723ea8292ad13579aa84" size="463"/>
|
|
<new name="hello_world.spec" md5="40f5f87134e806a20123821a3442f176" size="464"/>
|
|
<diff lines="9">@@ -13,7 +13,7 @@
|
|
%build
|
|
cat > hello_world.sh <<EOF
|
|
#!/usr/bin/bash
|
|
-echo Hello world
|
|
+echo Hello world!
|
|
EOF
|
|
|
|
%install
|
|
</diff>
|
|
</file>
|
|
</files>
|
|
</sourcediff>
|
|
With nodiff=1:
|
|
description: Passing `nodiff=1` only shows changed files.
|
|
value: |2
|
|
|
|
spec files:
|
|
-----------
|
|
--- hello_world.spec
|
|
+++ hello_world.spec
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `nodiff`,
|
|
for example.
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
'412':
|
|
description: |
|
|
Precondition Failed
|
|
|
|
With `cacheonly=1`, and the diff is still not cached.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 412
|
|
origin: backend
|
|
summary: diff not yet in cache
|
|
details: 412 diff not yet in cache
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=fork":
|
|
post:
|
|
summary: Create a fork of a package taking the source from the scmsync parameter
|
|
description: |
|
|
Create a fork of a package taking the source from the scmsync parameter.
|
|
The target project is by default below home:<user>:branches namespace.
|
|
The target project will be setup to include the source project repository setup.
|
|
The source project must exists, the source package may not exist.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- name: scmsync
|
|
description: Checkout url for the source
|
|
in: query
|
|
required: true
|
|
schema:
|
|
type: string
|
|
- name: target_project
|
|
description: target project name, optional (default home:<user>:branches:<project>)
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- name: target_package
|
|
description: target package name
|
|
in: query
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: force
|
|
schema:
|
|
type: string
|
|
description: 'Set to 1 to allow overwriting of a pre-existing package.
|
|
|
|
'
|
|
example: 1
|
|
- name: add_repositories_rebuild
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- transitive
|
|
- direct
|
|
- local
|
|
- copy
|
|
description: Set one of the defined rebuild policies for new repositories
|
|
(`transitive`, `direct` or `local`) or copy it from the source project (`copy`)
|
|
- in: query
|
|
name: add_repositories_block
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- all
|
|
- local
|
|
- never
|
|
description: Set to use defined block policy for new repositories.
|
|
responses:
|
|
'200':
|
|
description: ok
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
data:
|
|
- home:Admin
|
|
- hello_world
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: not_found
|
|
summary: project not found
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=getprojectservices":
|
|
post:
|
|
summary: List all services related to a package.
|
|
description: |
|
|
List all services defined in the project for this package.
|
|
|
|
Despite using the method `POST`, this endpoint doesn't alter any data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: cmd
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- getprojectservices
|
|
responses:
|
|
'200':
|
|
description:
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mode:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: service
|
|
xml:
|
|
wrapped: true
|
|
name: services
|
|
example:
|
|
- name: format_spec_file
|
|
mode: localonly
|
|
- name: download_files
|
|
mode: disabled
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=instantiate":
|
|
post:
|
|
summary: Instantiate a new package through a project link.
|
|
description: |
|
|
Instantiate a new package in the specified project based on the packages inherited
|
|
through a linked project (local). The new package will be a branch of the package
|
|
that lives in the linked project unless the `makeoriginolder` parameter is provided.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: makeoriginolder
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Instead of creating a branch of the package, it will instantiate a copy
|
|
of the package and extend the `vrev` to ensure the copy represents a
|
|
newer version of the package.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 403
|
|
summary: package is already intialized here
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: openSUSE:Leap:15.0:Update/foo'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=linkdiff":
|
|
post:
|
|
summary: Return the diff of the linked package.
|
|
description: |
|
|
For a package with a link to another package, return the diff of the linked package.
|
|
|
|
Despite using the method `POST`, this endpoint doesn't alter any data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: file
|
|
schema:
|
|
type: string
|
|
description: Limit diff to the given file name.
|
|
example: hello_world.spec
|
|
deprecated: true
|
|
- in: query
|
|
name: file[]
|
|
schema:
|
|
type: array
|
|
elements:
|
|
type: string
|
|
description: Limit diff to the given file names.
|
|
example:
|
|
- hello_world.spec
|
|
- my_program.c
|
|
- in: query
|
|
name: filelimit
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Limit the size of the diff to this amount of lines.
|
|
|
|
By default it takes a built-in value of 200.
|
|
|
|
Set to `0` to disable the limit.
|
|
example: 20
|
|
- in: query
|
|
name: linkrev
|
|
schema:
|
|
type: string
|
|
description: Link revision in base package. Set to `base` to use the commit
|
|
revision.
|
|
example: base
|
|
- in: query
|
|
name: onlyissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to show no source diff, only the tracker issues and
|
|
their change state.
|
|
example: 1
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Revision of the package.
|
|
- in: query
|
|
name: tarlimit
|
|
schema:
|
|
type: string
|
|
description: Limit the size of the diff of tar files to this amount of lines.
|
|
example: 100
|
|
- in: query
|
|
name: unified
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: |
|
|
Set to `1` to use unified diff format. Same as setting `view=unified`.
|
|
|
|
Setting `unified` to `1` takes precedence on the setting of the `view` parameter.
|
|
|
|
See `view` parameter for details on the unified format.
|
|
example: 1
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- unified
|
|
- xml
|
|
description: |
|
|
Set the format of the diff being returned.
|
|
|
|
Don't pass the parameter for custom diff format.
|
|
|
|
Set to `unified` for unified content.
|
|
|
|
Set to `xml` for structured content in a `sourcediff` xml element.
|
|
example: unified
|
|
- in: query
|
|
name: withissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to include parsed issue tracker issues and their change
|
|
state.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
examples:
|
|
Without parameters. One word change:
|
|
value: |2
|
|
|
|
spec files:
|
|
-----------
|
|
--- hello_world.spec
|
|
+++ hello_world.spec
|
|
@@ -1,7 +1,7 @@
|
|
Name: hello_world
|
|
Version: 1
|
|
Release: 1
|
|
-Summary: Most simple RPM package
|
|
+Summary: Most simple RPM package branched
|
|
License: CC0-1.0
|
|
|
|
%description
|
|
With view=unified:
|
|
value: |
|
|
Index: hello_world.spec
|
|
===================================================================
|
|
--- hello_world.spec (revision d1f45c7c7b5bf91353a4ec2042cbc53c)
|
|
+++ hello_world.spec (revision f03477e1b083c6499ee2c195e3340cdf)
|
|
@@ -1,7 +1,7 @@
|
|
Name: hello_world
|
|
Version: 1
|
|
Release: 1
|
|
-Summary: Most simple RPM package
|
|
+Summary: Most simple RPM package branched
|
|
License: CC0-1.0
|
|
|
|
%description
|
|
With view=xml:
|
|
value: |
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<sourcediff key="6eac2a5a0ac0e75ba854a2569b3b24f8">
|
|
<old project="home:Admin" package="hello_world" rev="d1f45c7c7b5bf91353a4ec2042cbc53c" srcmd5="d1f45c7c7b5bf91353a4ec2042cbc53c"/>
|
|
<new project="home:Admin:branches:home:Admin" package="hello_world" rev="f03477e1b083c6499ee2c195e3340cdf" srcmd5="f03477e1b083c6499ee2c195e3340cdf"/>
|
|
<files>
|
|
<file state="changed">
|
|
<old name="hello_world.spec" md5="40f5f87134e806a20123821a3442f176" size="464"/>
|
|
<new name="hello_world.spec" md5="5729ac8ecab5452b777b4a596332a6f4" size="473"/>
|
|
<diff lines="9">@@ -1,7 +1,7 @@
|
|
Name: hello_world
|
|
Version: 1
|
|
Release: 1
|
|
-Summary: Most simple RPM package
|
|
+Summary: Most simple RPM package branched
|
|
License: CC0-1.0
|
|
|
|
%description
|
|
</diff>
|
|
</file>
|
|
</files>
|
|
</sourcediff>
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `unified`,
|
|
for example.
|
|
value: |
|
|
<xml version="1.0" encoding="UTF-8"?>
|
|
<status code="400" origin="backend">
|
|
<summary>not boolean</summary>
|
|
</status>
|
|
Not a Link:
|
|
description: The package doesn't cotain a `_link` file.
|
|
value: |
|
|
<xml version="1.0" encoding="UTF-8"?>
|
|
<status code="400" origin="backend">
|
|
<summary>not a link</summary>
|
|
</status>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=linktobranch":
|
|
post:
|
|
summary: Turn link into a branch.
|
|
description: Convert a plain source link into a full branch.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: linkrev
|
|
schema:
|
|
type: string
|
|
description: 'Link revision in base package. Set to `base` to use the commit
|
|
revision.
|
|
|
|
'
|
|
example: base
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Revision of the package.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not A Link:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: package is not a link
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=mergeservice":
|
|
post:
|
|
summary: Expand all server side generated files and adapt the _service file.
|
|
description: |
|
|
This command executes the following steps:
|
|
- Expand all server side generated files. Those are the files created by the services, starting with `_service:`.
|
|
- Modify The `_service` file:
|
|
- Preserve all those services which have the `mode` attribute set to `buildtime`.
|
|
- Remove the `_service` file only if there aren't any services with the `mode` attribute set to `buildtime`.
|
|
|
|
An example of a `_service` file, before:
|
|
```
|
|
<services>
|
|
<service name="obs_scm">
|
|
<param name="versionformat">2.11~alpha.%ci.%h</param>
|
|
<param name="url">https://github.com/openSUSE/open-build-service.git</param>
|
|
<param name="scm">git</param>
|
|
<param name="revision">master</param>
|
|
<param name="extract">dist/obs-server.spec</param>
|
|
</service>
|
|
<service name="tar" mode="buildtime"/>
|
|
<service name="recompress" mode="buildtime">
|
|
<param name="compression">xz</param>
|
|
<param name="file">*.tar</param>
|
|
</service>
|
|
</services>
|
|
```
|
|
|
|
An example of a `_service` file, after this command is run:
|
|
```
|
|
<services>
|
|
<service name="tar" mode="buildtime"/>
|
|
<service name="recompress" mode="buildtime">
|
|
<param name="compression">xz</param>
|
|
<param name="file">*.tar</param>
|
|
</service>
|
|
</services>
|
|
```
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Set a comment.
|
|
example: Merge services.
|
|
responses:
|
|
'200':
|
|
description: Revision of the merge of the service file.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
example:
|
|
rev: 8
|
|
vrev: 8
|
|
srcmd5: beb268dc9f786efaa585ac07e17fea47
|
|
version: 2.10~pre
|
|
time: 1665060711
|
|
user: Admin
|
|
comment:
|
|
requestid:
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Package Without _service file:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: package has no service
|
|
Services Running:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: service in progress
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=rebuild":
|
|
post:
|
|
deprecated: true
|
|
summary: Trigger a package rebuild.
|
|
description: |
|
|
Triggers a rebuild of the package. This endpoint
|
|
is broken and will be removed.
|
|
See [`POST /build/{project_name}?cmd=rebuild`](#/Build/post_build__project_name__cmd_rebuild).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=release":
|
|
post:
|
|
summary: Release sources and binaries of a specified package.
|
|
description: |
|
|
Release sources and binaries of the specified package. If no release target is specified through
|
|
the optional parameters, it will trigger the release for all manual release targets
|
|
set on the specified project repository definitions for the specified package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: target_project
|
|
schema:
|
|
type: string
|
|
description: |
|
|
The name of the release target project. Specify in which project the sources and
|
|
binaries are going to be released. You need to provide the `target_repository`
|
|
parameter as well.
|
|
example: OBS:Server:2.10
|
|
- in: query
|
|
name: target_repository
|
|
schema:
|
|
type: string
|
|
description: |
|
|
The name of the release target repository. Specify in which repository the sources and
|
|
binaries are going to be released. You need to provide the `target_project`
|
|
parameter as well.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: 'Limit the release to a certain repository, set on the project
|
|
repository definitions.
|
|
|
|
'
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: setrelease
|
|
schema:
|
|
type: string
|
|
description: 'If this parameter is present, the release will be tagged with
|
|
this parameter''s value.
|
|
|
|
'
|
|
example: Build8.18
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: The name of the architecture. Limit the release to a certain
|
|
architecture.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Missing Parameter:
|
|
value:
|
|
code: missing_parameter
|
|
summary: release action with specified target project needs also
|
|
"repository" and "target_repository" parameter
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to execute command 'release' for package hello_world
|
|
in project home:foo
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=remove_flag":
|
|
post:
|
|
summary: Remove a specific flag.
|
|
description: Remove a specific flag for a package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: flag
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- access
|
|
- binarydownload
|
|
- build
|
|
- debuginfo
|
|
- lock
|
|
- publish
|
|
- sourceaccess
|
|
- useforbuild
|
|
description: Name of the flag to be removed.
|
|
example: build
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Repository for which the flag is to be removed.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Architecture for which the flag is to be removed.
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Missing Parameter flag:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter flag missing
|
|
Invalid flag:
|
|
value:
|
|
code: invalid_flag
|
|
summary: 'Error: unknown flag type ''RANDOM_STRING'' not found.'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=runservice":
|
|
post:
|
|
summary: Trigger run of defined services.
|
|
description: Trigger run of defined services in the `_service` file.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Set a comment.
|
|
default: trigger service run
|
|
example: Trigger services once more.
|
|
- in: query
|
|
name: user
|
|
schema:
|
|
type: string
|
|
description: Set the user who triggers the services.
|
|
example: Iggy
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Package is _project:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: triggerservicerun does not work with _project
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
No Permission to Run Services:
|
|
value:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
No Source Service Defined:
|
|
value:
|
|
code: not_found
|
|
summary: |
|
|
<status code="404">
|
|
<summary>no source service defined!</summary>
|
|
<details>404 no source service defined!</details>
|
|
</status>
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=servicediff":
|
|
post:
|
|
summary: Return the diff of changes made by a service run.
|
|
description: |
|
|
Return the diff of changes made by a service run.
|
|
|
|
Despite using the method `POST`, this endpoint doesn't alter any data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: file
|
|
schema:
|
|
type: string
|
|
description: Limit diff to the given file name.
|
|
example: hello_world.spec
|
|
deprecated: true
|
|
- in: query
|
|
name: file[]
|
|
schema:
|
|
type: array
|
|
elements:
|
|
type: string
|
|
description: Limit diff to the given file names.
|
|
example:
|
|
- hello_world.spec
|
|
- my_program.c
|
|
- in: query
|
|
name: filelimit
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Limit the size of the diff to this amount of lines.
|
|
|
|
By default it takes a built-in value of 200.
|
|
|
|
Set to `0` to disable the limit.
|
|
example: 20
|
|
- in: query
|
|
name: onlyissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to show no source diff, only the tracker issues and
|
|
their change state.
|
|
example: 1
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: Revision of the package.
|
|
- in: query
|
|
name: tarlimit
|
|
schema:
|
|
type: string
|
|
description: Limit the size of the diff of tar files to this amount of lines.
|
|
example: 100
|
|
- in: query
|
|
name: unified
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: |
|
|
Set to `1` to use unified diff format. Same as setting `view=unified`.
|
|
|
|
Setting `unified` to `1` takes precedence on the setting of the `view` parameter.
|
|
|
|
See `view` parameter for details on the unified format.
|
|
example: 1
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- unified
|
|
- xml
|
|
description: |
|
|
Set the format of the diff being returned.
|
|
|
|
Don't pass the parameter for custom diff format.
|
|
|
|
Set to `unified` for unified content.
|
|
|
|
Set to `xml` for structured content in a `sourcediff` xml element.
|
|
example: unified
|
|
- in: query
|
|
name: withissues
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to include parsed issue tracker issues and their change
|
|
state.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
text/plain:
|
|
schema:
|
|
type: string
|
|
examples:
|
|
No Changes:
|
|
description: If the last run of services didn't change the sources,
|
|
return empty.
|
|
value: ''
|
|
Without any value for view parameter:
|
|
value: |
|
|
new:
|
|
----
|
|
_service:obs_scm:obs-api-testsuite-rspec.spec
|
|
|
|
spec files:
|
|
-----------
|
|
|
|
++++++ new spec file:
|
|
--- _service:obs_scm:obs-api-testsuite-rspec.spec
|
|
+++ _service:obs_scm:obs-api-testsuite-rspec.spec
|
|
@@ -0,0 +1,73 @@
|
|
+#
|
|
+# spec file for package obs-api-testsuite-rspec
|
|
+#
|
|
+
|
|
+
|
|
+Name: obs-api-testsuite-rspec
|
|
+Version: 2.10~pre
|
|
+Release: 0
|
|
+Summary: The Open Build Service -- RSpec test suite
|
|
+License: GPL-2.0-only OR GPL-3.0-only
|
|
+Group: Productivity/Networking/Web/Utilities
|
|
+Url: http://www.openbuildservice.org
|
|
+Source0: open-build-service-%version.tar.xz
|
|
+BuildRequires: obs-api-testsuite-deps
|
|
+# rspec specific dependencies
|
|
+BuildRequires: chromedriver
|
|
+BuildRequires: xorg-x11-fonts
|
|
+BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
+%if 0%{?disable_obs_frontend_test_suite} || 0%{?disable_obs_test_suite}
|
|
+ExclusiveArch: nothere
|
|
+%else
|
|
+ExclusiveArch: x86_64
|
|
+%endif
|
|
+
|
|
+
|
|
+%description
|
|
+Running the RSpec test suite of the OBS frontend independently
|
|
+of packaging the application
|
|
+
|
|
+%prep
|
|
+%setup -q -n open-build-service-%{version}
|
|
+
|
|
+%build
|
|
+# run in build environment
|
|
+pushd src/backend/
|
|
+rm -rf build
|
|
+ln -sf /usr/lib/build build
|
|
+popd
|
|
+
|
|
+pushd src/api
|
|
+# configure to the bundled gems
|
|
+bundle --local --path %_libdir/obs-api/
|
|
+
|
|
+./script/prepare_spec_tests.sh
|
|
+
|
|
+export RAILS_ENV=test
|
|
+bin/rake db:setup
|
|
+bin/rails assets:precompile
|
|
+
|
|
+bin/rspec -f d --exclude-pattern 'spec/db/**/*_spec.rb'
|
|
+
|
|
+# now migration tests (if they fail they create tons of follow up errors, so run them last)
|
|
+bin/rspec -f d -P 'spec/db/**/*_spec.rb'
|
|
+
|
|
+%install
|
|
+
|
|
+# no result
|
|
+%files
|
|
+
|
|
+%changelog
|
|
With view=unified:
|
|
value: |
|
|
Index: _service:obs_scm:obs-api-testsuite-rspec.spec
|
|
===================================================================
|
|
--- _service:obs_scm:obs-api-testsuite-rspec.spec (added)
|
|
+++ _service:obs_scm:obs-api-testsuite-rspec.spec (revision c63d8550ea46703ce56000277de12d1c)
|
|
@@ -0,0 +1,73 @@
|
|
+#
|
|
+# spec file for package obs-api-testsuite-rspec
|
|
+#
|
|
[...]
|
|
+%changelog
|
|
Index: _service:obs_scm:obs-server.spec
|
|
===================================================================
|
|
--- _service:obs_scm:obs-server.spec (added)
|
|
+++ _service:obs_scm:obs-server.spec (revision c63d8550ea46703ce56000277de12d1c)
|
|
@@ -0,0 +1,1120 @@
|
|
+#
|
|
+# spec file for package obs-server
|
|
[...]
|
|
+Recommends: yum yum-metadata-parser repoview dpkg
|
|
+Recommends: deb >= 1.5
|
|
(921 more lines skipped)
|
|
Index: _service:obs_scm:open-build-service-2.11~alpha.20221007T165328.9f99a31a.obscpio
|
|
===================================================================
|
|
Binary file _service:obs_scm:open-build-service-2.11~alpha.20221007T165328.9f99a31a.obscpio (revision c63d8550ea46703ce56000277de12d1c) added
|
|
Index: _service:obs_scm:open-build-service.obsinfo
|
|
===================================================================
|
|
--- _service:obs_scm:open-build-service.obsinfo (added)
|
|
+++ _service:obs_scm:open-build-service.obsinfo (revision c63d8550ea46703ce56000277de12d1c)
|
|
@@ -0,0 +1,4 @@
|
|
+name: open-build-service
|
|
+version: 2.11~alpha.20221007T165328.9f99a31a
|
|
+mtime: 1665154408
|
|
+commit: 9f99a31afe0ab435c1dd1d02be5f52fe4425b00f
|
|
text/xml:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
key: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: sourcediff
|
|
examples:
|
|
With view=xml:
|
|
value: |
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<sourcediff key="1634c0e9b7625f79874458d437a4f225">
|
|
<old project="home:Admin" package="test" rev="62be45f382bfef30d5028b3f3161d4fc" srcmd5="62be45f382bfef30d5028b3f3161d4fc"/>
|
|
<new project="home:Admin" package="test" rev="c63d8550ea46703ce56000277de12d1c" srcmd5="c63d8550ea46703ce56000277de12d1c"/>
|
|
<files>
|
|
<file state="added">
|
|
<new name="_service:obs_scm:obs-api-testsuite-rspec.spec" md5="4fab7cf67a4293a22778d2062239864c" size="2069"/>
|
|
<diff lines="74">@@ -0,0 +1,73 @@
|
|
+#
|
|
+# spec file for package obs-api-testsuite-rspec
|
|
[...]
|
|
+
|
|
+%changelog
|
|
</diff>
|
|
</file>
|
|
<file state="added">
|
|
<new name="_service:obs_scm:obs-server.spec" md5="49bbbfd13505e676cd02296094095933" size="36575"/>
|
|
<diff lines="1121" shown="200">@@ -0,0 +1,1120 @@
|
|
+#
|
|
+# spec file for package obs-server
|
|
[...]
|
|
+Recommends: yum yum-metadata-parser repoview dpkg
|
|
+Recommends: deb >= 1.5
|
|
</diff>
|
|
</file>
|
|
<file state="added">
|
|
<new name="_service:obs_scm:open-build-service-2.11~alpha.20221007T165328.9f99a31a.obscpio" md5="9f6cb81b792f4afc208d285086f3e9ec" size="96545294"/>
|
|
<diff binary="1" lines="0"></diff>
|
|
</file>
|
|
<file state="added">
|
|
<new name="_service:obs_scm:open-build-service.obsinfo" md5="7220e2c761f90c579e01ba0d3c2af25a" size="137"/>
|
|
<diff lines="5">@@ -0,0 +1,4 @@
|
|
+name: open-build-service
|
|
+version: 2.11~alpha.20221007T165328.9f99a31a
|
|
+mtime: 1665154408
|
|
+commit: 9f99a31afe0ab435c1dd1d02be5f52fe4425b00f
|
|
</diff>
|
|
</file>
|
|
</files>
|
|
</sourcediff>
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `unified`,
|
|
for example.
|
|
value: |
|
|
<xml version="1.0" encoding="UTF-8"?>
|
|
<status code="400" origin="backend">
|
|
<summary>not boolean</summary>
|
|
</status>
|
|
No Service Run:
|
|
value: |
|
|
<xml version="1.0" encoding="UTF-8"?>
|
|
<status code="400" origin="backend">
|
|
<summary>no service was run for this revision</summary>
|
|
</status>
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=set_flag":
|
|
post:
|
|
summary: Enable or disable a specific flag.
|
|
description: Enable or disable a specific flag for a package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: flag
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- access
|
|
- binarydownload
|
|
- build
|
|
- debuginfo
|
|
- lock
|
|
- publish
|
|
- sourceaccess
|
|
- useforbuild
|
|
description: Name of the flag to be set.
|
|
example: build
|
|
- in: query
|
|
name: status
|
|
required: true
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- enable
|
|
- disable
|
|
description: Status of the flag to be set.
|
|
example: enable
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Repository for which the flag is to be set.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Architecture for which the flag is to be set.
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Missing Parameter flag:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter flag missing
|
|
Missing Parameter status:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter status missing
|
|
Invalid flag:
|
|
value:
|
|
code: invalid_flag
|
|
summary: 'Error: unknown flag type ''RANDOM_STRING'' not found.'
|
|
Invalid status:
|
|
value:
|
|
code: invalid_flag
|
|
summary: 'Error: unknown status flag ''RANDOM_STRING'''
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=showlinked":
|
|
post:
|
|
summary: List all packages linking to this one.
|
|
description: List all packages linking to this one. Despite using the method
|
|
`POST`, this endpoint doesn't alter any data.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
xml:
|
|
name: collection
|
|
wrapped: true
|
|
examples:
|
|
No results:
|
|
value: |
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<collection/>
|
|
Two linked packages:
|
|
value:
|
|
- name: hello_world
|
|
project: home:Admin:branches:home:Admin
|
|
- name: hello_world2
|
|
project: home:Admin:branches:home:Admin
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=undelete":
|
|
post:
|
|
summary: Undelete the package.
|
|
description: Undelete the package.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: Set a comment.
|
|
default: package was undeleted
|
|
example: The package was removed by mistake. Undeleting.
|
|
- in: query
|
|
name: time
|
|
schema:
|
|
type: integer
|
|
description: |
|
|
Set the time of the undelete operation, expressed in seconds since the epoch.
|
|
|
|
Set to `1` to set the time of the undelete operation to the same time the package was deleted.
|
|
examples:
|
|
Seconds Since Epoch:
|
|
value: 1664912989
|
|
Same as Delete Time:
|
|
value: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Package Exists:
|
|
value:
|
|
code: package_exists
|
|
summary: the package exists already home:Admin hello_world
|
|
Time is Not a Number:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: 'not a number: ''RANDOM_STRING'''
|
|
Time is Less than Time in Last Commit:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: specified time is less than time in last commit
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Package Was Not Deleted:
|
|
value:
|
|
code: 403
|
|
summary: package 'hello_world' was not deleted
|
|
details: 403 package 'hello_world' was not deleted
|
|
No Permission to Create Package:
|
|
value:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to create package in project home:Admin
|
|
No Permission to Set the Time:
|
|
value:
|
|
code: cmd_execution_no_permission
|
|
summary: Only administrators are allowed to set the time
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=unlock":
|
|
post:
|
|
summary: Unlock a locked package.
|
|
description: Unlock a locked package (`<lock><enable/></lock>` flag present
|
|
in the package `_meta` file).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: comment
|
|
required: true
|
|
schema:
|
|
type: string
|
|
description: Comment to be included in the revision history of the `_meta`
|
|
file
|
|
example: Locking the package is no longer needed
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Missing Parameter:
|
|
value:
|
|
code: missing_parameter
|
|
summary: Required Parameter comment missing
|
|
Not locked:
|
|
value:
|
|
code: not_locked
|
|
summary: package 'home:Foo/hello_world' is not locked
|
|
'403':
|
|
description: Forbidden
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package ruby in project home:Foo
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: openSUSE:Leap:15.0:Update/foo'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=updatepatchinfo":
|
|
post:
|
|
summary: Update the issues listed in the `_patchinfo` file of a specified package.
|
|
description: |
|
|
Update the issues listed in the `_patchinfo` file of a specified package, based on
|
|
infos available through the issue trackers.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package patchinfo in project openSUSE:Maintenance:123
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?cmd=waitservice":
|
|
post:
|
|
summary: Return when the last run of defined services has finished.
|
|
description: |
|
|
Return an `Ok` code when the last run of defined services in the `_service` file has finished.
|
|
|
|
If a run of services is in progress, wait until all services finish.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Service Not Installed:
|
|
value:
|
|
code: 400
|
|
origin: backend
|
|
summary: " 400 remote error: /usr/lib/obs/service//set_version.service
|
|
\ No such file or directory (http://backend:5152/sourceupdate/home:Admin/obs-server?timeout=3600)"
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
No Permission to Wait for Services:
|
|
value:
|
|
code: cmd_execution_no_permission
|
|
summary: no permission to modify package test in project home:Admin
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}?view=info":
|
|
get:
|
|
summary: Show source version, md5sums and build description files of a package.
|
|
description: Show source version, md5sums and build description files of a package,
|
|
among other information.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: query
|
|
name: view
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- cpio
|
|
- getmultibuild
|
|
- info
|
|
- issues
|
|
- products
|
|
- productrepositories
|
|
description: |
|
|
Specify which information about a package should be returned.
|
|
|
|
* `info`: Show source version, md5sums and build description files, among other information.
|
|
* `cpio`, `getmultibuild`, `issues`, `products`, `productrepositories`:
|
|
See this [other endpoint](<#/Sources - Files/get_source__project_name___package_name_>) for details.
|
|
example: info
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
description: Filter by architecture name.
|
|
example: x86_64
|
|
- in: query
|
|
name: nofilename
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to prevent from showing filename elements. Shows only
|
|
the `sourceinfo` root element.
|
|
example: 1
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
description: Filter by repository name.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: parse
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to show more details, like `originproject`, `linked
|
|
package`, `name`, `version`, `release`, `subpacks`, `deps`, and `prereqs`
|
|
elements.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
verifymd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
metamd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
filename:
|
|
type: string
|
|
originproject:
|
|
type: string
|
|
linked:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
version:
|
|
type: string
|
|
release:
|
|
type: string
|
|
revtime:
|
|
type: string
|
|
error:
|
|
type: string
|
|
subpacks:
|
|
type: array
|
|
items:
|
|
type: string
|
|
deps:
|
|
type: array
|
|
items:
|
|
type: string
|
|
prereqs:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: sourceinfo
|
|
examples:
|
|
Without Any Other Parameters:
|
|
value:
|
|
package: texlive-specs-w
|
|
rev: 9f5336fcf6e4521b6a9587b02087eef9
|
|
vrev: 55
|
|
srcmd5: 9f5336fcf6e4521b6a9587b02087eef9
|
|
verifymd5: 9b49b7314f5d0dfd8002cd329e048f73
|
|
filename: texlive-specs-w.spec
|
|
originproject: openSUSE:Factory:Rings:1-MinimalX
|
|
linked:
|
|
- project: openSUSE:Factory:Rings:0-Bootstrap
|
|
package: textlive-specs-w
|
|
- project: openSUSE:Factory:Rings:1-MinimalX
|
|
package: textlive-specs-w
|
|
With Parameter nofilename=1:
|
|
value:
|
|
package: texlive-specs-w
|
|
rev: 9f5336fcf6e4521b6a9587b02087eef9
|
|
vrev: 55
|
|
srcmd5: 9f5336fcf6e4521b6a9587b02087eef9
|
|
verifymd5: 9b49b7314f5d0dfd8002cd329e048f73
|
|
originproject: openSUSE:Factory:Rings:1-MinimalX
|
|
linked:
|
|
- project: openSUSE:Factory:Rings:0-Bootstrap
|
|
package: textlive-specs-w
|
|
- project: openSUSE:Factory:Rings:1-MinimalX
|
|
package: textlive-specs-w
|
|
With Parameter parse=1:
|
|
value:
|
|
package: texlive-specs-w
|
|
rev: 9f5336fcf6e4521b6a9587b02087eef9
|
|
vrev: 55
|
|
srcmd5: 9f5336fcf6e4521b6a9587b02087eef9
|
|
verifymd5: 9b49b7314f5d0dfd8002cd329e048f73
|
|
filename: texlive-specs-w.spec
|
|
originproject: openSUSE:Factory:Rings:1-MinimalX
|
|
linked:
|
|
- project: openSUSE:Factory:Rings:0-Bootstrap
|
|
package: textlive-specs-w
|
|
- project: openSUSE:Factory:Rings:1-MinimalX
|
|
package: textlive-specs-w
|
|
name: textlive-specs-w
|
|
version: 2023
|
|
release: 0
|
|
subpacks:
|
|
- texlive-specs-w
|
|
- texlive-tablists
|
|
deps:
|
|
- texlive-kpathsea
|
|
- texlive-tie-bin
|
|
prereqs:
|
|
- texlive-filesystem
|
|
- coreutils
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Boolean:
|
|
description: Passing a value different than `0` or `1` to `parse`,
|
|
for example.
|
|
value:
|
|
code: 400
|
|
summary: not boolean
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Packages
|
|
"/source/{project_name}/{package_name}/{file_name}":
|
|
get:
|
|
summary: Read a specified source file
|
|
description: Read a specified source file and return the content
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: integer
|
|
description: Retrieve the file at a specific package revision.
|
|
example: 3
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to show meta data instead of sources.
|
|
example: 1
|
|
- in: query
|
|
name: deleted
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to 1 to retrieve a file from a deleted project or package.
|
|
example: 0
|
|
- in: query
|
|
name: expand
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to include files from linked packages.
|
|
example: 1
|
|
- name: view
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- blame
|
|
description: With `view=blame`, information about who changed the file.
|
|
example: blame
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Unknown parameter
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown parameter:
|
|
value:
|
|
code: unknown_parameter
|
|
summary: unknown parameter 'limit'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
Unknown File:
|
|
value:
|
|
code: unknown_file
|
|
summary: 'File not found: home:some_project/some_package/some_file'
|
|
tags:
|
|
- Sources - Files
|
|
delete:
|
|
summary: Deletes a specified source file of a package.
|
|
description: Deletes a specified source file of a package of a project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If set to 'upload', multiple files can be deleted in just one commit.
|
|
Delete first the files with `rev=upload`, then close the single commit by another request call with `cmd=commit`
|
|
example: upload
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to delete meta data instead of sources.
|
|
example: 1
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: A comment that will appear in the package's comment section explaining
|
|
the reason behind the deletion of the file.
|
|
example: File deleted because it is useless.
|
|
- in: query
|
|
name: keeplink
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to preserve the link (`_link` file) on the source.
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
Unknown File:
|
|
value:
|
|
code: unknown_file
|
|
summary: 'File not found: home:some_project/some_package/some_file'
|
|
tags:
|
|
- Sources - Files
|
|
put:
|
|
summary: Write a specified source file into a package.
|
|
description: Write a specified source file of a package of a project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: file_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The file name
|
|
example: ctris-0.42.1-4.1.x86_64.rpm
|
|
- in: query
|
|
name: rev
|
|
schema:
|
|
type: string
|
|
description: |
|
|
If set to 'upload', multiple files can be uploaded in just one commit.
|
|
Upload first the files with `rev=upload`, then close the single commit by another request call with `cmd=commit`
|
|
example: upload
|
|
- in: query
|
|
name: meta
|
|
schema:
|
|
type: integer
|
|
enum:
|
|
- 1
|
|
- 0
|
|
description: Set to `1` to write meta data instead of sources.
|
|
example: 1
|
|
- in: query
|
|
name: comment
|
|
schema:
|
|
type: string
|
|
description: A comment that will appear in the package's comment section explaining
|
|
the reason behind the creation of the new file.
|
|
example: Added new configuration file.
|
|
- in: query
|
|
name: keeplink
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
- 0
|
|
default: 0
|
|
description: Set to `1` to preserve the link (`_link` file) on the source.
|
|
example: 1
|
|
requestBody:
|
|
content:
|
|
plain/text:
|
|
schema:
|
|
type: string
|
|
properties:
|
|
file:
|
|
type: string
|
|
format: binary
|
|
responses:
|
|
'200':
|
|
description: Updates the artifact's file contents
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
version:
|
|
type: string
|
|
time:
|
|
type: string
|
|
user:
|
|
type: string
|
|
comment:
|
|
type: string
|
|
requestid:
|
|
type: string
|
|
xml:
|
|
name: revision
|
|
example:
|
|
rev: 28
|
|
vrev: 28
|
|
srcmd5: 2e0bd85c089953743bd30eeacf70989b
|
|
version: 1
|
|
time: 1678787266
|
|
user: Admin
|
|
comment:
|
|
requestid:
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
Unknown File:
|
|
value:
|
|
code: unknown_file
|
|
summary: 'File not found: home:some_project/some_package/some_file'
|
|
tags:
|
|
- Sources - Files
|
|
"/source/{project_name}/{package_name}/{binary_filename}/_attribute/{attribute_name}":
|
|
get:
|
|
summary: Get values of an attribute
|
|
description: Get attribute and attribute values of a given attribute and binary
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: binary_filename
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Binary filename
|
|
example: ctris-0.42.1-8.1.x86_64.rpm
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
example:
|
|
name: AllowSubmitToMaintenanceRelease
|
|
namespace: OBS
|
|
binary: Ceph
|
|
'400':
|
|
description: Bad request
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
value:
|
|
code: invalid_attribute
|
|
summary: Attribute '{attribute_name}' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
Unknown Attribute:
|
|
value:
|
|
code: unknown_attribute
|
|
summary: Attribute some_attribute does not exist
|
|
tags:
|
|
- Sources - Files
|
|
delete:
|
|
summary: Removes a specified attribute
|
|
description: Removes a specified attribute from a package
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: binary_filename
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Binary filename
|
|
example: ctris-0.42.1-8.1.x86_64.rpm
|
|
- in: path
|
|
name: attribute_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the attribute
|
|
example: OBS:OwnerRootProjectTest
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Wrong value for deleted parameter.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
invalid_attribute:
|
|
value:
|
|
code: invalid_attribute
|
|
summary: Attribute 'OwnerRootProjectTest' must be in the $NAMESPACE:$NAME
|
|
style
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
Unknown Attribute:
|
|
value:
|
|
code: unknown_attribute
|
|
summary: Attribute some_attribute does not exist
|
|
tags:
|
|
- Sources - Files
|
|
"/source/{project_name}/{package_name}/{binary_filename}/_attribute":
|
|
get:
|
|
summary: Get list of attributes and attribute values with binary parameter
|
|
description: Get a list of all attributes and their values for a given binary
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: binary_filename
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Binary filename
|
|
example: ctris-0.42.1-8.1.x86_64.rpm
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
example:
|
|
- name: AllowSubmitToMaintenanceRelease
|
|
namespace: OBS
|
|
binary: SLES-cd-DVD-x86_64
|
|
- name: OwnerRootProjectTest
|
|
namespace: OBS
|
|
binary: Ceph
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Files
|
|
post:
|
|
summary: Add an attribute
|
|
description: Add an attribute with binary to a package
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
- in: path
|
|
name: binary_filename
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Binary filename
|
|
example: ctris-0.42.1-8.1.x86_64.rpm
|
|
requestBody:
|
|
description: Attributes you want to update
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
namespace:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
binary:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: attribute
|
|
xml:
|
|
name: attributes
|
|
wrapped: true
|
|
example:
|
|
name: MaintenanceProject
|
|
namespace: OBS
|
|
binary: Ceph
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Package:
|
|
value:
|
|
code: unknown_package
|
|
summary: 'Package not found: home:some_project/some_package'
|
|
tags:
|
|
- Sources - Files
|
|
"/staging/{project_name}/backlog":
|
|
get:
|
|
summary: List the requests in the staging backlog.
|
|
description: List the requests that can be assigned to the staging project (backlog).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: List of request in the staging backlog.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
example: review
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: hello_world
|
|
xml:
|
|
attribute: true
|
|
superseded_by:
|
|
type: integer
|
|
example: 43
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
example: '2023-04-24T08:34:39Z'
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: backlog
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_without_staging_workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/excluded_requests":
|
|
get:
|
|
summary: List the requests excluded from a staging workflow.
|
|
description: List the requests excluded from the staging workflow associated
|
|
to the specified project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: List of requests that are excluded from the staging workflow
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Missing dependencies
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: excluded_requests
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_without_staging_workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
post:
|
|
summary: Exclude requests from the staging workflow.
|
|
description: Add requests to the list of excluded requests of the staging workflow
|
|
associated to the specified project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: List of requests to be excluded from the staging workflow
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Missing dependencies
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: excluded_requests
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Excluding Failed:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Excluding requests for project_name failed:'
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_without_staging_workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
delete:
|
|
summary: Delete the specified requests from the list of excluded requests.
|
|
description: Stop excluding the requests from the staging workflow.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: List of requests to stop excluding from the staging workflow
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
description:
|
|
type: string
|
|
example: Missing dependencies
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: excluded_requests
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Invalid Request:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Error while unexcluding requests: Requests with number
|
|
ID are not excluded.'
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_without_staging_workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/staged_requests":
|
|
delete:
|
|
summary: Delete requests from any of the staging projects.
|
|
description: Delete the given requests from any of the staging projects they
|
|
were staged in.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: List of requests to be deleted.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: requests
|
|
examples:
|
|
Multiple Requests:
|
|
value:
|
|
request:
|
|
- id: 1
|
|
- id: 2
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Request Not Staged:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Error while unassigning requests: Request ''ID'' is
|
|
not staged'
|
|
Request Not In Staging:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Error while unassigning requests: Requests with number:
|
|
ID don''t belong to Staging: project_name'
|
|
Unknown Request:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Error while unassigning requests: Requests with number:
|
|
212 don''t exist'
|
|
Wrong Request Number:
|
|
value:
|
|
code: invalid_request
|
|
summary: Error while parsing the numbers of the requests
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Without Staging Workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: not_found
|
|
summary: Project 'project_name' not found.
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/staging_projects":
|
|
get:
|
|
summary: List all the staging projects of a staging workflow.
|
|
description: |
|
|
List the staging projects of the staging workflow associated to the specified project.
|
|
Extra information can be requested by adding any combination of these parameters in the URL: `requests`, `status` and `history`.
|
|
- If `requests` is present, the output includes the staged, untracked and obsolete requests as well as missing reviews.
|
|
- If `status` is present, the output includes the overall state and the status xml (broken packages, missing reviews, checks, etc.)
|
|
- If `history` is present, the output includes the history of the staging project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: requests
|
|
in: query
|
|
schema:
|
|
type: string
|
|
example: 1
|
|
description: '"Set to `1` if you want to include the staged, untracked and
|
|
obsolete requests as well as missing reviews, otherwise don''t pass this
|
|
query parameter."
|
|
|
|
'
|
|
- name: status
|
|
in: query
|
|
schema:
|
|
type: string
|
|
example: 1
|
|
description: '"Set to `1` if you want to include the overall state and the
|
|
status xml (broken packages, missing reviews, checks, etc.), otherwise don''t
|
|
pass this query parameter"
|
|
|
|
'
|
|
- name: history
|
|
in: query
|
|
schema:
|
|
type: string
|
|
example: 1
|
|
description: Set to `1` if you want to include the history of the staging
|
|
project, otherwise don't pass this query parameter.
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
staging_project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
example: empty
|
|
xml:
|
|
attribute: true
|
|
staged_requests:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
untracked_requests:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
obsolete_requests:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
missing_reviews:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
building_repositories:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
broken_packages:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
checks:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
missing_checks:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
history:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: staging_project
|
|
xml:
|
|
name: staging_projects
|
|
examples:
|
|
Simple Result:
|
|
value:
|
|
staging_project:
|
|
- name: openSUSE:Factory:Staging:A
|
|
- name: openSUSE:Factory:Staging:B
|
|
Detailed Result:
|
|
value:
|
|
staging_project:
|
|
name: openSUSE:Factory:Staging:A
|
|
state: empty
|
|
staged_requests:
|
|
count: 0
|
|
untracked_requests:
|
|
count: 0
|
|
obsolete_requests:
|
|
count: 0
|
|
missing_reviews:
|
|
count: 0
|
|
building_repositories:
|
|
count: 0
|
|
broken_packages:
|
|
count: 0
|
|
checks:
|
|
count: 0
|
|
missing_checks:
|
|
count: 0
|
|
history:
|
|
count: 0
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Project Without Staging Workflow:
|
|
value:
|
|
code: project_has_no_staging_workflow
|
|
summary: No staging workflow for project 'project_name'
|
|
Unknown Project:
|
|
value:
|
|
code: not_found
|
|
summary: Project 'project_name' not found.
|
|
tags:
|
|
- Staging Workflow
|
|
post:
|
|
summary: Create staging projects
|
|
description: Create staging projects on the staging workflow associated to the
|
|
specified project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: List of the names of the staging projects you want to add to
|
|
the staging workflow
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
staging_project:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example: openSUSE:Factory:Staging:C
|
|
xml:
|
|
name: workflow
|
|
examples:
|
|
Multiple Staging Projects:
|
|
value:
|
|
staging_project:
|
|
- openSUSE:Factory:Staging:C
|
|
- openSUSE:Factory:Staging:D
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Invalid Project Name:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Staging Projects for package_name failed: Project "0":
|
|
Name is illegal.'
|
|
Already Assigned:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Staging Projects for project_name failed: Project "project_name":
|
|
is already assigned to a staging workflow.'
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Project Without Staging Workflow:
|
|
value:
|
|
code: not_found
|
|
summary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: not_found
|
|
summary: Project 'project_name' not found.
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/staging_projects/{staging_project_name}":
|
|
get:
|
|
summary: Gets the overall state of a staging project.
|
|
description: |
|
|
Extra information can be requested by adding any combination of these parameters in the URL: requests, status and history.
|
|
- If requests is present, the output includes the staged, untracked and obsolete requests as well as missing reviews.
|
|
- If status is present, the output includes the overall state and the status xml (broken packages, missing reviews, checks, etc.)
|
|
- If history is present, the output includes the history of the staging project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: staging_project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Staging Project Name
|
|
example: openSUSE:Factory:Staging:A
|
|
- name: requests
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: 'Set to `1` if you want to include the staged, untracked and
|
|
obsolete requests as well as missing reviews, otherwise don''t pass this
|
|
query parameter.
|
|
|
|
'
|
|
- name: status
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: 'Set to `1` if you want to include the overall state and the
|
|
status xml (broken packages, missing reviews, checks, etc.), otherwise don''t
|
|
pass this query parameter.
|
|
|
|
'
|
|
- name: history
|
|
in: query
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- 1
|
|
description: Set to `1` if you want to include the history of the staging
|
|
project, otherwise don't pass this query parameter.
|
|
responses:
|
|
'200':
|
|
description: Get the state of a staging project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: openSUSE:Factory
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
example: empty
|
|
xml:
|
|
attribute: true
|
|
staged_requests:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
untracked_requests:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
obsolete_requests:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
missing_reviews:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
building_repositories:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
broken_packages:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
checks:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
missing_checks:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
history:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
example: 0
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: staging_project
|
|
example:
|
|
name: home:Iggy:Staging:A
|
|
state: empty
|
|
staged_requests:
|
|
count: 0
|
|
untracked_requests:
|
|
count: 0
|
|
obsolete_requests:
|
|
count: 0
|
|
missing_reviews:
|
|
count: 0
|
|
building_repositories:
|
|
count: 0
|
|
broken_packages:
|
|
count: 0
|
|
checks:
|
|
count: 0
|
|
missing_checks:
|
|
count: 0
|
|
history:
|
|
count: 0
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: Staging Workflow Project Not Found
|
|
value:
|
|
code: not_found
|
|
summary: Project home:Adminn not found.
|
|
staging_project_not_found:
|
|
summary: Staging Project Name Not Found
|
|
value:
|
|
code: staging_project_not_found
|
|
details: Staging Project "home:Admin:Staging:AA" does not exist.
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/staging_projects/{staging_project_name}/accept":
|
|
post:
|
|
summary: Accept a staging project
|
|
description: |
|
|
This accepts all staged requests and sets the project state back to 'empty'.
|
|
Will return in an error if staging project is not acceptable, unless force is given. You can force
|
|
accept staging projects with building or failing packages, but not with missing reviews
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: staging_project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Staging Project Name
|
|
example: openSUSE:Factory:Staging:A
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
staging_project_not_in_acceptable_state:
|
|
summary: Staging Project is not in an acceptable state
|
|
value:
|
|
code: staging_project_not_in_acceptable_state
|
|
summary: 'Staging Project is not acceptable: empty is not an acceptable
|
|
state'
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: Staging Workflow Project Not Found
|
|
value:
|
|
code: not_found
|
|
summary: Project home:Adminn not found.
|
|
staging_project_not_found:
|
|
summary: Staging Project Name Not Found
|
|
value:
|
|
code: staging_project_not_found
|
|
details: Staging Project "home:Admin:Staging:AA" does not exist.
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/staging_projects/{staging_project_name}/copy/{staging_project_copy_name}":
|
|
post:
|
|
summary: Copy a staging project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: staging_project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Staging Project Name
|
|
example: openSUSE:Factory:Staging:A
|
|
- in: path
|
|
name: staging_project_copy_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: The name of the staging project's copy
|
|
example: openSUSE:Factory:Staging:B
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
not_found:
|
|
summary: Staging Workflow Project Not Found
|
|
value:
|
|
code: not_found
|
|
summary: Project home:Adminn not found.
|
|
staging_project_not_found:
|
|
summary: Staging Project Name Not Found
|
|
value:
|
|
code: staging_project_not_found
|
|
details: Staging Project "home:Admin:Staging:AA" does not exist.
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/staging_projects/{staging_project_name}/staged_requests":
|
|
get:
|
|
summary: List all the staged requests of a staging project.
|
|
description: List all the requests that are already associated to a staging
|
|
project (staged requests).
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: staging_project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Staging Project Name
|
|
example: openSUSE:Factory:Staging:A
|
|
responses:
|
|
'200':
|
|
description: List of staged requests.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
creator:
|
|
type: string
|
|
example: foo-user
|
|
xml:
|
|
attribute: true
|
|
type:
|
|
type: string
|
|
example: submit
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
example: review
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
example: hello_world
|
|
xml:
|
|
attribute: true
|
|
superseded_by:
|
|
type: integer
|
|
example: 43
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
example: '2023-04-24T08:34:39Z'
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: staged_requests
|
|
examples:
|
|
Multiple Requests:
|
|
value:
|
|
request:
|
|
- id: 1
|
|
creator: Iggy
|
|
type: submit
|
|
state: accepted
|
|
package: package_a
|
|
updated_at: '2023-04-24T08:34:39Z'
|
|
- id: 2
|
|
creator: Dan
|
|
type: submit
|
|
state: review
|
|
package: package_b
|
|
superseded_by: 3
|
|
updated_at: '2022-02-22T02:22:22Z'
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Project Without Staging Workflow:
|
|
value:
|
|
code: not_found
|
|
summary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Staging Project:
|
|
value:
|
|
code: not_found
|
|
summary: 'Staging Project ''staging_project_name'' not found in
|
|
Staging: ''project_name'''
|
|
Unknown Project:
|
|
value:
|
|
code: not_found
|
|
summary: Project 'project_name' not found.
|
|
tags:
|
|
- Staging Workflow
|
|
post:
|
|
summary: Add requests to the staging project.
|
|
description: |
|
|
Add requests to the specified staging project except those that are excluded from the staging workflow.
|
|
Pass `remove_exclusion` to stop excluding the requests before adding them to the staging project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: staging_project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Staging Project Name
|
|
example: openSUSE:Factory:Staging:A
|
|
- in: query
|
|
name: remove_exclusion
|
|
schema:
|
|
type: string
|
|
description: |
|
|
Set to `1` if you want to stop excluding the specified requests before you add them to the staging project.
|
|
Don't pass this parameter to only stage the requests that are not excluded.
|
|
example: 1
|
|
requestBody:
|
|
description: List of requests to be added to the staging project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: requests
|
|
examples:
|
|
Multiple Requests:
|
|
value:
|
|
request:
|
|
- id: 1
|
|
- id: 2
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
With Excluded Requests:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Request ID currently excluded from project project_name.
|
|
Use --remove-exclusion if you want to force this action.
|
|
|
|
'
|
|
Unknown Request:
|
|
value:
|
|
code: invalid_request
|
|
summary: Request ID doesn't exist
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Without Staging Workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Staging Project:
|
|
value:
|
|
code: not_found
|
|
summary: 'Staging Project ''project_name:Staging:G'' not found
|
|
in Staging: ''project_name'''
|
|
Unknown Project:
|
|
value:
|
|
code: not_found
|
|
summary: Project 'project_name' not found.
|
|
'424':
|
|
description: Unacceptable State
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unacceptable State:
|
|
value:
|
|
code: staging_project_not_in_acceptable_state
|
|
sumary: 'Can''t change staged requests: Project ''project_name''
|
|
is being accepted.'
|
|
tags:
|
|
- Staging Workflow
|
|
delete:
|
|
summary: Delete requests from the staging project.
|
|
description: Delete the given requests from the staging project they were staged
|
|
in.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: staging_project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Staging Project Name
|
|
example: openSUSE:Factory:Staging:A
|
|
requestBody:
|
|
description: List of requests to be removed from the staging project.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
request:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
example: 42
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: requests
|
|
examples:
|
|
Multiple Requests:
|
|
value:
|
|
request:
|
|
- id: 1
|
|
- id: 2
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Request Not Staged:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Error while unassigning requests: Request ''ID'' is
|
|
not staged'
|
|
Request Not In Staging:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Error while unassigning requests: Requests with number:
|
|
ID don''t belong to Staging: project_name'
|
|
Wrong Request Number:
|
|
value:
|
|
code: invalid_request
|
|
summary: Error while parsing the numbers of the requests
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Without Staging Workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: not_found
|
|
summary: Project 'project_name' not found.
|
|
tags:
|
|
- Staging Workflow
|
|
"/staging/{project_name}/workflow":
|
|
post:
|
|
summary: Create a staging workflow for the specified project
|
|
description: Create a staging workflow associated to the project and the manager
|
|
group specified in the body of the request
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: Title of the staging workflow's managers group
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
managers:
|
|
type: string
|
|
example: group-test
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: workflow
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Staging Workflow Exists:
|
|
description: The project is already associated to a staging workflow
|
|
value:
|
|
code: staging_workflow_exists
|
|
summary: 'Project project_name already has an associated Staging
|
|
Workflow with id: ID'
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
Invalid Request:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Staging for project_name couldn''t be created:'
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
put:
|
|
summary: Change the managers group of a staging workflow
|
|
description: Change the managers group of the staging workflow associated to
|
|
the specified project.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: Title of the staging workflow's managers group
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
managers:
|
|
type: string
|
|
example: group-test
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: workflow
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'400':
|
|
description: |
|
|
Bad Request.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng).
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Invalid XML Format:
|
|
value:
|
|
code: invalid_xml_format
|
|
summary: XML format is not valid
|
|
Empty Body:
|
|
value:
|
|
code: invalid_request
|
|
summary: Empty body
|
|
Invalid Request:
|
|
value:
|
|
code: invalid_request
|
|
summary: 'Staging for project_name couldn''t be updated:'
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_without_staging_workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
delete:
|
|
summary: Delete the staging workflow of the specified project
|
|
description: |
|
|
Delete the staging workflow associated to the given project (a.k.a staging workflow project).
|
|
The staging projects associated to that workflow are not removed unless the parameter `with_staging_projects` is given.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- name: with_staging_projects
|
|
in: query
|
|
schema:
|
|
type: integer
|
|
description: |
|
|
Set to `1` if you want to delete all the staging projects associated to the staging workflow when it is deleted.
|
|
Staging projects' names usually look like: project_name:Staging:A, project_name:Staging:B etc.
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
project_without_staging_workflow:
|
|
value:
|
|
code: not_found
|
|
sumary: Project project_name doesn't have an associated Staging
|
|
Workflow
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Staging Workflow
|
|
"/statistics":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
tags:
|
|
- Statistics
|
|
"/statistics/active_request_creators/{project_name}":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
tags:
|
|
- Statistics
|
|
"/statistics/activity/{project_name}/{package_name}":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Statistics
|
|
"/statistics/added_timestamp/{project_name}/{package_name}":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Statistics
|
|
"/statistics/global_counters":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
tags:
|
|
- Statistics
|
|
"/statistics/latest_added":
|
|
get:
|
|
summary: Get a list of last added project and packages
|
|
description: Get a list of last added project and packages
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 10 entries to be returned.
|
|
example: 20
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
packages:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
xml:
|
|
name: latest_added
|
|
example:
|
|
package:
|
|
- name: pgbackrest
|
|
project: openSUSE:Factory:Staging:adi:24
|
|
created: '2023-06-01T07:07:24Z'
|
|
project:
|
|
- name: openSUSE:Factory:Staging:adi:24
|
|
created: '2023-06-01T07:07:22Z'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Statistics
|
|
"/statistics/latest_updated":
|
|
get:
|
|
summary: Get a list of last updated project and packages
|
|
description: Get a list of last updated project and packages
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 10 entries to be returned.
|
|
example: 20
|
|
- in: query
|
|
name: timelimit
|
|
schema:
|
|
type: integer
|
|
description: Limit the maximum age to this number of days.
|
|
example: 1
|
|
- in: query
|
|
name: prjfilter
|
|
schema:
|
|
type: string
|
|
description: Filter by project name.
|
|
example: openSUSE:Factory
|
|
- in: query
|
|
name: pkgfilter
|
|
schema:
|
|
type: string
|
|
description: Filter by package name.
|
|
example: 0ad
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
packages:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
xml:
|
|
name: latest_updated
|
|
example:
|
|
package:
|
|
- name: calc
|
|
project: openSUSE:Factory:Staging:adi:26
|
|
created: '2023-06-01T07:07:36Z'
|
|
project:
|
|
- name: openSUSE:Factory:Staging:adi:26
|
|
created: '2023-06-01T07:07:27Z'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Statistics
|
|
"/statistics/maintenance_statistics/{project_name}":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
tags:
|
|
- Statistics
|
|
"/statistics/most_active_packages":
|
|
get:
|
|
summary: Get a list of the most active packages
|
|
description: Get a list of the most active packages
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 10 entries to be returned.
|
|
example: 20
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
packages:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
xml:
|
|
name: most_active
|
|
example:
|
|
package:
|
|
- activity: 1371.487973151121
|
|
project: openSUSE:Factory:Staging
|
|
name: dashboard
|
|
- activity: 1369.5483848725057
|
|
project: home:repo-checker
|
|
name: reports
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Statistics
|
|
"/statistics/most_active_projects":
|
|
get:
|
|
summary: Get a list of the most active projects
|
|
description: Get a list of the most active projects
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 10 entries to be returned.
|
|
example: 20
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
packages:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
activity:
|
|
type: number
|
|
xml:
|
|
attribute: true
|
|
created:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
updated:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: package
|
|
xml:
|
|
name: most_active
|
|
example:
|
|
project:
|
|
- activity: 1371.492028553694
|
|
packages: 1
|
|
name: openSUSE:Factory:Staging
|
|
- activity: 1369.5524345398396
|
|
packages: 2
|
|
name: home:repo-checker
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Statistics
|
|
"/statistics/updated_timestamp/{project_name}/{package_name}":
|
|
get:
|
|
deprecated: true
|
|
summary: This endpoint is deprecated
|
|
description: This endpoint is no longer supported or might not work as expected.
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: package_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name
|
|
example: ctris
|
|
tags:
|
|
- Statistics
|
|
"/status/messages":
|
|
get:
|
|
summary: Get list of status messages
|
|
description: Get a list of all status messages
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 1000 entries to be returned.
|
|
example: 20
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
status_message:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
message:
|
|
type: string
|
|
user:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
scope:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
xml:
|
|
name: status_message
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status_messages
|
|
example:
|
|
count: 2
|
|
status_message:
|
|
- id: 2
|
|
message: OBS 3.0 is released!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-15 13:28:22 UTC
|
|
- id: 1
|
|
message: Feature number 42 was implemented!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-12 11:18:12 UTC
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Status Messages
|
|
post:
|
|
summary: Create a status message
|
|
description: |
|
|
Create a new status message (Only admins are allowed to add status messages).
|
|
|
|
Possible values for severity: (information, green, yellow, red, announcement).
|
|
|
|
Possible values for scope: (all_users, logged_in_users, admin_users, in_beta_users, in_rollout_users)
|
|
security:
|
|
- basic_authentication: []
|
|
requestBody:
|
|
description: Attributes for status message
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
message:
|
|
type: string
|
|
user:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
scope:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
xml:
|
|
name: status_message
|
|
example:
|
|
message: Feature number 42 was implemented!
|
|
severity: announcement
|
|
scope: all_users
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad request. Validation Error
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Validation Failed:
|
|
value:
|
|
code: validation_failed
|
|
summary: 'status_message validation error: 2:0: ERROR: Element
|
|
''<some element>'': No matching global declaration available
|
|
for the validation root.'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Status message no permission.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
status message no permission:
|
|
value:
|
|
code: put_request_no_permission
|
|
summary: Requires admin privileges
|
|
tags:
|
|
- Status Messages
|
|
"/status_message":
|
|
get:
|
|
summary: Get list of status messages
|
|
description: Get a list of all status messages
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: limit
|
|
schema:
|
|
type: integer
|
|
description: Override default maximum value of 1000 entries to be returned.
|
|
example: 20
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
status_message:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
message:
|
|
type: string
|
|
user:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
scope:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
xml:
|
|
name: status_message
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status_messages
|
|
example:
|
|
count: 2
|
|
status_message:
|
|
- id: 2
|
|
message: OBS 3.0 is released!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-15 13:28:22 UTC
|
|
- id: 1
|
|
message: Feature number 42 was implemented!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-12 11:18:12 UTC
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Status Messages
|
|
"/status/messages/{id}":
|
|
get:
|
|
summary: Get a status message
|
|
description: Find a status message with id
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
message:
|
|
type: string
|
|
user:
|
|
type: string
|
|
severity:
|
|
type: string
|
|
scope:
|
|
type: string
|
|
created_at:
|
|
type: string
|
|
xml:
|
|
name: status_message
|
|
example:
|
|
id: 2
|
|
message: OBS 3.0 is released!
|
|
user: Iggy
|
|
severity: announcement
|
|
scope: all_users
|
|
created_at: 2021-10-15 13:28:22 UTC
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
tags:
|
|
- Status Messages
|
|
delete:
|
|
summary: Delete a status message
|
|
description: Delete a status message with id
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
required: true
|
|
schema:
|
|
type: integer
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Status message no permission.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
status message no permission:
|
|
value:
|
|
code: put_request_no_permission
|
|
summary: Requires admin privileges
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
tags:
|
|
- Status Messages
|
|
"/status/project/{project_name}":
|
|
get:
|
|
summary: Get list of packages inside a project
|
|
description: Get a full list of packages and their status
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
package:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
version:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
changesmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
maxmtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
release:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
verifymd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
link:
|
|
type: object
|
|
properties:
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
error:
|
|
type: string
|
|
xml:
|
|
name: package
|
|
xml:
|
|
name: packages
|
|
example:
|
|
package:
|
|
- project: home:Admin
|
|
name: ruby
|
|
version: 1
|
|
srcmd5: 7fbfafc07ebb87ef62119216619d0fa5
|
|
changesmd5: d0fa5
|
|
- project: home:Admin
|
|
name: linked_package
|
|
version: 1.1
|
|
verifymd5: 7fbfafc07ebb87ef62rrrvvv555
|
|
srcmd5: 7fbfafc07ebb87ef62119216619d0fa5
|
|
link:
|
|
project: home:Admin
|
|
package: ut
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Status Project
|
|
"/status/workerstatus":
|
|
get:
|
|
deprecated: true
|
|
summary: Lists status of workers, jobs, backend services and general statistics.
|
|
description: |
|
|
Lists status of workers, running jobs, waiting jobs, status of the backend services and general statistics.
|
|
|
|
This endpoint is exactly the same as `GET /worker/_status`, please use that one.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
clients:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
idle:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
building:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
down:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
waiting:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
blocked:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
partition:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
daemon:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
queue:
|
|
type: object
|
|
properties:
|
|
high:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
med:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
low:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
next:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: workerstatus
|
|
example:
|
|
clients: '2'
|
|
idle:
|
|
- workerid: 1a1f67b948b6:1
|
|
hostarch: x86_64
|
|
building:
|
|
- repository: openSUSE_11.3_Update
|
|
arch: x86_64
|
|
project: home:enzokiel
|
|
package: android-sdk
|
|
starttime: '1289838671'
|
|
workerid: 1a1f67b948b6:2
|
|
hostarch: x86_64
|
|
down:
|
|
- workerid: armbuild03:1
|
|
hostarch: aarch64
|
|
waiting:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
blocked:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
buildavg:
|
|
- arch: i586
|
|
buildavg: '1200'
|
|
- arch: x86_64
|
|
buildavg: '1200'
|
|
partition:
|
|
- daemon:
|
|
- type: srcserver
|
|
state: running
|
|
starttime: '1617711138'
|
|
- type: servicedispatch
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: service
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: clouduploadserver
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: clouduploadworker
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: scheduler
|
|
arch: i586
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: scheduler
|
|
arch: x86_64
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: repserver
|
|
state: running
|
|
starttime: '1617711143'
|
|
- type: dispatcher
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: publisher
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: signer
|
|
state: running
|
|
starttime: '1617711146'
|
|
- name: back-main
|
|
daemon:
|
|
- type: scheduler
|
|
arch: aarch64
|
|
state: running
|
|
starttime: '1617148925'
|
|
queue:
|
|
high: '0'
|
|
med: '1'
|
|
low: '4'
|
|
next: '22'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Status Project
|
|
"/status_reports/built/{project_name}/{repository_name}/{architecture_name}/reports/{build_id}":
|
|
get:
|
|
summary: Get list of checks in the built project repository
|
|
description: Get a full list of checks in the built project repository's status
|
|
reports
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: build_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the build.
|
|
example: 16
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
check:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
uuid:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status_report
|
|
example:
|
|
check:
|
|
- name: First
|
|
required: false
|
|
state: pending
|
|
short_description: This is the first of the checks
|
|
url: https://ci.opensuse.org/
|
|
- name: Second
|
|
required: true
|
|
state: success
|
|
short_description: This is the second of the checks
|
|
url: https://check.opensuse.org/
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
tags:
|
|
- Status Reports
|
|
post:
|
|
summary: Submit a check to a built project repository's status report
|
|
description: Create or update a check to the status report for the built project
|
|
repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: build_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the build.
|
|
example: 16
|
|
requestBody:
|
|
description: Check definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
example:
|
|
name: First
|
|
required: false
|
|
state: pending
|
|
short_description: This is the first of the checks
|
|
url: https://ci.opensuse.org/
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: update_status/report_not_authorized
|
|
summary: Sorry, you are not authorized to update this status/report.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Invalid State:
|
|
value:
|
|
code: invalid_check
|
|
summary: "Could not save check: State State '\U0001F680' is not
|
|
a valid. Valid states are: pending, error, failure, success"
|
|
tags:
|
|
- Status Reports
|
|
"/status_reports/published/{project_name}/{repository_name}/reports/{build_id}":
|
|
get:
|
|
summary: Get list of checks in the published project repository
|
|
description: Get a full list of checks in the published project repository's
|
|
status reports
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: build_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the build.
|
|
example: 16
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
check:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
uuid:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status_report
|
|
example:
|
|
check:
|
|
- name: First
|
|
required: false
|
|
state: pending
|
|
short_description: This is the first of the checks
|
|
url: https://ci.opensuse.org/
|
|
- name: Second
|
|
required: true
|
|
state: success
|
|
short_description: This is the second of the checks
|
|
url: https://check.opensuse.org/
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
tags:
|
|
- Status Reports
|
|
post:
|
|
summary: Submit a check to a published project repository's status report
|
|
description: Create or update a check to the status report for the published
|
|
project repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: build_id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: The id of the build.
|
|
example: 16
|
|
requestBody:
|
|
description: Check definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
example:
|
|
name: First
|
|
required: false
|
|
state: pending
|
|
short_description: This is the first of the checks
|
|
url: https://ci.opensuse.org/
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: update_status/report_not_authorized
|
|
summary: Sorry, you are not authorized to update this status/report.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Invalid State:
|
|
value:
|
|
code: invalid_check
|
|
summary: "Could not save check: State State '\U0001F680' is not
|
|
a valid. Valid states are: pending, error, failure, success"
|
|
tags:
|
|
- Status Reports
|
|
"/status_reports/requests/{id}/reports":
|
|
get:
|
|
summary: Get list of checks in the request
|
|
description: Get a full list of checks in the request's status reports
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
check:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
uuid:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: status_report
|
|
example:
|
|
check:
|
|
- name: First
|
|
required: false
|
|
state: pending
|
|
short_description: This is the first of the checks
|
|
url: https://ci.opensuse.org/
|
|
- name: Second
|
|
required: true
|
|
state: success
|
|
short_description: This is the second of the checks
|
|
url: https://check.opensuse.org/
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
tags:
|
|
- Status Reports
|
|
post:
|
|
summary: Submit a check to the request's status report
|
|
description: Create or update a check to the status report for the request
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: integer
|
|
required: true
|
|
description: Id of the choosen request.
|
|
example: 743
|
|
requestBody:
|
|
description: Check definition.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
example: first_ci
|
|
xml:
|
|
attribute: true
|
|
required:
|
|
type: string
|
|
enum:
|
|
- true
|
|
- false
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- pending
|
|
- error
|
|
- failure
|
|
- success
|
|
short_description:
|
|
type: string
|
|
example: A short description of the check
|
|
url:
|
|
type: string
|
|
example: https://ci.opensuse.org/
|
|
xml:
|
|
name: check
|
|
example:
|
|
name: First
|
|
required: false
|
|
state: pending
|
|
short_description: This is the first of the checks
|
|
url: https://ci.opensuse.org/
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: update_status/report_not_authorized
|
|
summary: Sorry, you are not authorized to update this status/report.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Not Found:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find StatusMessage with 'id'=300
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Invalid State:
|
|
value:
|
|
code: invalid_check
|
|
summary: "Could not save check: State State '\U0001F680' is not
|
|
a valid. Valid states are: pending, error, failure, success"
|
|
tags:
|
|
- Status Reports
|
|
"/status_reports/built_repositories/{project_name}/{repository_name}/{architecture_name}/required_checks":
|
|
get:
|
|
summary: Get list of required checks in the built repository
|
|
description: Get a full list of required checks in the built repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
repository: openSUSE_Tumbleweed
|
|
architecture: x86_64
|
|
name:
|
|
- first
|
|
- second
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Repository:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Repository
|
|
Unknown Architecture:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Architecture
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
post:
|
|
summary: Submit a required checks list to the built repository
|
|
description: Submit a new or modified required checks list to the built repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
requestBody:
|
|
description: Required checks list.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
repository: openSUSE_Tumbleweed
|
|
architecture: x86_64
|
|
name:
|
|
- first
|
|
- second
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
repository: openSUSE_Tumbleweed
|
|
architecture: x86_64
|
|
name:
|
|
- first
|
|
- second
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: create_repository_architecture_not_authorized
|
|
summary: Sorry, you are not authorized to create this repository architecture.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Repository:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Repository
|
|
Unknown Architecture:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Architecture
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Could not save:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not save required check:'
|
|
Could not delete:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not delete required check:'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
"/status_reports/built_repositories/{project_name}/{repository_name}/{architecture_name}/required_checks/{check_name}":
|
|
delete:
|
|
summary: Delete a required check from the built repository
|
|
description: Delete a required check from the built repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: check_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Check name.
|
|
example: first
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: delete_repository_architecture_not_authorized
|
|
summary: Sorry, you are not authorized to delete this repository architecture.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Repository:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Repository
|
|
Unknown Architecture:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Architecture
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Could not save:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not save required check:'
|
|
Could not delete:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not delete required check:'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
"/status_reports/projects/{project_name}/required_checks":
|
|
get:
|
|
summary: Get list of required checks in the project
|
|
description: Get a full list of required checks in the project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
name:
|
|
- first
|
|
- second
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
post:
|
|
summary: Submit a required checks list to the project
|
|
description: Submit a new or modified required checks list to the project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
requestBody:
|
|
description: Required checks list.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
name:
|
|
- first
|
|
- second
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
name:
|
|
- first
|
|
- second
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: create_project_not_authorized
|
|
summary: Sorry, you are not authorized to create this project.
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Could not save:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not save required check:'
|
|
Could not delete:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not delete required check:'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
"/status_reports/projects/{project_name}/required_checks/{check_name}":
|
|
delete:
|
|
summary: Delete a required checks from the project
|
|
description: Delete a required check from the project
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: check_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Check name.
|
|
example: first
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: delete_project_not_authorized
|
|
summary: Sorry, you are not authorized to delete this project.
|
|
'404':
|
|
description: |
|
|
Unknown project.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: <some project>.'
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Could not save:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not save required check:'
|
|
Could not delete:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not delete required check:'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
"/status_reports/repositories/{project_name}/{repository_name}/required_checks":
|
|
get:
|
|
summary: Get list of required checks in the project repository
|
|
description: Get a full list of required checks in the project repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
repository: openSUSE_Tumbleweed
|
|
name:
|
|
- first
|
|
- second
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Repository:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Repository
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
post:
|
|
summary: Submit a required checks list to the project repository
|
|
description: Submit a new or modified required checks list to the project repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
requestBody:
|
|
description: Required checks list.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
repository: openSUSE_Tumbleweed
|
|
name:
|
|
- first
|
|
- second
|
|
responses:
|
|
'200':
|
|
description: OK. The request has succeeded.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: array
|
|
items:
|
|
type: string
|
|
example:
|
|
- first
|
|
- second
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: home:Admin
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: openSUSE_Tumbleweed
|
|
architecture:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
example: x86_64
|
|
xml:
|
|
name: required_checks
|
|
example:
|
|
project: home:Admin
|
|
repository: openSUSE_Tumbleweed
|
|
name:
|
|
- first
|
|
- second
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: create_repository_not_authorized
|
|
summary: Sorry, you are not authorized to create this repository.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Repository:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Repository
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Could not save:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not save required check:'
|
|
Could not delete:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not delete required check:'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
"/status_reports/repositories/{project_name}/{repository_name}/required_checks/{check_name}":
|
|
delete:
|
|
summary: Delete a required check from the project repository
|
|
description: Delete a required checks from the project repository
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: project_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Project name
|
|
example: home:Admin
|
|
- in: path
|
|
name: repository_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name
|
|
example: openSUSE_Tumbleweed
|
|
- in: path
|
|
name: check_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Check name.
|
|
example: first
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'403':
|
|
description: |
|
|
Forbidden.
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: delete_repository_not_authorized
|
|
summary: Sorry, you are not authorized to delete this repository.
|
|
'404':
|
|
description: |
|
|
Not Found.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Unknown Project:
|
|
value:
|
|
code: unknown_project
|
|
summary: 'Project not found: home:some_project'
|
|
Unknown Repository:
|
|
value:
|
|
code: not_found
|
|
summary: Couldn't find Repository
|
|
'422':
|
|
description: |
|
|
Unprocessable Content.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
Could not save:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not save required check:'
|
|
Could not delete:
|
|
value:
|
|
code: invalid_required_check
|
|
summary: 'Could not delete required check:'
|
|
tags:
|
|
- Status Reports - Required Checks
|
|
"/trigger":
|
|
post:
|
|
summary: Trigger a rebuild, release or service run via an API token
|
|
description: |
|
|
This route allows to trigger
|
|
|
|
- a Project/Package rebuild
|
|
- a Project/Package release
|
|
- a Package service run
|
|
|
|
via an API token.
|
|
|
|
You are required to authenticate with the API token secret. The API token secret needs
|
|
to be provided either by HTTP headers or by a Hash-based Message Authentication Code (HMAC).
|
|
|
|
See the [/person/{login}/token](#/Person/post_person__login__token) endpoint for
|
|
information how to create an API token.
|
|
security:
|
|
- GitLab_key_authentication: []
|
|
parameters:
|
|
- in: header
|
|
name: X-OBS-SIGNATURE
|
|
description: |
|
|
A HMAC of the request body, signed with the API token secret.
|
|
Only useful in combination with the id parameter.
|
|
schema:
|
|
type: string
|
|
example: 123458568938927827827
|
|
- in: header
|
|
name: X-HUB-SIGNATURE-256
|
|
description: |
|
|
A HMAC of the request body, signed with the API token secret.
|
|
Only useful in combination with the id parameter.
|
|
schema:
|
|
type: string
|
|
example: 123458568938927827827
|
|
- in: header
|
|
name: X-Pagure-Signature-256
|
|
description: |
|
|
A HMAC of the request body, signed with the API token secret.
|
|
Only useful in combination with the id parameter.
|
|
schema:
|
|
type: string
|
|
example: 123458568938927827827
|
|
- in: header
|
|
name: X-GitLab-Token
|
|
description: The API token secret.
|
|
schema:
|
|
type: string
|
|
example: THE_TOKEN_SECRET
|
|
- in: header
|
|
name: Authorization
|
|
description: The API token secret in the Token realm.
|
|
schema:
|
|
type: string
|
|
example: Token THE_TOKEN_SECRET
|
|
- in: query
|
|
name: id
|
|
description: |
|
|
Numerical ID of the token to trigger.
|
|
This is required if you authenticate via a HMAC.
|
|
schema:
|
|
type: integer
|
|
example: 1
|
|
- in: query
|
|
name: project
|
|
description: |
|
|
If the API token does not have a package assigned you can set a project via this parameter.
|
|
The operation of the API token is then executed on this project.
|
|
schema:
|
|
type: string
|
|
example: home:user
|
|
- in: query
|
|
name: package
|
|
description: |
|
|
If the API token does not have a package assigned you can set a package via this parameter.
|
|
The operation of the API token is then executed on this package.
|
|
|
|
Setting this requires the project parameter to be set too.
|
|
schema:
|
|
type: string
|
|
example: vim
|
|
- in: query
|
|
name: repository
|
|
description: |
|
|
Restrict the API token operation to this repository.
|
|
|
|
Only has an effect if the API token operation is 'rebuild' or 'release'.
|
|
schema:
|
|
type: string
|
|
example: openSUSE_Factory
|
|
- in: query
|
|
name: arch
|
|
description: |
|
|
Restrict the API token operation to this architecture with this name.
|
|
|
|
Only has an effect when the API token operation is 'rebuild' or 'release'.
|
|
schema:
|
|
type: string
|
|
example: x86_64
|
|
- in: query
|
|
name: targetproject
|
|
description: |
|
|
Release binaries only to the provided project with this name.
|
|
Setting this requires the 'targetrepository' parameter to be set also.
|
|
|
|
Only has an effect if the API token operation is 'release'.
|
|
schema:
|
|
type: string
|
|
example: devel:languages:ruby
|
|
- in: query
|
|
name: targetrepository
|
|
description: |
|
|
Release binaries only to the target repository with this name.
|
|
Setting this requires the 'targetproject' parameter to be set also.
|
|
|
|
Only has an effect if the API token operation is 'release'.
|
|
schema:
|
|
type: string
|
|
example: openSUSE_Factory
|
|
- in: query
|
|
name: filter_source_repository
|
|
description: |
|
|
Release binaries only from the repository with this name.
|
|
|
|
Only has an effect if the API token operation is 'release'.
|
|
schema:
|
|
type: string
|
|
example: openSUSE_Factory
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_token
|
|
summary: No valid token found
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: permission_denied
|
|
summary: No valid token found
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
unknown_project:
|
|
summary: Project not found
|
|
value:
|
|
code: unknown_project
|
|
details: 'Project not found: home:Admin'
|
|
unknown_package:
|
|
summary: Package not found
|
|
value:
|
|
code: unknown_package
|
|
details: 'Package not found: home:Admin/foo'
|
|
tags:
|
|
- Trigger
|
|
"/trigger/rebuild":
|
|
post:
|
|
summary: Trigger a Project/Package rebuild
|
|
description: |
|
|
This endpoint behaves exactly as the [/trigger](#/Trigger/post_trigger) endpoint but
|
|
only allows API tokens with the operation 'rebuild' to be triggered.
|
|
security:
|
|
- GitLab_key_authentication: []
|
|
tags:
|
|
- Trigger
|
|
"/trigger/release":
|
|
post:
|
|
summary: Trigger a Project/Package release
|
|
description: |
|
|
This endpoint behaves exactly as the [/trigger](#/Trigger/post_trigger) endpoint but
|
|
only allows API tokens the the operation 'release' to be triggered.
|
|
security:
|
|
- GitLab_key_authentication: []
|
|
tags:
|
|
- Trigger
|
|
"/trigger/runservice":
|
|
post:
|
|
summary: Trigger a Package service run
|
|
description: |
|
|
This endpoint behaves exactly as the [/trigger](#/Trigger/post_trigger) endpoint but
|
|
only allows API tokens with the operation 'runservice' to be triggered.
|
|
security:
|
|
- GitLab_key_authentication: []
|
|
tags:
|
|
- Trigger
|
|
"/trigger/workflow":
|
|
post:
|
|
summary: Trigger a SCM/CI Workflow via an API token
|
|
description: |
|
|
This route allows to trigger an [OBS SCM/CI workflow](https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.scm_ci_workflow_integration)
|
|
via an API token.
|
|
|
|
You are required to authenticate with the API token secret. The API token secret needs
|
|
to be provided either by HTTP headers or by a Hash-based Message Authentication Code (HMAC).
|
|
|
|
See the [/person/{login}/token](#/Person/post_person__login__token) endpoint for
|
|
information how to create an API token.
|
|
security:
|
|
- GitLab_key_authentication: []
|
|
parameters:
|
|
- in: header
|
|
name: X-OBS-SIGNATURE
|
|
description: |
|
|
A HMAC of the request body, signed with the API token secret.
|
|
Only useful in combination with the id parameter.
|
|
schema:
|
|
type: string
|
|
example: 123458568938927827827
|
|
- in: header
|
|
name: X-HUB-SIGNATURE-256
|
|
description: |
|
|
A HMAC of the request body, signed with the API token secret.
|
|
Only useful in combination with the id parameter.
|
|
schema:
|
|
type: string
|
|
example: 123458568938927827827
|
|
- in: header
|
|
name: X-Pagure-Signature-256
|
|
description: |
|
|
A HMAC of the request body, signed with the API token secret.
|
|
Only useful in combination with the id parameter.
|
|
schema:
|
|
type: string
|
|
example: 123458568938927827827
|
|
- in: header
|
|
name: X-GitLab-Token
|
|
description: The API token secret.
|
|
schema:
|
|
type: string
|
|
example: THE_TOKEN_SECRET
|
|
- in: header
|
|
name: Authorization
|
|
description: The API token secret in the Token realm.
|
|
schema:
|
|
type: string
|
|
example: Token THE_TOKEN_SECRET
|
|
- in: query
|
|
name: id
|
|
description: |
|
|
Numerical ID of the token to trigger.
|
|
This is required if you authenticate via a HMAC.
|
|
schema:
|
|
type: integer
|
|
example: 1
|
|
responses:
|
|
'200':
|
|
description: |
|
|
OK. The request has succeeded.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: ok
|
|
summary: Ok
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: invalid_token
|
|
summary: No valid token found
|
|
'403':
|
|
description: Forbidden.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: permission_denied
|
|
summary: No valid token found
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
unknown_project:
|
|
summary: Project not found
|
|
value:
|
|
code: unknown_project
|
|
details: 'Project not found: home:Admin'
|
|
unknown_package:
|
|
summary: Package not found
|
|
value:
|
|
code: unknown_package
|
|
details: 'Package not found: home:Admin/foo'
|
|
tags:
|
|
- Trigger
|
|
"/trigger/webhook":
|
|
post:
|
|
deprecated: true
|
|
summary: Trigger an operation
|
|
description: This endpoint behaves exactly as the [/trigger](#/Trigger) endpoint.
|
|
security:
|
|
- GitLab_key_authentication: []
|
|
tags:
|
|
- Trigger
|
|
"/worker/_status":
|
|
get:
|
|
summary: Lists status of workers, jobs, backend services and general statistics.
|
|
description: Lists status of workers, running jobs, waiting jobs, status of
|
|
the backend services and general statistics.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
clients:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
idle:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
building:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
down:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
waiting:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
blocked:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
partition:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
daemon:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
queue:
|
|
type: object
|
|
properties:
|
|
high:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
med:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
low:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
next:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: workerstatus
|
|
example:
|
|
clients: '2'
|
|
idle:
|
|
- workerid: 1a1f67b948b6:1
|
|
hostarch: x86_64
|
|
building:
|
|
- repository: openSUSE_11.3_Update
|
|
arch: x86_64
|
|
project: home:enzokiel
|
|
package: android-sdk
|
|
starttime: '1289838671'
|
|
workerid: 1a1f67b948b6:2
|
|
hostarch: x86_64
|
|
down:
|
|
- workerid: armbuild03:1
|
|
hostarch: aarch64
|
|
waiting:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
blocked:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
buildavg:
|
|
- arch: i586
|
|
buildavg: '1200'
|
|
- arch: x86_64
|
|
buildavg: '1200'
|
|
partition:
|
|
- daemon:
|
|
- type: srcserver
|
|
state: running
|
|
starttime: '1617711138'
|
|
- type: servicedispatch
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: service
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: clouduploadserver
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: clouduploadworker
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: scheduler
|
|
arch: i586
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: scheduler
|
|
arch: x86_64
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: repserver
|
|
state: running
|
|
starttime: '1617711143'
|
|
- type: dispatcher
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: publisher
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: signer
|
|
state: running
|
|
starttime: '1617711146'
|
|
- name: back-main
|
|
daemon:
|
|
- type: scheduler
|
|
arch: aarch64
|
|
state: running
|
|
starttime: '1617148925'
|
|
queue:
|
|
high: '0'
|
|
med: '1'
|
|
low: '4'
|
|
next: '22'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Workers
|
|
"/worker/status":
|
|
get:
|
|
deprecated: true
|
|
summary: Lists status of workers, jobs, backend services and general statistics.
|
|
description: |
|
|
Lists status of workers, running jobs, waiting jobs, status of the backend services and general statistics.
|
|
|
|
This endpoint is exactly the same as `GET /worker/_status`, please use that one.
|
|
security:
|
|
- basic_authentication: []
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
clients:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
idle:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
building:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
repository:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
project:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
package:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
down:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
waiting:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
blocked:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
buildavg:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
partition:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
daemon:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
state:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
starttime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
arch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
queue:
|
|
type: object
|
|
properties:
|
|
high:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
med:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
low:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
next:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: workerstatus
|
|
example:
|
|
clients: '2'
|
|
idle:
|
|
- workerid: 1a1f67b948b6:1
|
|
hostarch: x86_64
|
|
building:
|
|
- repository: openSUSE_11.3_Update
|
|
arch: x86_64
|
|
project: home:enzokiel
|
|
package: android-sdk
|
|
starttime: '1289838671'
|
|
workerid: 1a1f67b948b6:2
|
|
hostarch: x86_64
|
|
down:
|
|
- workerid: armbuild03:1
|
|
hostarch: aarch64
|
|
waiting:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
blocked:
|
|
- arch: i586
|
|
jobs: '0'
|
|
- arch: x86_64
|
|
jobs: '0'
|
|
buildavg:
|
|
- arch: i586
|
|
buildavg: '1200'
|
|
- arch: x86_64
|
|
buildavg: '1200'
|
|
partition:
|
|
- daemon:
|
|
- type: srcserver
|
|
state: running
|
|
starttime: '1617711138'
|
|
- type: servicedispatch
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: service
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: clouduploadserver
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: clouduploadworker
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: scheduler
|
|
arch: i586
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: scheduler
|
|
arch: x86_64
|
|
state: running
|
|
starttime: '1617711145'
|
|
queue:
|
|
high: '0'
|
|
med: '0'
|
|
low: '11'
|
|
next: '0'
|
|
- type: repserver
|
|
state: running
|
|
starttime: '1617711143'
|
|
- type: dispatcher
|
|
state: running
|
|
starttime: '1617711144'
|
|
- type: publisher
|
|
state: running
|
|
starttime: '1617711145'
|
|
- type: signer
|
|
state: running
|
|
starttime: '1617711146'
|
|
- name: back-main
|
|
daemon:
|
|
- type: scheduler
|
|
arch: aarch64
|
|
state: running
|
|
starttime: '1617148925'
|
|
queue:
|
|
high: '0'
|
|
med: '1'
|
|
low: '4'
|
|
next: '22'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
tags:
|
|
- Workers
|
|
"/worker/{architecture_name}:{worker_id}":
|
|
get:
|
|
summary: Lists capabilites of a worker.
|
|
description: |
|
|
Lists capabilites of a worker.
|
|
|
|
This can be useful when checking for constraints.
|
|
|
|
This operation is the same as `GET /worker/capability/{architecture_name}:{worker_id}`.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: path
|
|
name: architecture_name
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name
|
|
example: x86_64
|
|
- in: path
|
|
name: worker_id
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Worker id.
|
|
example: 1a1f67b948b6:1
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
hostarch:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
registerserver:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
workerid:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
hostlabel:
|
|
type: string
|
|
sandbox:
|
|
type: string
|
|
linux:
|
|
type: object
|
|
properties:
|
|
version:
|
|
type: string
|
|
flavor:
|
|
type: string
|
|
hardware:
|
|
type: object
|
|
properties:
|
|
cpu:
|
|
type: object
|
|
properties:
|
|
flag:
|
|
type: array
|
|
items:
|
|
type: string
|
|
processors:
|
|
type: string
|
|
jobs:
|
|
type: string
|
|
xml:
|
|
name: worker
|
|
example:
|
|
hostarch: x86_64
|
|
registerserver: http://backend:5252
|
|
workerid: 1a1f67b948b6:1
|
|
hostlabel: OBS_WORKER_SECURITY_LEVEL_
|
|
sandbox: chroot
|
|
linux:
|
|
version: 5.11.6-1
|
|
flavor: default
|
|
hardware:
|
|
cpu:
|
|
flag:
|
|
- fpu
|
|
- vme
|
|
- de
|
|
- pse
|
|
- tsc
|
|
- msr
|
|
processors: '8'
|
|
jobs: '1'
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: '404'
|
|
summary: 'remote error: unknown worker (http://backend:5252/worker/x86_64:1a1f67b948bf:1)'
|
|
details: '404 remote error: unknown worker (http://backend:5252/worker/x86_64:1a1f67b948bf:1)'
|
|
tags:
|
|
- Workers
|
|
"/worker?cmd=checkconstraints":
|
|
post:
|
|
summary: Lists workers which match a constraints filter.
|
|
description: |
|
|
Given a project, package, repository and architecture, list workers which can build with that restrictions, and also match a constraints filter.
|
|
|
|
This endpoint doesn't create or modify any data.
|
|
|
|
More information about constraints can be found in the
|
|
[user guide](https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.build_job_constraints.html).
|
|
|
|
This operation is the same as `POST /worker/command/run?cmd=checkconstraints`.
|
|
security:
|
|
- basic_authentication: []
|
|
parameters:
|
|
- in: query
|
|
name: project
|
|
schema:
|
|
type: string
|
|
required: true
|
|
example: home:user1
|
|
description: Project name.
|
|
- in: query
|
|
name: repository
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Repository name.
|
|
example: openSUSE_Tumbleweed
|
|
- in: query
|
|
name: arch
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Architecture name.
|
|
example: x86_64
|
|
- in: query
|
|
name: package
|
|
schema:
|
|
type: string
|
|
required: true
|
|
description: Package name.
|
|
example: test_package
|
|
requestBody:
|
|
description: Constraints XML filter
|
|
required: true
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
hostlabel:
|
|
type: string
|
|
sandbox:
|
|
type: string
|
|
example: chroot
|
|
linux:
|
|
type: object
|
|
properties:
|
|
version:
|
|
type: object
|
|
properties:
|
|
min:
|
|
type: string
|
|
max:
|
|
type: string
|
|
flavor:
|
|
type: string
|
|
hardware:
|
|
type: object
|
|
properties:
|
|
cpu:
|
|
type: object
|
|
properties:
|
|
flag:
|
|
type: array
|
|
items:
|
|
type: string
|
|
processors:
|
|
type: string
|
|
disk:
|
|
type: object
|
|
properties:
|
|
size:
|
|
type: string
|
|
memory:
|
|
type: object
|
|
properties:
|
|
size:
|
|
type: string
|
|
physicalmemory:
|
|
type: object
|
|
properties:
|
|
size:
|
|
type: string
|
|
xml:
|
|
name: constraints
|
|
examples:
|
|
cpu_flags:
|
|
summary: Cpu flags
|
|
value:
|
|
hardware:
|
|
cpu:
|
|
flag:
|
|
- mmx
|
|
- sse2
|
|
processors:
|
|
summary: Number of processors
|
|
value:
|
|
hardware:
|
|
processors: 2
|
|
mix:
|
|
summary: Linux version and linux flavor
|
|
value:
|
|
linux:
|
|
version:
|
|
min: 3.0
|
|
max: 4.0
|
|
flavor: default
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
count:
|
|
type: integer
|
|
xml:
|
|
attribute: true
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
rev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
vrev:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
srcmd5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
entry:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
md5:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
size:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
mtime:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
xml:
|
|
name: directory
|
|
examples:
|
|
two_workers:
|
|
summary: Two Workers Satisfy the Constraints
|
|
value:
|
|
entry:
|
|
- name: x86_64:1a1f67b948b6:1
|
|
- name: x86_64:1a1f67b948b6:2
|
|
no_workers:
|
|
summary: No Workers Satisfy the Constraints
|
|
value:
|
|
'400':
|
|
description: Bad Request.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: missing_parameter
|
|
summary: Required Parameter arch missing
|
|
'401':
|
|
description: |
|
|
Unauthorized.
|
|
|
|
XML Schema used for body validation: [status.rng](../schema/status.rng)
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
examples:
|
|
anonymous_user:
|
|
value:
|
|
code: anonymous_user
|
|
summary: Anonymous user is not allowed here - please login
|
|
summary: Anonymous User
|
|
authentication_required:
|
|
value:
|
|
code: authentication_required
|
|
summary: Unknown user 'Admin' or invalid password
|
|
summary: Authentication Required
|
|
'404':
|
|
description: Not Found.
|
|
content:
|
|
application/xml; charset=utf-8:
|
|
schema:
|
|
type: object
|
|
properties:
|
|
code:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
origin:
|
|
type: string
|
|
xml:
|
|
attribute: true
|
|
summary:
|
|
type: string
|
|
details:
|
|
type: string
|
|
data:
|
|
type: array
|
|
items:
|
|
type: string
|
|
xml:
|
|
name: status
|
|
example:
|
|
code: 404
|
|
summary: repository 'home:Admin/openSUSE_Tumbleweed' has no architecture
|
|
'x86_64d'
|
|
tags:
|
|
- Workers
|
|
components:
|
|
securitySchemes:
|
|
basic_authentication:
|
|
type: http
|
|
scheme: basic
|
|
GitLab_key_authentication:
|
|
type: apiKey
|
|
in: header
|
|
name: X-GitLab-Token
|
|
externalDocs:
|
|
url: https://openbuildservice.org/help/
|
|
description: Open Build Service - Documentation
|