Skip to content

Commit

Permalink
Merge branch 'develop' of github.com:oqtopus-team/oqtopus-cloud into …
Browse files Browse the repository at this point in the history
…feature/#276-db-migration
  • Loading branch information
katsujukou committed Dec 27, 2024
2 parents 29f1b95 + d703aa3 commit 1de6fd3
Show file tree
Hide file tree
Showing 27 changed files with 2,227 additions and 676 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/python-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: .coverage-${{ matrix.target }}
path: .coverage-${{ matrix.target }}
path: ./backend/.coverage-${{ matrix.target }}

coverage:
runs-on: ubuntu-latest
Expand Down
122 changes: 118 additions & 4 deletions backend/oas/provider/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,19 @@ paths:
schema:
type: string
example: Kawasaki
- in: query
name: fields
description: |-
Allows to specify an exact list of job properties to fetch for a single job. Each element of the list must be a valid name of job property.
If parameter is specified and requested job field is not defined for a job null is returned.
If parameter is omitted all available job properties are returned. Undefined job properties (null properties) are not included in the response.
required: false
schema:
type: string
maxLength: 1024
example: job_id,status,name
- in: query
name: status
description: Additional search parameter:<br/> Search jobs with specified status only
Expand All @@ -128,7 +141,7 @@ paths:
schema:
type: array
items:
$ref: '#/components/schemas/jobs.JobDef'
$ref: '#/components/schemas/jobs.GetJobsResponse'
'400':
description: Bad Request
content:
Expand Down Expand Up @@ -445,6 +458,107 @@ components:
description: The reason indicating why there is no result
required:
- desc
jobs.GetJobsResponse:
type: object
properties:
job_id:
$ref: '#/components/schemas/jobs.JobId'
name:
type: string
example: Bell State Sampling
description:
type: string
example: Bell State Sampling Example
device_id:
type: string
example: Kawasaki
shots:
type: integer
minimum: 1
maximum: 10000000
example: '1000'
job_info:
$ref: '#/components/schemas/jobs.JobInfo'
transpiler_info:
type: string
example: |-
{
"qubit_allocation": {
"0"": 12,
"1": 16
},
"skip_transpilation": false,
"seed_transpilation": 873
}
simulator_info:
type: string
example: |-
{
"n_qubits": 5,
"n_nodes": 12,
"n_per_node": 2,
"seed_simulation": 39058567,
"simulation_opt": {
"optimization_method": "light",
"optimization_block_size": 1,
"optimization_swap_level": 1
}
}
mitigation_info:
type: string
example: |
{ "ro_error_mitigation": "pseudo_inverse" }
status:
$ref: '#/components/schemas/jobs.JobStatus'
created_at:
type: string
format: date-time
example: '2022-10-19T11:45:34+09:00'
updated_at:
type: string
format: date-time
example: '2022-10-19T11:45:34+09:00'
required: []
example:
job_id: 7af020f6-2e38-4d70-8cf0-4349650ea08c
name: Bell State Sampling
description: Bell State Sampling Example
device_id: Kawasaki
job_info:
desc:
job_type: sampling
code: OPENQASM 3; qubit[2] q; bit[2] c; h q[0]; cnot q[0], q[1]; c = measure q;
transpiled_code: null
result: null
reason: null
transpiler_info: |-
{
"qubit_allocation": {
"0": 12,
"1": 16
},
"skip_transpilation": false,
"seed_transpilation": 873
}
simulator_info: |-
{
"n_qubits": 5,
"n_nodes": 12,
"n_per_node": 2,
"seed_simulation": 39058567,
"simulation_opt": {
"optimization_method": "light",
"optimization_block_size": 1,
"optimization_swap_level": 1
}
}
mitigation_info: |
{ "ro_error_mitigation": "pseudo_inverse" }
job_type: sampling
shots: 1000
status: submitted
created_at: '2022-10-19T11:45:34+09:00'
updated_at: '2022-10-19T11:45:34+09:00'
jobs.JobDef:
type: object
properties:
Expand Down Expand Up @@ -504,7 +618,7 @@ components:
updated_at:
type: string
format: date-time
example: '2022-10-19T11:45:34'
example: '2022-10-19T11:45:34+09:00'
required:
- job_id
- device_id
Expand Down Expand Up @@ -550,8 +664,8 @@ components:
job_type: sampling
shots: 1000
status: submitted
created_at: '2022-10-19T11:45:34'
updated_at: '2022-10-19T11:45:34'
created_at: '2022-10-19T11:45:34+09:00'
updated_at: '2022-10-19T11:45:34+09:00'
jobs.JobStatusUpdate:
type: object
properties:
Expand Down
15 changes: 14 additions & 1 deletion backend/oas/provider/paths/jobs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,19 @@ jobs:
required: true
description: "Device identifier"
schema: { type: string, example: "Kawasaki" }
- in: query
name: fields
description: |-
Allows to specify an exact list of job properties to fetch for a single job. Each element of the list must be a valid name of job property.
If parameter is specified and requested job field is not defined for a job null is returned.
If parameter is omitted all available job properties are returned. Undefined job properties (null properties) are not included in the response.
required: false
schema:
type: string
maxLength: 1024
example: "job_id,status,name"
- in: query
name: status
description: "Additional search parameter:<br/> Search jobs with specified status only"
Expand All @@ -33,7 +46,7 @@ jobs:
schema:
type: array
items:
$ref: "../schemas/jobs.yaml#/jobs.JobDef"
$ref: "../schemas/jobs.yaml#/jobs.GetJobsResponse"
"400":
description: Bad Request
content:
Expand Down
114 changes: 111 additions & 3 deletions backend/oas/provider/schemas/jobs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ jobs.JobDef:
updated_at:
type: string
format: date-time
example: 2022-10-19T11:45:34
example: 2022-10-19T11:45:34+09:00
required:
- job_id
- device_id
Expand Down Expand Up @@ -211,8 +211,116 @@ jobs.JobDef:
job_type: sampling
shots: 1000
status: submitted
created_at: 2022-10-19T11:45:34
updated_at: 2022-10-19T11:45:34
created_at: 2022-10-19T11:45:34+09:00
updated_at: 2022-10-19T11:45:34+09:00

jobs.GetJobsResponse:
type: object
properties:
job_id:
$ref: "#/jobs.JobId"
name:
type: string
example: Bell State Sampling
description:
type: string
example: Bell State Sampling Example
device_id:
type: string
example: Kawasaki
shots:
type: integer
minimum: 1
maximum: 1e7
example: "1000"
job_info:
$ref: "#/jobs.JobInfo"
transpiler_info:
type: string
example: >-
{
"qubit_allocation": {
"0"": 12,
"1": 16
},
"skip_transpilation": false,
"seed_transpilation": 873
}
simulator_info:
type: string
example: >-
{
"n_qubits": 5,
"n_nodes": 12,
"n_per_node": 2,
"seed_simulation": 39058567,
"simulation_opt": {
"optimization_method": "light",
"optimization_block_size": 1,
"optimization_swap_level": 1
}
}
mitigation_info:
type: string
example: |
{ "ro_error_mitigation": "pseudo_inverse" }
status:
$ref: "#/jobs.JobStatus"
created_at:
type: string
format: date-time
example: 2022-10-19T11:45:34+09:00
updated_at:
type: string
format: date-time
example: 2022-10-19T11:45:34+09:00
required: []
example:
job_id: 7af020f6-2e38-4d70-8cf0-4349650ea08c
name: Bell State Sampling
description: Bell State Sampling Example
device_id: Kawasaki
job_info:
desc:
job_type: sampling
code: >-
OPENQASM 3;
qubit[2] q;
bit[2] c;
h q[0];
cnot q[0], q[1];
c = measure q;
transpiled_code: null
result: null
reason: null
transpiler_info: >-
{
"qubit_allocation": {
"0": 12,
"1": 16
},
"skip_transpilation": false,
"seed_transpilation": 873
}
simulator_info: >-
{
"n_qubits": 5,
"n_nodes": 12,
"n_per_node": 2,
"seed_simulation": 39058567,
"simulation_opt": {
"optimization_method": "light",
"optimization_block_size": 1,
"optimization_swap_level": 1
}
}
mitigation_info: |
{ "ro_error_mitigation": "pseudo_inverse" }
job_type: sampling
shots: 1000
status: submitted
created_at: 2022-10-19T11:45:34+09:00
updated_at: 2022-10-19T11:45:34+09:00

jobs.JobStatusUpdate:
type: object
Expand Down
Loading

0 comments on commit 1de6fd3

Please sign in to comment.