REST API¶
In order to enable users and scripts to interface with SoTest deployments, a REST API provides access to different functionality.
The SoTest Web UI decides whether to return HTML or JSON based on the HTTP
request’s Accept
header. Using curl, for example, returning JSON is possible
using the -H
flag:
curl sotest.io/ -H 'Accept: application/json'
Some functionality is only available to users that have logged in first.
Login¶
API endpoints that require authentication use the basic access authentication method.
This means that there are two ways to authenticate via tools like
curl
:
The following examples assume that “Aladdin” is the user name and “OpenSesame” is the password.
URL Authentication¶
Username and password can be encoded in the URL when calling an API endpoint:
curl https://Aladdin:OpenSesame@opensource.sotest.io/path/to/api/endpoint
netrc
Authentication¶
SoTest login information can be stored in a netrc
file.
This file can either be stored in the user’s home folder as ~/.netrc
or
elsewhere.
Refer to the curl documentation
for more detailed information.
Examples:
# this call allows curl to lookup login information from ~/.netrc
curl --netrc https://opensource.sotest.io/path/to/api/endpoint
# this call provides a netrc file from elsewhere
curl --netrc-file /path/to/netrc-file \
https://opensource.sotest.io/path/to/api/endpoint
The netrc file would contain the following content:
machine opensource.sotest.io
login Aladdin
password OpenSesame
Create a Test Run¶
The POST endpoint for Test Run creation is /test_runs
and requires
authentication.
This endpoint assumes the following parameters:
Parameters¶
boot_files
: The .zip containing the binaries that shall be be booted on the hardware. Alternatively, if these binaries are already uploaded somewhere else, their URL can be specified withboot_files_url
.name
: Display name of the Test Run in the Web UI.url
: Display URL of the Test Run in the Web UI. This might for example be the URL of a pull request that is tested.config
: The YAML/JSON encoded project configuration as file upload.priority
: Optional integer field that describes the priority of the test run. Higher number means higher priority. Priorities can be negative. Default priority is0
.
Return Value¶
If authentication and Test Run creation were successful, the server returns a HTTP 200 status code and emits just the ID of the new Test Run.
Example Call¶
curl --netrc \
-F 'boot_files_url=https://my.artifacts.server/commit-123.zip' \
-F 'url=https://github.com/my-org/my-project/pull/123' \
-F 'name=Pull request #123' \
-F 'config=@/path/to/project_config.yaml' \
-X POST \
https://opensource.sotest.io/test_runs
Test Run Index¶
The route for the Test Run Index is /
. Like the Index page in the classical
Web UI, this page shows an overview over the most recent Test Runs.
Filtering and pagination are possible using the same mechanism as in the Web UI
although we aim to improve this and switch to a query parameter based approach
in the future. Please refer to the Help
button in the SoTest Web UI for more
information on filtering options.
The Test Run Index shows all Test Run information except for the boot_items
.
These can be viewed in the Test Run Results.
Example Call¶
curl sotest.io/ -H 'Accept: application/json'
Show second page and filter by user name Alice
:
curl "sotest.io/userName%20like%20Alice/2?" -H 'Accept: application/json'
Example Result¶
{
"test_runs" : [
{
"counts" : {
"aborted" : 0,
"failed" : 0,
"finished" : 1,
"passed" : 1,
"running" : 0,
"total" : 1
},
"creation_time" : "2022-04-27T13:02:34.396739Z",
"error_message" : null,
"fail_behavior" : "continue",
"prerequisites" : [],
"priority" : 0,
"project_config" : "boot_items:\n- boot_item_panic_patterns: []\n boot_item_timeout: 120\n exec: bzImage console=@{linux_terminal}\n load:\n - initrd\n name: Linux + initial RAM disk test 2\n extra_files: []\n iscsi: []\n boot_item_type: all\n tags: []\nboot_panic_patterns: []\nlocal_tags_list: null\nfail_behavior: continue\nextra_dependencies: []\n",
"project_path" : "http://localhost/tutorial-binaries.zip",
"self" : "/test_runs/2",
"status" : "success",
"test_run_id" : 2,
"test_run_name" : "Tutorial Test Run",
"url" : "https://docs.sotest.io/tutorial",
"user_name" : "Alice"
},
{
"counts" : {
"aborted" : 0,
"failed" : 0,
"finished" : 1,
"passed" : 1,
"running" : 0,
"total" : 1
},
"creation_time" : "2022-04-27T13:01:08.409878Z",
"error_message" : null,
"fail_behavior" : "continue",
"prerequisites" : [],
"priority" : 0,
"project_config" : "boot_items:\n- boot_item_panic_patterns: []\n boot_item_timeout: 120\n exec: bzImage console=@{linux_terminal}\n load:\n - initrd\n name: Linux + initial RAM disk test\n extra_files: []\n iscsi: []\n boot_item_type: all\n tags:\n - fancyNewTag\nboot_panic_patterns: []\nlocal_tags_list:\n- machine_name: qemu_machine\n local_tags:\n - fancyNewTag\n - fancyNewTag2\nfail_behavior: continue\nextra_dependencies: []\n",
"project_path" : "http://localhost/tutorial-binaries.zip",
"self" : "/test_runs/1",
"status" : "success",
"test_run_id" : 1,
"test_run_name" : "Tutorial Test Run",
"url" : "https://docs.sotest.io/tutorial",
"user_name" : "Test User"
}
]
}
Test Run Results¶
The results of a single Test Run, including the boot_items
, can be retrieved
at /test_runs/<id>
.
The test_states
for each Execution Item are not part of this view. They can
instead be retrieved in the Test Run Details page.
Example Call¶
curl sotest.io/test_runs/2 -H 'Accept: application/json'
Example Result¶
{
"boot_items" : [
{
"boot_source" : {
"bios" : {
"exec" : "bzImage console=@{linux_terminal}",
"load" : [
"initrd"
]
},
},
"execution_items" : [
{
"computed" : true,
"error" : null,
"exec_item_id" : 2,
"machine_name" : "qemu_machine",
"result" : "Successful",
"retries" : 0,
"self" : "/test_runs/2/exec_items/2"
}
],
"extra_files" : [],
"iscsi_drives" : [],
"name" : "Linux + initial RAM disk test 2",
"original_timeout" : 120,
"panic_patterns" : [],
"tags" : [],
"type" : "all"
}
],
"counts" : {
"aborted" : 0,
"failed" : 0,
"finished" : 1,
"passed" : 1,
"running" : 0,
"total" : 1
},
"creation_time" : "2022-04-27T13:02:34.396739Z",
"error_message" : null,
"fail_behavior" : "continue",
"prerequisites" : [],
"priority" : 0,
"project_config" : "boot_items:\n- boot_item_panic_patterns: []\n boot_item_timeout: 120\n exec: bzImage console=@{linux_terminal}\n load:\n - initrd\n name: Linux + initial RAM disk test 2\n extra_files: []\n iscsi: []\n boot_item_type: all\n tags: []\nboot_panic_patterns: []\nlocal_tags_list: null\nfail_behavior: continue\nextra_dependencies: []\n",
"project_path" : "http://localhost/tutorial-binaries.zip",
"self" : "/test_runs/2",
"status" : "success",
"test_run_id" : 2,
"test_run_name" : "Tutorial Test Run",
"url" : "https://docs.sotest.io/tutorial",
"user_name" : "Alice"
}
Query only the state of a Test Run¶
There’s an additional endpoint for querying only the status of a Test Run at
/test_runs/<id>/status
.
This endpoint assumes no other parameters.
Example Call¶
curl sotest.io/test_runs/<id>/status -H 'Accept: application/json'
Result¶
In case the Test Run exists, this endpoint returns a HTTP 200 status code along with the following JSON document:
"<status>"
<status>
is one of the following symbols:
unfinished
: Test run did not finish yet.success
: Test run finished without any test failures.fail
: Test run finished with one or more test failures.disabled
: Test run was disabled by user or general infrastructure failures.
If the Test Run doesn’t exist, HTTP 404 is returned.
Test Run Details¶
The Test Run Details page shows the Serial and Event Logs for one Execution Item.
It can be found at the following route:
/test_runs/<id>/exec_items/<exec_item_id>
.
When the test has been executed multiple times (for example due to failures or
resets), several test_states
exist and will all be shown here.
Example Call¶
curl sotest.io/test_runs/2/exec_items/3 -H 'Accept: application/json'
Example Result¶
{
"computed" : true,
"error" : null,
"exec_item_id" : 2,
"machine_name" : "qemu_machine",
"result" : "Successful",
"retries" : 0,
"self" : "/test_runs/2/exec_items/2",
"test_states" : [
{
"abort" : false,
"begin_line_time" : "2022-04-27T13:03:05.882198Z",
"boot_config" : "Ipxe config (ipxe-02-03-04-05-06-07.cfg):\n#!ipxe\nsleep 10\nkernel tftp://${next-server}/sotest/02-03-04-05-06-07/bzImage console=ttyS0 || goto fail\ninitrd tftp://${next-server}/sotest/02-03-04-05-06-07/initrd || goto fail\nboot\n:fail\necho kernel/initrd load fail\necho cannot boot\n:end\n",
"cases" : 1,
"creation_time" : "2022-04-27T13:02:39.94347Z",
"end_line_time" : "2022-04-27T13:03:05.942804Z",
"error_message" : [],
"event_logs" : [
{
"log" : "do power prepare of qemu_1",
"time" : "2022-04-27T13:02:39.959698Z",
"type" : "Power"
},
{
"log" : "start shell serial read of Custom Serial",
"time" : "2022-04-27T13:02:39.962392Z",
"type" : "Serial"
},
{
"log" : "allocate boot files",
"time" : "2022-04-27T13:02:39.966268Z",
"type" : "Power"
},
{
"log" : "Timeout",
"time" : "2022-04-27T13:03:11.01333Z",
"type" : "Error"
},
{
"log" : "start second listening session",
"time" : "2022-04-27T13:03:11.017357Z",
"type" : "Info"
},
{
"log" : "Timeout",
"time" : "2022-04-27T13:03:16.023369Z",
"type" : "Error"
},
{
"log" : "shutting down machine qemu_1",
"time" : "2022-04-27T13:03:16.047147Z",
"type" : "Power"
}
],
"fails" : 1,
"id" : 2,
"mac_address" : "02-03-04-05-06-07",
"machine_id" : "qemu_1",
"machine_name" : "qemu_machine",
"passes" : 1,
"post_time" : "2022-04-27T13:03:16.084505Z",
"protocol" : "SoTest 1",
"skips" : 0,
"test_logs" : [
{
"log" : "2022-04-27 13:02:40.1245 UTC: \u001bc\u001b[?7l\u001b[2J\u001b[0mSeaBIOS (version rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org)\n2022-04-27 13:02:40.1246 UTC: \n2022-04-27 13:02:40.1246 UTC: \n2022-04-27 13:02:40.1289 UTC: iPXE (http://ipxe.org) 00:03.0 CA00 PCI2.10 PnP PMM+07F8F290+07EEF290 CA00\n2022-04-27 13:02:40.1373 UTC: Press Ctrl-B to configure iPXE (PCI 00:03.0)... \n2022-04-27 13:02:40.1373 UTC: \n2022-04-27 13:02:40.1374 UTC: \n2022-04-27 13:02:40.1385 UTC: Booting from ROM...\n2022-04-27 13:02:40.2104 UTC: iPXE (PCI 00:03.0) starting execution...ok\n2022-04-27 13:02:40.2669 UTC: iPXE initialising devices...ok\n2022-04-27 13:02:40.2670 UTC: \n2022-04-27 13:02:40.2671 UTC: \n2022-04-27 13:02:40.2671 UTC: \n2022-04-27 13:02:40.2726 UTC: \u001b[0;1miPXE 1.20.1+ (g4bd0)\u001b[0m -- Open Source Network Boot Firmware -- \u001b[0;36mhttp://ipxe.org\n2022-04-27 13:02:40.2767 UTC: \u001b[0mFeatures: DNS HTTP iSCSI TFTP AoE ELF MBOOT PXE bzImage Menu PXEXT\n2022-04-27 13:02:40.2768 UTC: \n2022-04-27 13:02:43.3150 UTC: Press Ctrl-B for the iPXE command line...\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \bnet0: 02:03:04:05:06:07 using 82540em on 0000:00:03.0 (open)\n2022-04-27 13:02:43.3175 UTC: [Link:up, TX:0 TXE:0 RX:0 RXE:0]\n2022-04-27 13:02:46.4211 UTC: Configuring (net0 02:03:04:05:06:07)...... ok\n2022-04-27 13:02:46.4242 UTC: net0: 10.0.2.15/255.255.255.0 gw 10.0.2.2\n2022-04-27 13:02:46.4258 UTC: Next server: 10.0.2.2\n2022-04-27 13:02:46.4293 UTC: Filename: ipxe.kpxe\n2022-04-27 13:02:46.4447 UTC: tftp://10.0.2.2/ipxe.kpxe... ok\n2022-04-27 13:02:46.4602 UTC: ipxe.kpxe : 331555 bytes [PXE-NBP]\n2022-04-27 13:02:46.4639 UTC: PXE->EB: !PXE at 9C6C:0710, entry point at 9C6C:0160\n2022-04-27 13:02:46.4675 UTC: UNDI code segment 9C6C:0802, data segment 9CF0:2CE0 (625-639kB)\n2022-04-27 13:02:46.5108 UTC: UNDI device is PCI 00:03.0, type DIX+802.3\n2022-04-27 13:02:47.0273 UTC: 625kB free base memory after PXE unload\n2022-04-27 13:02:47.7225 UTC: iPXE initialising devices...ok\n2022-04-27 13:02:47.7226 UTC: \n2022-04-27 13:02:47.7226 UTC: \n2022-04-27 13:02:47.7227 UTC: \n2022-04-27 13:02:47.7398 UTC: \u001b[0;1miPXE 1.0.0+\u001b[0m -- Open Source Network Boot Firmware -- \u001b[0;36mhttp://ipxe.org\n2022-04-27 13:02:47.7571 UTC: \u001b[0mFeatures: DNS HTTP iSCSI TFTP SRP AoE ELF MBOOT PXE bzImage Menu PXEXT\n2022-04-27 13:02:50.8735 UTC: Configuring (net0 02:03:04:05:06:07)...... ok\n2022-04-27 13:02:50.9244 UTC: tftp://10.0.2.2/ipxe-02-03-04-05-06-07.cfg... ok\n2022-04-27 13:03:01.4979 UTC: tftp://10.0.2.2/sotest/02-03-04-05-06-07/bzImage... ok\n2022-04-27 13:03:01.9450 UTC: tftp://10.0.2.2/sotest/02-03-04-05-06-07/initrd... ok\n2022-04-27 13:03:02.9634 UTC: Probing EDD (edd=off to disable)... o\u001bc\u001b[?7l\u001b[2J[ 0.000000] Linux version 5.15.4 (nixbld@localhost) (gcc (GCC) 10.3.0, GNU ld (GNU Binutils) 2.35.2) #1-NixOS SMP Sun Nov 21 12:44:15 UTC 2021\n2022-04-27 13:03:02.9641 UTC: [ 0.000000] Command line: console=ttyS0\n2022-04-27 13:03:02.9647 UTC: [ 0.000000] x86/fpu: x87 FPU will use FXSAVE\n2022-04-27 13:03:02.9654 UTC: [ 0.000000] signal: max sigframe size: 1440\n2022-04-27 13:03:02.9660 UTC: [ 0.000000] BIOS-provided physical RAM map:\n2022-04-27 13:03:02.9690 UTC: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009c3ff] usable\n2022-04-27 13:03:02.9690 UTC: [ 0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved\n2022-04-27 13:03:02.9690 UTC: [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x0000000007e9dfff] usable\n2022-04-27 13:03:02.9691 UTC: [ 0.000000] BIOS-e820: [mem 0x0000000007f8f000-0x0000000007fdffff] usable\n2022-04-27 13:03:02.9691 UTC: [ 0.000000] BIOS-e820: [mem 0x0000000007fe0000-0x0000000007ffffff] reserved\n2022-04-27 13:03:02.9691 UTC: [ 0.000000] BIOS-e820: [mem 0x00000000fffc0000-0x00000000ffffffff] reserved\n2022-04-27 13:03:02.9691 UTC: [ 0.000000] NX (Execute Disable) protection: active\n2022-04-27 13:03:02.9692 UTC: [ 0.000000] SMBIOS 2.8 present.\n2022-04-27 13:03:02.9692 UTC: [ 0.000000] DMI: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org 04/01/2014\n2022-04-27 13:03:02.9692 UTC: [ 0.000000] tsc: Fast TSC calibration using PIT\n2022-04-27 13:03:02.9692 UTC: [ 0.000000] tsc: Detected 2803.184 MHz processor\n2022-04-27 13:03:02.9692 UTC: [ 0.014830] last_pfn = 0x7fe0 max_arch_pfn = 0x400000000\n2022-04-27 13:03:02.9693 UTC: [ 0.016536] x86/PAT: Configuration [0-7]: WB WC UC- UC WB WP UC- WT \n2022-04-27 13:03:02.9693 UTC: [ 0.044193] found SMP MP-table at [mem 0x000f5ab0-0x000f5abf]\n2022-04-27 13:03:02.9693 UTC: [ 0.049340] RAMDISK: [mem 0x07052000-0x07d29fff]\n2022-04-27 13:03:02.9693 UTC: [ 0.049724] ACPI: Early table checksum verification disabled\n2022-04-27 13:03:02.9694 UTC: [ 0.050078] ACPI: RSDP 0x00000000000F58D0 000014 (v00 BOCHS )\n2022-04-27 13:03:02.9694 UTC: [ 0.050318] ACPI: RSDT 0x0000000007FE1905 000034 (v01 BOCHS BXPC 00000001 BXPC 00000001)\n2022-04-27 13:03:02.9696 UTC: [ 0.050834] ACPI: FACP 0x0000000007FE17B9 000074 (v01 BOCHS BXPC 00000001 BXPC 00000001)\n2022-04-27 13:03:02.9708 UTC: [ 0.051276] ACPI: DSDT 0x0000000007FE0040 001779 (v01 BOCHS BXPC 00000001 BXPC 00000001)\n2022-04-27 13:03:02.9716 UTC: [ 0.051360] ACPI: FACS 0x0000000007FE0000 000040\n2022-04-27 13:03:02.9728 UTC: [ 0.051411] ACPI: APIC 0x0000000007FE182D 000078 (v01 BOCHS BXPC 00000001 BXPC 00000001)\n2022-04-27 13:03:02.9741 UTC: [ 0.051440] ACPI: HPET 0x0000000007FE18A5 000038 (v01 BOCHS BXPC 00000001 BXPC 00000001)\n2022-04-27 13:03:02.9770 UTC: [ 0.051466] ACPI: WAET 0x0000000007FE18DD 000028 (v01 BOCHS BXPC 00000001 BXPC 00000001)\n2022-04-27 13:03:02.9770 UTC: [ 0.051537] ACPI: Reserving FACP table memory at [mem 0x7fe17b9-0x7fe182c]\n2022-04-27 13:03:02.9770 UTC: [ 0.051563] ACPI: Reserving DSDT table memory at [mem 0x7fe0040-0x7fe17b8]\n2022-04-27 13:03:02.9771 UTC: [ 0.051573] ACPI: Reserving FACS table memory at [mem 0x7fe0000-0x7fe003f]\n2022-04-27 13:03:02.9771 UTC: [ 0.051581] ACPI: Reserving APIC table memory at [mem 0x7fe182d-0x7fe18a4]\n2022-04-27 13:03:02.9771 UTC: [ 0.051589] ACPI: Reserving HPET table memory at [mem 0x7fe18a5-0x7fe18dc]\n2022-04-27 13:03:02.9771 UTC: [ 0.051596] ACPI: Reserving WAET table memory at [mem 0x7fe18dd-0x7fe1904]\n2022-04-27 13:03:02.9771 UTC: [ 0.053607] No NUMA configuration found\n2022-04-27 13:03:02.9771 UTC: [ 0.053638] Faking a node at [mem 0x0000000000000000-0x0000000007fdffff]\n2022-04-27 13:03:02.9772 UTC: [ 0.054152] NODE_DATA(0) allocated [mem 0x07fdb000-0x07fdffff]\n2022-04-27 13:03:02.9772 UTC: [ 0.056121] Zone ranges:\n2022-04-27 13:03:02.9772 UTC: [ 0.056158] DMA [mem 0x0000000000001000-0x0000000000ffffff]\n2022-04-27 13:03:02.9772 UTC: [ 0.056227] DMA32 [mem 0x0000000001000000-0x0000000007fdffff]\n2022-04-27 13:03:02.9772 UTC: [ 0.056243] Normal empty\n2022-04-27 13:03:02.9773 UTC: [ 0.056259] Device empty\n2022-04-27 13:03:02.9773 UTC: [ 0.056272] Movable zone start for each node\n2022-04-27 13:03:02.9773 UTC: [ 0.056309] Early memory node ranges\n2022-04-27 13:03:02.9773 UTC: [ 0.056334] node 0: [mem 0x0000000000001000-0x000000000009bfff]\n2022-04-27 13:03:02.9773 UTC: [ 0.056454] node 0: [mem 0x0000000000100000-0x0000000007e9dfff]\n2022-04-27 13:03:02.9773 UTC: [ 0.056482] node 0: [mem 0x0000000007f8f000-0x0000000007fdffff]\n2022-04-27 13:03:02.9773 UTC: [ 0.056635] Initmem setup node 0 [mem 0x0000000000001000-0x0000000007fdffff]\n2022-04-27 13:03:02.9773 UTC: [ 0.057262] On node 0, zone DMA: 1 pages in unavailable ranges\n2022-04-27 13:03:02.9780 UTC: [ 0.057447] On node 0, zone DMA: 100 pages in unavailable ranges\n2022-04-27 13:03:02.9787 UTC: [ 0.058005] On node 0, zone DMA32: 241 pages in unavailable ranges\n2022-04-27 13:03:02.9794 UTC: [ 0.058035] On node 0, zone DMA32: 32 pages in unavailable ranges\n2022-04-27 13:03:02.9799 UTC: [ 0.058382] ACPI: PM-Timer IO Port: 0x608\n2022-04-27 13:03:02.9805 UTC: [ 0.058768] ACPI: LAPIC_NMI (acpi_id[0xff] dfl dfl lint[0x1])\n2022-04-27 13:03:02.9813 UTC: [ 0.059080] IOAPIC[0]: apic_id 0, version 32, address 0xfec00000, GSI 0-23\n2022-04-27 13:03:02.9820 UTC: [ 0.059190] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)\n2022-04-27 13:03:02.9838 UTC: [ 0.059405] ACPI: INT_SRC_OVR (bus 0 bus_irq 5 global_irq 5 high level)\n2022-04-27 13:03:02.9838 UTC: [ 0.059438] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)\n2022-04-27 13:03:02.9839 UTC: [ 0.059514] ACPI: INT_SRC_OVR (bus 0 bus_irq 10 global_irq 10 high level)\n2022-04-27 13:03:02.9839 UTC: [ 0.059527] ACPI: INT_SRC_OVR (bus 0 bus_irq 11 global_irq 11 high level)\n2022-04-27 13:03:02.9839 UTC: [ 0.059672] ACPI: Using ACPI (MADT) for SMP configuration information\n2022-04-27 13:03:02.9839 UTC: [ 0.059716] ACPI: HPET id: 0x8086a201 base: 0xfed00000\n2022-04-27 13:03:02.9839 UTC: [ 0.060000] smpboot: Allowing 1 CPUs, 0 hotplug CPUs\n2022-04-27 13:03:02.9840 UTC: [ 0.060754] PM: hibernation: Registered nosave memory: [mem 0x00000000-0x00000fff]\n2022-04-27 13:03:02.9840 UTC: [ 0.060799] PM: hibernation: Registered nosave memory: [mem 0x0009c000-0x000effff]\n2022-04-27 13:03:02.9840 UTC: [ 0.060819] PM: hibernation: Registered nosave memory: [mem 0x000f0000-0x000fffff]\n2022-04-27 13:03:02.9840 UTC: [ 0.060832] PM: hibernation: Registered nosave memory: [mem 0x07e9e000-0x07f8efff]\n2022-04-27 13:03:02.9840 UTC: [ 0.060926] [mem 0x08000000-0xfffbffff] available for PCI devices\n2022-04-27 13:03:02.9840 UTC: [ 0.060956] Booting paravirtualized kernel on bare hardware\n2022-04-27 13:03:02.9851 UTC: [ 0.061241] clocksource: refined-jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1910969940391419 ns\n2022-04-27 13:03:02.9860 UTC: [ 0.069159] setup_percpu: NR_CPUS:384 nr_cpumask_bits:384 nr_cpu_ids:1 nr_node_ids:1\n2022-04-27 13:03:02.9868 UTC: [ 0.075167] percpu: Embedded 55 pages/cpu s186456 r8192 d30632 u2097152\n2022-04-27 13:03:02.9876 UTC: [ 0.077672] Built 1 zonelists, mobility grouping on. Total pages: 31727\n2022-04-27 13:03:02.9900 UTC: [ 0.077699] Policy zone: DMA32\n2022-04-27 13:03:02.9900 UTC: [ 0.077867] Kernel command line: console=ttyS0\n2022-04-27 13:03:02.9900 UTC: [ 0.097366] Dentry cache hash table entries: 16384 (order: 5, 131072 bytes, linear)\n2022-04-27 13:03:02.9900 UTC: [ 0.112957] Inode-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)\n2022-04-27 13:03:02.9901 UTC: [ 0.114859] mem auto-init: stack:off, heap alloc:off, heap free:off\n2022-04-27 13:03:02.9901 UTC: [ 0.119871] Memory: 82228K/129576K available (12295K kernel code, 2281K rwdata, 6056K rodata, 1760K init, 2644K bss, 47088K reserved, 0K cma-reserved)\n2022-04-27 13:03:02.9901 UTC: [ 0.123173] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1\n2022-04-27 13:03:02.9901 UTC: [ 0.124182] ftrace: allocating 34984 entries in 137 pages\n2022-04-27 13:03:02.9901 UTC: [ 0.199637] ftrace: allocated 137 pages with 3 groups\n2022-04-27 13:03:02.9902 UTC: [ 0.206441] rcu: Hierarchical RCU implementation.\n2022-04-27 13:03:02.9902 UTC: [ 0.206466] rcu: \tRCU event tracing is enabled.\n2022-04-27 13:03:02.9902 UTC: [ 0.206490] rcu: \tRCU restricting CPUs from NR_CPUS=384 to nr_cpu_ids=1.\n2022-04-27 13:03:02.9902 UTC: [ 0.206568] \tTrampoline variant of Tasks RCU enabled.\n2022-04-27 13:03:02.9902 UTC: [ 0.206576] \tRude variant of Tasks RCU enabled.\n2022-04-27 13:03:02.9902 UTC: [ 0.206583] \tTracing variant of Tasks RCU enabled.\n2022-04-27 13:03:02.9903 UTC: [ 0.206639] rcu: RCU calculated value of scheduler-enlistment delay is 100 jiffies.\n2022-04-27 13:03:02.9903 UTC: [ 0.206671] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1\n2022-04-27 13:03:02.9903 UTC: [ 0.226948] NR_IRQS: 24832, nr_irqs: 256, preallocated irqs: 16\n2022-04-27 13:03:02.9903 UTC: [ 0.236660] random: get_random_bytes called from start_kernel+0x4b0/0x680 with crng_init=0\n2022-04-27 13:03:02.9903 UTC: [ 0.240920] Console: colour VGA+ 80x25\n2022-04-27 13:03:02.9909 UTC: [ 0.271708] printk: console [ttyS0] enabled\n2022-04-27 13:03:02.9923 UTC: [ 0.273081] ACPI: Core revision 20210730\n2022-04-27 13:03:02.9978 UTC: [ 0.277999] clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604467 ns\n2022-04-27 13:03:03.0014 UTC: [ 0.282134] APIC: Switch to symmetric I/O mode setup\n2022-04-27 13:03:03.0058 UTC: [ 0.286231] ..TIMER: vector=0x30 apic1=0 pin1=2 apic2=-1 pin2=-1\n2022-04-27 13:03:03.0120 UTC: [ 0.292025] clocksource: tsc-early: mask: 0xffffffffffffffff max_cycles: 0x2868007ced8, max_idle_ns: 440795242384 ns\n2022-04-27 13:03:03.0145 UTC: [ 0.293956] Calibrating delay loop (skipped), value calculated using timer frequency.. 5606.36 BogoMIPS (lpj=2803184)\n2022-04-27 13:03:03.0157 UTC: [ 0.295754] pid_max: default: 32768 minimum: 301\n2022-04-27 13:03:03.0172 UTC: [ 0.297678] LSM: Security Framework initializing\n2022-04-27 13:03:03.0183 UTC: [ 0.299003] Yama: becoming mindful.\n2022-04-27 13:03:03.0194 UTC: [ 0.300157] SELinux: Initializing.\n2022-04-27 13:03:03.0209 UTC: [ 0.301095] Mount-cache hash table entries: 512 (order: 0, 4096 bytes, linear)\n2022-04-27 13:03:03.0219 UTC: [ 0.301650] Mountpoint-cache hash table entries: 512 (order: 0, 4096 bytes, linear)\n2022-04-27 13:03:03.0420 UTC: [ 0.322479] process: using AMD E400 aware idle routine\n2022-04-27 13:03:03.0430 UTC: [ 0.322759] Last level iTLB entries: 4KB 512, 2MB 255, 4MB 127\n2022-04-27 13:03:03.0438 UTC: [ 0.323636] Last level dTLB entries: 4KB 512, 2MB 255, 4MB 127, 1GB 0\n2022-04-27 13:03:03.0450 UTC: [ 0.324831] Spectre V1 : Mitigation: usercopy/swapgs barriers and __user pointer sanitization\n2022-04-27 13:03:03.0458 UTC: [ 0.325718] Spectre V2 : Mitigation: Full AMD retpoline\n2022-04-27 13:03:03.0469 UTC: [ 0.326640] Spectre V2 : Spectre v2 / SpectreRSB mitigation: Filling RSB on context switch\n2022-04-27 13:03:03.2378 UTC: [ 0.518047] Freeing SMP alternatives memory: 32K\n2022-04-27 13:03:03.2580 UTC: [ 0.538681] random: fast init done\n2022-04-27 13:03:03.3514 UTC: [ 0.631264] smpboot: CPU0: AMD QEMU Virtual CPU version 2.5+ (family: 0xf, model: 0x6b, stepping: 0x1)\n2022-04-27 13:03:03.3578 UTC: [ 0.637032] Performance Events: PMU not available due to virtualization, using software events only.\n2022-04-27 13:03:03.3597 UTC: [ 0.639651] rcu: Hierarchical SRCU implementation.\n2022-04-27 13:03:03.3650 UTC: [ 0.645093] smp: Bringing up secondary CPUs ...\n2022-04-27 13:03:03.3657 UTC: [ 0.645685] smp: Brought up 1 node, 1 CPU\n2022-04-27 13:03:03.3662 UTC: [ 0.646247] smpboot: Max logical packages: 1\n2022-04-27 13:03:03.3672 UTC: [ 0.646675] smpboot: Total of 1 processors activated (5606.36 BogoMIPS)\n2022-04-27 13:03:03.3764 UTC: [ 0.656580] devtmpfs: initialized\n2022-04-27 13:03:03.3793 UTC: [ 0.659350] x86/mm: Memory block size: 128MB\n2022-04-27 13:03:03.3841 UTC: [ 0.663537] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns\n2022-04-27 13:03:03.3850 UTC: [ 0.663738] futex hash table entries: 256 (order: 2, 16384 bytes, linear)\n2022-04-27 13:03:03.3878 UTC: [ 0.666819] pinctrl core: initialized pinctrl subsystem\n2022-04-27 13:03:03.4012 UTC: [ 0.680012] NET: Registered PF_NETLINK/PF_ROUTE protocol family\n2022-04-27 13:03:03.4040 UTC: [ 0.682960] audit: initializing netlink subsys (disabled)\n2022-04-27 13:03:03.4082 UTC: [ 0.687054] thermal_sys: Registered thermal governor 'bang_bang'\n2022-04-27 13:03:03.4093 UTC: [ 0.687097] thermal_sys: Registered thermal governor 'step_wise'\n2022-04-27 13:03:03.4104 UTC: [ 0.687841] audit: type=2000 audit(1651064582.402:1): state=initialized audit_enabled=0 res=1\n2022-04-27 13:03:03.4115 UTC: [ 0.689846] thermal_sys: Registered thermal governor 'user_space'\n2022-04-27 13:03:03.4120 UTC: [ 0.689987] cpuidle: using governor menu\n2022-04-27 13:03:03.4132 UTC: [ 0.692277] ACPI: bus type PCI registered\n2022-04-27 13:03:03.4141 UTC: [ 0.692697] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5\n2022-04-27 13:03:03.4166 UTC: [ 0.695549] PCI: Using configuration type 1 for base access\n2022-04-27 13:03:03.4254 UTC: [ 0.704557] Kprobes globally optimized\n2022-04-27 13:03:03.4283 UTC: [ 0.707136] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages\n2022-04-27 13:03:03.4388 UTC: [ 0.717886] ACPI: Added _OSI(Module Device)\n2022-04-27 13:03:03.4394 UTC: [ 0.718509] ACPI: Added _OSI(Processor Device)\n2022-04-27 13:03:03.4403 UTC: [ 0.718905] ACPI: Added _OSI(3.0 _SCP Extensions)\n2022-04-27 13:03:03.4409 UTC: [ 0.719663] ACPI: Added _OSI(Processor Aggregator Device)\n2022-04-27 13:03:03.4416 UTC: [ 0.720695] ACPI: Added _OSI(Linux-Dell-Video)\n2022-04-27 13:03:03.4422 UTC: [ 0.721234] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio)\n2022-04-27 13:03:03.4428 UTC: [ 0.721630] ACPI: Added _OSI(Linux-HPI-Hybrid-Graphics)\n2022-04-27 13:03:03.4539 UTC: [ 0.732769] ACPI: 1 ACPI AML tables successfully acquired and loaded\n2022-04-27 13:03:03.4657 UTC: [ 0.744921] ACPI: Interpreter enabled\n2022-04-27 13:03:03.4670 UTC: [ 0.746101] ACPI: PM: (supports S0 S3 S4 S5)\n2022-04-27 13:03:03.4677 UTC: [ 0.746660] ACPI: Using IOAPIC for interrupt routing\n2022-04-27 13:03:03.4690 UTC: [ 0.747639] PCI: Using host bridge windows from ACPI; if necessary, use \"pci=nocrs\" and report a bug\n2022-04-27 13:03:03.4706 UTC: [ 0.749619] ACPI: Enabled 2 GPEs in block 00 to 0F\n2022-04-27 13:03:03.4935 UTC: [ 0.772121] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])\n2022-04-27 13:03:03.4949 UTC: [ 0.772947] acpi PNP0A03:00: _OSC: OS supports [ASPM ClockPM Segments MSI HPX-Type3]\n2022-04-27 13:03:03.4966 UTC: [ 0.774996] acpi PNP0A03:00: fail to add MMCONFIG information, can't access extended PCI configuration space under this bridge.\n2022-04-27 13:03:03.4998 UTC: [ 0.778981] acpiphp: Slot [3] registered\n2022-04-27 13:03:03.5005 UTC: [ 0.779652] acpiphp: Slot [4] registered\n2022-04-27 13:03:03.5011 UTC: [ 0.780240] acpiphp: Slot [5] registered\n2022-04-27 13:03:03.5016 UTC: [ 0.780698] acpiphp: Slot [6] registered\n2022-04-27 13:03:03.5022 UTC: [ 0.781226] acpiphp: Slot [7] registered\n2022-04-27 13:03:03.5027 UTC: [ 0.781696] acpiphp: Slot [8] registered\n2022-04-27 13:03:03.5032 UTC: [ 0.782230] acpiphp: Slot [9] registered\n2022-04-27 13:03:03.5038 UTC: [ 0.782701] acpiphp: Slot [10] registered\n2022-04-27 13:03:03.5044 UTC: [ 0.783254] acpiphp: Slot [11] registered\n2022-04-27 13:03:03.5050 UTC: [ 0.783707] acpiphp: Slot [12] registered\n2022-04-27 13:03:03.5056 UTC: [ 0.784708] acpiphp: Slot [13] registered\n2022-04-27 13:03:03.5062 UTC: [ 0.785270] acpiphp: Slot [14] registered\n2022-04-27 13:03:03.5068 UTC: [ 0.785695] acpiphp: Slot [15] registered\n2022-04-27 13:03:03.5073 UTC: [ 0.786260] acpiphp: Slot [16] registered\n2022-04-27 13:03:03.5080 UTC: [ 0.786699] acpiphp: Slot [17] registered\n2022-04-27 13:03:03.5080 UTC: [ 0.786959] acpiphp: Slot [18] registered\n2022-04-27 13:03:03.5080 UTC: [ 0.787092] acpiphp: Slot [19] registered\n2022-04-27 13:03:03.5085 UTC: [ 0.787629] acpiphp: Slot [20] registered\n2022-04-27 13:03:03.5100 UTC: [ 0.788159] acpiphp: Slot [21] registered\n2022-04-27 13:03:03.5100 UTC: [ 0.788697] acpiphp: Slot [22] registered\n2022-04-27 13:03:03.5100 UTC: [ 0.788844] acpiphp: Slot [23] registered\n2022-04-27 13:03:03.5100 UTC: [ 0.788988] acpiphp: Slot [24] registered\n2022-04-27 13:03:03.5101 UTC: [ 0.789126] acpiphp: Slot [25] registered\n2022-04-27 13:03:03.5101 UTC: [ 0.789273] acpiphp: Slot [26] registered\n2022-04-27 13:03:03.5101 UTC: [ 0.789410] acpiphp: Slot [27] registered\n2022-04-27 13:03:03.5107 UTC: [ 0.789689] acpiphp: Slot [28] registered\n2022-04-27 13:03:03.5113 UTC: [ 0.790271] acpiphp: Slot [29] registered\n2022-04-27 13:03:03.5119 UTC: [ 0.790697] acpiphp: Slot [30] registered\n2022-04-27 13:03:03.5125 UTC: [ 0.791626] acpiphp: Slot [31] registered\n2022-04-27 13:03:03.5132 UTC: [ 0.792382] PCI host bridge to bus 0000:00\n2022-04-27 13:03:03.5151 UTC: [ 0.792723] pci_bus 0000:00: root bus resource [io 0x0000-0x0cf7 window]\n2022-04-27 13:03:03.5173 UTC: [ 0.795344] pci_bus 0000:00: root bus resource [io 0x0d00-0xffff window]\n2022-04-27 13:03:03.5190 UTC: [ 0.795630] pci_bus 0000:00: root bus resource [mem 0x000a0000-0x000bffff window]\n2022-04-27 13:03:03.5190 UTC: [ 0.796628] pci_bus 0000:00: root bus resource [mem 0x08000000-0xfebfffff window]\n2022-04-27 13:03:03.5210 UTC: [ 0.796772] pci_bus 0000:00: root bus resource [mem 0x100000000-0x17fffffff window]\n2022-04-27 13:03:03.5220 UTC: [ 0.798738] pci_bus 0000:00: root bus resource [bus 00-ff]\n2022-04-27 13:03:03.5253 UTC: [ 0.803016] pci 0000:00:00.0: [8086:1237] type 00 class 0x060000\n2022-04-27 13:03:03.5398 UTC: [ 0.816775] pci 0000:00:01.0: [8086:7000] type 00 class 0x060100\n2022-04-27 13:03:03.5436 UTC: [ 0.819838] pci 0000:00:01.1: [8086:7010] type 00 class 0x010180\n2022-04-27 13:03:03.5489 UTC: [ 0.825201] pci 0000:00:01.1: reg 0x20: [io 0xc040-0xc04f]\n2022-04-27 13:03:03.5534 UTC: [ 0.828158] pci 0000:00:01.1: legacy IDE quirk: reg 0x10: [io 0x01f0-0x01f7]\n2022-04-27 13:03:03.5560 UTC: [ 0.828654] pci 0000:00:01.1: legacy IDE quirk: reg 0x14: [io 0x03f6]\n2022-04-27 13:03:03.5560 UTC: [ 0.829654] pci 0000:00:01.1: legacy IDE quirk: reg 0x18: [io 0x0170-0x0177]\n2022-04-27 13:03:03.5560 UTC: [ 0.829812] pci 0000:00:01.1: legacy IDE quirk: reg 0x1c: [io 0x0376]\n2022-04-27 13:03:03.5632 UTC: [ 0.832838] pci 0000:00:01.3: [8086:7113] type 00 class 0x068000\n2022-04-27 13:03:03.5658 UTC: [ 0.834062] pci 0000:00:01.3: quirk: [io 0x0600-0x063f] claimed by PIIX4 ACPI\n2022-04-27 13:03:03.5682 UTC: [ 0.834657] pci 0000:00:01.3: quirk: [io 0x0700-0x070f] claimed by PIIX4 SMB\n2022-04-27 13:03:03.5728 UTC: [ 0.838682] pci 0000:00:02.0: [1234:1111] type 00 class 0x030000\n2022-04-27 13:03:03.5757 UTC: [ 0.840821] pci 0000:00:02.0: reg 0x10: [mem 0xfd000000-0xfdffffff pref]\n2022-04-27 13:03:03.5789 UTC: [ 0.845060] pci 0000:00:02.0: reg 0x18: [mem 0xfebf0000-0xfebf0fff]\n2022-04-27 13:03:03.5846 UTC: [ 0.849637] pci 0000:00:02.0: reg 0x30: [mem 0xfebe0000-0xfebeffff pref]\n2022-04-27 13:03:03.5926 UTC: [ 0.857988] pci 0000:00:03.0: [8086:100e] type 00 class 0x020000\n2022-04-27 13:03:03.5962 UTC: [ 0.859815] pci 0000:00:03.0: reg 0x10: [mem 0xfebc0000-0xfebdffff]\n2022-04-27 13:03:03.5987 UTC: [ 0.861637] pci 0000:00:03.0: reg 0x14: [io 0xc000-0xc03f]\n2022-04-27 13:03:03.6076 UTC: [ 0.868783] pci 0000:00:03.0: reg 0x30: [mem 0xfeb80000-0xfebbffff pref]\n2022-04-27 13:03:03.6157 UTC: [ 0.877631] ACPI: PCI: Interrupt link LNKA configured for IRQ 10\n2022-04-27 13:03:03.6169 UTC: [ 0.878860] ACPI: PCI: Interrupt link LNKB configured for IRQ 10\n2022-04-27 13:03:03.6179 UTC: [ 0.879886] ACPI: PCI: Interrupt link LNKC configured for IRQ 11\n2022-04-27 13:03:03.6189 UTC: [ 0.880909] ACPI: PCI: Interrupt link LNKD configured for IRQ 11\n2022-04-27 13:03:03.6198 UTC: [ 0.881767] ACPI: PCI: Interrupt link LNKS configured for IRQ 9\n2022-04-27 13:03:03.6220 UTC: [ 0.884008] iommu: Default domain type: Translated \n2022-04-27 13:03:03.6229 UTC: [ 0.884653] iommu: DMA domain TLB invalidation policy: lazy mode \n2022-04-27 13:03:03.6262 UTC: [ 0.888169] pci 0000:00:02.0: vgaarb: setting as boot VGA device\n2022-04-27 13:03:03.6273 UTC: [ 0.888619] pci 0000:00:02.0: vgaarb: VGA device added: decodes=io+mem,owns=io+mem,locks=none\n2022-04-27 13:03:03.6281 UTC: [ 0.888659] pci 0000:00:02.0: vgaarb: bridge control possible\n2022-04-27 13:03:03.6285 UTC: [ 0.889698] vgaarb: loaded\n2022-04-27 13:03:03.6366 UTC: [ 0.897870] NetLabel: Initializing\n2022-04-27 13:03:03.6372 UTC: [ 0.898341] NetLabel: domain hash size = 128\n2022-04-27 13:03:03.6380 UTC: [ 0.898633] NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO\n2022-04-27 13:03:03.6393 UTC: [ 0.900172] NetLabel: unlabeled traffic allowed by default\n2022-04-27 13:03:03.6399 UTC: [ 0.900654] PCI: Using ACPI for IRQ routing\n2022-04-27 13:03:03.6415 UTC: [ 0.902475] hpet: 3 channels of 0 reserved for per-cpu timers\n2022-04-27 13:03:03.6424 UTC: [ 0.902798] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0\n2022-04-27 13:03:03.6431 UTC: [ 0.903648] hpet0: 3 comparators, 64-bit 100.000000 MHz counter\n2022-04-27 13:03:03.6478 UTC: [ 0.908125] clocksource: Switched to clocksource tsc-early\n2022-04-27 13:03:03.6911 UTC: [ 0.951289] VFS: Disk quotas dquot_6.6.0\n2022-04-27 13:03:03.6922 UTC: [ 0.952081] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)\n2022-04-27 13:03:03.7037 UTC: [ 0.964043] pnp: PnP ACPI init\n2022-04-27 13:03:03.7077 UTC: [ 0.967864] pnp: PnP ACPI: found 6 devices\n2022-04-27 13:03:03.7240 UTC: [ 0.982921] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns\n2022-04-27 13:03:03.7272 UTC: [ 0.986970] NET: Registered PF_INET protocol family\n2022-04-27 13:03:03.7291 UTC: [ 0.988965] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)\n2022-04-27 13:03:03.7400 UTC: [ 0.997748] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)\n2022-04-27 13:03:03.7430 UTC: [ 1.001542] TCP established hash table entries: 1024 (order: 1, 8192 bytes, linear)\n2022-04-27 13:03:03.7430 UTC: [ 1.003449] TCP bind hash table entries: 1024 (order: 2, 16384 bytes, linear)\n2022-04-27 13:03:03.7447 UTC: [ 1.003820] TCP: Hash tables configured (established 1024 bind 1024)\n2022-04-27 13:03:03.7493 UTC: [ 1.008602] MPTCP token hash table entries: 256 (order: 0, 6144 bytes, linear)\n2022-04-27 13:03:03.7525 UTC: [ 1.010613] UDP hash table entries: 256 (order: 1, 8192 bytes, linear)\n2022-04-27 13:03:03.7551 UTC: [ 1.013814] UDP-Lite hash table entries: 256 (order: 1, 8192 bytes, linear)\n2022-04-27 13:03:03.7646 UTC: [ 1.024628] NET: Registered PF_UNIX/PF_LOCAL protocol family\n2022-04-27 13:03:03.7655 UTC: [ 1.025599] NET: Registered PF_XDP protocol family\n2022-04-27 13:03:03.7668 UTC: [ 1.026724] pci_bus 0000:00: resource 4 [io 0x0000-0x0cf7 window]\n2022-04-27 13:03:03.7676 UTC: [ 1.027531] pci_bus 0000:00: resource 5 [io 0x0d00-0xffff window]\n2022-04-27 13:03:03.7684 UTC: [ 1.028304] pci_bus 0000:00: resource 6 [mem 0x000a0000-0x000bffff window]\n2022-04-27 13:03:03.7692 UTC: [ 1.029126] pci_bus 0000:00: resource 7 [mem 0x08000000-0xfebfffff window]\n2022-04-27 13:03:03.7700 UTC: [ 1.029927] pci_bus 0000:00: resource 8 [mem 0x100000000-0x17fffffff window]\n2022-04-27 13:03:03.7712 UTC: [ 1.031213] pci 0000:00:01.0: PIIX3: Enabling Passive Release\n2022-04-27 13:03:03.7722 UTC: [ 1.032014] pci 0000:00:00.0: Limiting direct PCI/PCI transfers\n2022-04-27 13:03:03.7730 UTC: [ 1.033035] pci 0000:00:01.0: Activating ISA DMA hang workarounds\n2022-04-27 13:03:03.7738 UTC: [ 1.033860] pci 0000:00:02.0: Video device with shadowed ROM at [mem 0x000c0000-0x000dffff]\n2022-04-27 13:03:03.7739 UTC: [ 1.034377] PCI: CLS 0 bytes, default 64\n2022-04-27 13:03:03.7777 UTC: [ 1.037711] Trying to unpack rootfs image as initramfs...\n2022-04-27 13:03:03.7851 UTC: [ 1.045192] Initialise system trusted keyrings\n2022-04-27 13:03:03.7909 UTC: [ 1.050823] workingset: timestamp_bits=40 max_order=15 bucket_order=0\n2022-04-27 13:03:03.8055 UTC: [ 1.065839] zbud: loaded\n2022-04-27 13:03:03.8152 UTC: [ 1.075352] Key type asymmetric registered\n2022-04-27 13:03:03.8197 UTC: [ 1.079787] Asymmetric key parser 'x509' registered\n2022-04-27 13:03:03.8208 UTC: [ 1.080684] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)\n2022-04-27 13:03:03.8261 UTC: [ 1.086185] io scheduler mq-deadline registered\n2022-04-27 13:03:03.8266 UTC: [ 1.086873] io scheduler kyber registered\n2022-04-27 13:03:03.8291 UTC: [ 1.089087] Serial: 8250/16550 driver, 32 ports, IRQ sharing enabled\n2022-04-27 13:03:03.8319 UTC: [ 1.091709] 00:04: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A\n2022-04-27 13:03:03.8609 UTC: [ 1.120797] drop_monitor: Initializing network drop monitor service\n2022-04-27 13:03:03.8626 UTC: [ 1.122600] NET: Registered PF_INET6 protocol family\n2022-04-27 13:03:04.5066 UTC: [ 1.766605] Freeing initrd memory: 13152K\n2022-04-27 13:03:04.5193 UTC: [ 1.779442] Segment Routing with IPv6\n2022-04-27 13:03:04.5210 UTC: [ 1.780841] In-situ OAM (IOAM) with IPv6\n2022-04-27 13:03:04.5255 UTC: [ 1.785192] IPI shorthand broadcast: enabled\n2022-04-27 13:03:04.5277 UTC: [ 1.786843] sched_clock: Marking stable (1738294664, 48422021)->(1807333075, -20616390)\n2022-04-27 13:03:04.5307 UTC: [ 1.790940] registered taskstats version 1\n2022-04-27 13:03:04.5314 UTC: [ 1.791560] Loading compiled-in X.509 certificates\n2022-04-27 13:03:04.5340 UTC: [ 1.793595] zswap: loaded using pool lzo/zbud\n2022-04-27 13:03:04.5380 UTC: [ 1.797679] Key type ._fscrypt registered\n2022-04-27 13:03:04.5389 UTC: [ 1.798790] Key type .fscrypt registered\n2022-04-27 13:03:04.5398 UTC: [ 1.799759] Key type fscrypt-provisioning registered\n2022-04-27 13:03:04.6078 UTC: [ 1.867699] Freeing unused kernel image (initmem) memory: 1760K\n2022-04-27 13:03:04.6087 UTC: [ 1.868780] Write protecting the kernel read-only data: 20480k\n2022-04-27 13:03:04.6120 UTC: [ 1.871806] Freeing unused kernel image (text/rodata gap) memory: 2040K\n2022-04-27 13:03:04.6129 UTC: [ 1.872905] Freeing unused kernel image (rodata/data gap) memory: 88K\n2022-04-27 13:03:04.6136 UTC: [ 1.873918] Run /init as init process\n2022-04-27 13:03:04.7837 UTC: [ 2.043565] tsc: Refined TSC clocksource calibration: 2803.179 MHz\n2022-04-27 13:03:04.7852 UTC: [ 2.044713] clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x2867fbb46e5, max_idle_ns: 440795273695 ns\n2022-04-27 13:03:04.7860 UTC: [ 2.046086] clocksource: Switched to clocksource tsc\n2022-04-27 13:03:05.8807 UTC: Hello! Running Linux (none) 5.15.4 #1-NixOS SMP Sun Nov 21 12:44:15 UTC 2021 x86_64 GNU/Linux\n2022-04-27 13:03:05.8821 UTC: SOTEST VERSION 1 BEGIN 1\n2022-04-27 13:03:05.9022 UTC: # dmidecode 3.2\n2022-04-27 13:03:05.9043 UTC: Getting SMBIOS data from sysfs.\n2022-04-27 13:03:05.9054 UTC: SMBIOS 2.8 present.\n2022-04-27 13:03:05.9061 UTC: 9 structures occupying 410 bytes.\n2022-04-27 13:03:05.9067 UTC: Table at 0x000F5910.\n2022-04-27 13:03:05.9068 UTC: \n2022-04-27 13:03:05.9078 UTC: Handle 0x0000, DMI type 0, 24 bytes\n2022-04-27 13:03:05.9083 UTC: BIOS Information\n2022-04-27 13:03:05.9088 UTC: \tVendor: SeaBIOS\n2022-04-27 13:03:05.9096 UTC: \tVersion: rel-1.14.0-0-g155821a1990b-prebuilt.qemu.org\n2022-04-27 13:03:05.9099 UTC: \tRelease Date: 04/01/2014\n2022-04-27 13:03:05.9103 UTC: \tAddress: 0xE8000\n2022-04-27 13:03:05.9106 UTC: \tRuntime Size: 96 kB\n2022-04-27 13:03:05.9109 UTC: \tROM Size: 64 kB\n2022-04-27 13:03:05.9112 UTC: \tCharacteristics:\n2022-04-27 13:03:05.9117 UTC: \t\tBIOS characteristics not supported\n2022-04-27 13:03:05.9123 UTC: \t\tTargeted content distribution is supported\n2022-04-27 13:03:05.9126 UTC: \tBIOS Revision: 0.0\n2022-04-27 13:03:05.9127 UTC: \n2022-04-27 13:03:05.9132 UTC: Handle 0x0100, DMI type 1, 27 bytes\n2022-04-27 13:03:05.9136 UTC: System Information\n2022-04-27 13:03:05.9139 UTC: \tManufacturer: QEMU\n2022-04-27 13:03:05.9146 UTC: \tProduct Name: Standard PC (i440FX + PIIX, 1996)\n2022-04-27 13:03:05.9149 UTC: \tVersion: pc-i440fx-6.1\n2022-04-27 13:03:05.9153 UTC: \tSerial Number: Not Specified\n2022-04-27 13:03:05.9157 UTC: \tUUID: Not Settable\n2022-04-27 13:03:05.9161 UTC: \tWake-up Type: Power Switch\n2022-04-27 13:03:05.9164 UTC: \tSKU Number: Not Specified\n2022-04-27 13:03:05.9167 UTC: \tFamily: Not Specified\n2022-04-27 13:03:05.9168 UTC: \n2022-04-27 13:03:05.9172 UTC: Handle 0x0300, DMI type 3, 22 bytes\n2022-04-27 13:03:05.9175 UTC: Chassis Information\n2022-04-27 13:03:05.9178 UTC: \tManufacturer: QEMU\n2022-04-27 13:03:05.9181 UTC: \tType: Other\n2022-04-27 13:03:05.9183 UTC: \tLock: Not Present\n2022-04-27 13:03:05.9186 UTC: \tVersion: pc-i440fx-6.1\n2022-04-27 13:03:05.9191 UTC: \tSerial Number: Not Specified\n2022-04-27 13:03:05.9194 UTC: \tAsset Tag: Not Specified\n2022-04-27 13:03:05.9199 UTC: \tBoot-up State: Safe\n2022-04-27 13:03:05.9200 UTC: \tPower Supply State: Safe\n2022-04-27 13:03:05.9200 UTC: \tThermal State: Safe\n2022-04-27 13:03:05.9200 UTC: \tSecurity Status: Unknown\n2022-04-27 13:03:05.9202 UTC: \tOEM Information: 0x00000000\n2022-04-27 13:03:05.9205 UTC: \tHeight: Unspecified\n2022-04-27 13:03:05.9210 UTC: \tNumber Of Power Cords: Unspecified\n2022-04-27 13:03:05.9214 UTC: \tContained Elements: 0\n2022-04-27 13:03:05.9219 UTC: \tSKU Number: Not Specified\n2022-04-27 13:03:05.9220 UTC: \n2022-04-27 13:03:05.9220 UTC: Handle 0x0400, DMI type 4, 42 bytes\n2022-04-27 13:03:05.9223 UTC: Processor Information\n2022-04-27 13:03:05.9229 UTC: \tSocket Designation: CPU 0\n2022-04-27 13:03:05.9230 UTC: \tType: Central Processor\n2022-04-27 13:03:05.9230 UTC: \tFamily: Other\n2022-04-27 13:03:05.9230 UTC: \tManufacturer: QEMU\n2022-04-27 13:03:05.9235 UTC: \tID: B1 0F 06 00 FD FB 8B 07\n2022-04-27 13:03:05.9241 UTC: \tVersion: pc-i440fx-6.1\n2022-04-27 13:03:05.9244 UTC: \tVoltage: Unknown\n2022-04-27 13:03:05.9248 UTC: \tExternal Clock: Unknown\n2022-04-27 13:03:05.9251 UTC: \tMax Speed: 2000 MHz\n2022-04-27 13:03:05.9255 UTC: \tCurrent Speed: 2000 MHz\n2022-04-27 13:03:05.9258 UTC: \tStatus: Populated, Enabled\n2022-04-27 13:03:05.9261 UTC: \tUpgrade: Other\n2022-04-27 13:03:05.9269 UTC: \tL1 Cache Handle: Not Provided\n2022-04-27 13:03:05.9270 UTC: \tL2 Cache Handle: Not Provided\n2022-04-27 13:03:05.9270 UTC: \tL3 Cache Handle: Not Provided\n2022-04-27 13:03:05.9270 UTC: \tSerial Number: Not Specified\n2022-04-27 13:03:05.9270 UTC: \tAsset Tag: Not Specified\n2022-04-27 13:03:05.9273 UTC: \tPart Number: Not Specified\n2022-04-27 13:03:05.9276 UTC: \tCore Count: 1\n2022-04-27 13:03:05.9278 UTC: \tCore Enabled: 1\n2022-04-27 13:03:05.9281 UTC: \tThread Count: 1\n2022-04-27 13:03:05.9284 UTC: \tCharacteristics: None\n2022-04-27 13:03:05.9285 UTC: \n2022-04-27 13:03:05.9289 UTC: Handle 0x1000, DMI type 16, 23 bytes\n2022-04-27 13:03:05.9290 UTC: Physical Memory Array\n2022-04-27 13:03:05.9293 UTC: \tLocation: Other\n2022-04-27 13:03:05.9299 UTC: \tUse: System Memory\n2022-04-27 13:03:05.9300 UTC: \tError Correction Type: Multi-bit ECC\n2022-04-27 13:03:05.9300 UTC: \tMaximum Capacity: 128 MB\n2022-04-27 13:03:05.9300 UTC: \tError Information Handle: Not Provided\n2022-04-27 13:03:05.9303 UTC: \tNumber Of Devices: 1\n2022-04-27 13:03:05.9304 UTC: \n2022-04-27 13:03:05.9308 UTC: Handle 0x1100, DMI type 17, 40 bytes\n2022-04-27 13:03:05.9311 UTC: Memory Device\n2022-04-27 13:03:05.9314 UTC: \tArray Handle: 0x1000\n2022-04-27 13:03:05.9319 UTC: \tError Information Handle: Not Provided\n2022-04-27 13:03:05.9320 UTC: \tTotal Width: Unknown\n2022-04-27 13:03:05.9320 UTC: \tData Width: Unknown\n2022-04-27 13:03:05.9323 UTC: \tSize: 128 MB\n2022-04-27 13:03:05.9326 UTC: \tForm Factor: DIMM\n2022-04-27 13:03:05.9328 UTC: \tSet: None\n2022-04-27 13:03:05.9331 UTC: \tLocator: DIMM 0\n2022-04-27 13:03:05.9335 UTC: \tBank Locator: Not Specified\n2022-04-27 13:03:05.9338 UTC: \tType: RAM\n2022-04-27 13:03:05.9338 UTC: \tType Detail: Other\n2022-04-27 13:03:05.9339 UTC: \tSpeed: Unknown\n2022-04-27 13:03:05.9342 UTC: \tManufacturer: QEMU\n2022-04-27 13:03:05.9346 UTC: \tSerial Number: Not Specified\n2022-04-27 13:03:05.9349 UTC: \tAsset Tag: Not Specified\n2022-04-27 13:03:05.9350 UTC: \tPart Number: Not Specified\n2022-04-27 13:03:05.9352 UTC: \tRank: Unknown\n2022-04-27 13:03:05.9359 UTC: \tConfigured Memory Speed: Unknown\n2022-04-27 13:03:05.9360 UTC: \tMinimum Voltage: Unknown\n2022-04-27 13:03:05.9360 UTC: \tMaximum Voltage: Unknown\n2022-04-27 13:03:05.9360 UTC: \tConfigured Voltage: Unknown\n2022-04-27 13:03:05.9361 UTC: \n2022-04-27 13:03:05.9366 UTC: Handle 0x1300, DMI type 19, 31 bytes\n2022-04-27 13:03:05.9369 UTC: Memory Array Mapped Address\n2022-04-27 13:03:05.9379 UTC: \tStarting Address: 0x00000000000\n2022-04-27 13:03:05.9380 UTC: \tEnding Address: 0x00007FFFFFF\n2022-04-27 13:03:05.9380 UTC: \tRange Size: 128 MB\n2022-04-27 13:03:05.9380 UTC: \tPhysical Array Handle: 0x1000\n2022-04-27 13:03:05.9380 UTC: \tPartition Width: 1\n2022-04-27 13:03:05.9380 UTC: \n2022-04-27 13:03:05.9381 UTC: Handle 0x2000, DMI type 32, 11 bytes\n2022-04-27 13:03:05.9381 UTC: System Boot Information\n2022-04-27 13:03:05.9383 UTC: \tStatus: No errors detected\n2022-04-27 13:03:05.9384 UTC: \n2022-04-27 13:03:05.9389 UTC: Handle 0x7F00, DMI type 127, 4 bytes\n2022-04-27 13:03:05.9392 UTC: End Of Table\n2022-04-27 13:03:05.9393 UTC: \n2022-04-27 13:03:05.9423 UTC: SOTEST SUCCESS\n2022-04-27 13:03:05.9427 UTC: SOTEST END\n",
"serial_name" : "Custom Serial"
}
],
"timeout" : 5
}
]
}
Abort or Reset a Test Run or an Execution Item¶
Aborting or resetting a Test Run or an Execution Item can be achieved using a
POST
request at /test_runs/<id>
or /test_runs/<id>/exec_items/<id>
respectively.
The HTTP form takes one argument, action
, which can have the values Abort
or
Reset
.
Both pages then return the modified Test Run or Execution Item.
Example Call¶
curl sotest.io/test_runs/2 -H 'Accept: application/json' -F 'action=Abort'
curl sotest.io/test_runs/2/exec_items/5 -H 'Accept: application/json' -F 'action=Reset'
Infrastructure Page - Machines¶
The existing machines and their configuration can be retrieved at /machines
.
Showing only the results for a single machine is possible using the machine ID,
which is the unique identifier of a machine displayed in the second column of
the “Infrastructure View” as shown in the screenshot above:
/machines/<machine_id>
Example Call¶
curl sotest.io/machines/qemu_1 -H 'Accept: application/json'
Example Result¶
{
"activity_state": "Active",
"config_vars": [
[
"linux_terminal",
"ttyS0"
]
],
"connection_state": "Online",
"controller_version": "0.28",
"mac_address": "02-03-04-05-06-07",
"name": "qemu_machine",
"name_id": "qemu_1",
"power_config": "none",
"serial_config": "Custom Serial",
"tags": [
"qemu",
"no_power"
],
"updated_at": "2022-04-27T13:02:39.94347Z"
}
Activating and deactivating a machine¶
A machine can be activated and deactivated using a POST
request to its
respective endpoint at /machines/<machine_id>
.
The HTTP form takes one argument, action
, which can have the values Activate
or Deactivate
.
Example Call¶
curl sotest.io/machines/qemu_1 -H 'Accept: application/json' -X POST -F 'action=Deactivate'
The page returns the newly modified machine.
Deprecated routes¶
The two endpoints /api/create
and /api/query
are similar to (POST)
/test_runs
and (GET) /test_runs/<id>/status
. They are still supported but
will be removed in the future.