From a59ad27e493a278e0b75f1a05da4982e2780c3f8 Mon Sep 17 00:00:00 2001 From: Pagerd <1172482284@qq.com> Date: Thu, 11 Apr 2024 18:11:09 +0800 Subject: [PATCH] add 0.8 log --- 20240408/RevyOS-LPi4A.md | 72 + 20240408/fedora-SG2042-Pioneer.md | 69 + .../ruyi_test_admin/2024-04-10-21_58_25.log | 207 ++ .../2024-04-10-21_47_30.log | 215 ++ .../2024-04-10-21_25_54.log | 589 ++++ .../ruyi_test_common/2024-04-10-21_19_05.log | 900 +++++ .../ruyi_test_config/2024-04-10-21_54_48.log | 247 ++ .../ruyi_test_device/2024-04-10-21_35_34.log | 3039 +++++++++++++++++ .../2024-04-10-21_47_17.tar.gz | Bin 0 -> 6908 bytes .../2024-04-10-21_52_28.log | 293 ++ .../2024-04-10-21_55_52.log | 263 ++ .../ruyi_test_llvm/2024-04-10-21_53_50.log | 183 + .../ruyi_test_news/2024-04-10-21_14_31.log | 241 ++ .../ruyi_test_qemu/2024-04-10-21_59_25.log | 175 + .../ruyi_test_venv/2024-04-10-21_23_22.log | 263 ++ .../ruyi_test_xdg/2024-04-10-21_15_40.log | 644 ++++ .../2024-04-10-21_11_13.log | 297 ++ .../ruyi_test_admin/2024-03-28-23_30_11.log | 167 + .../2024-03-28-23_15_27.log | 141 + .../2024-03-28-23_20_12.log | 295 ++ .../ruyi_test_common/2024-03-28-23_17_18.log | 697 ++++ .../ruyi_test_config/2024-03-28-23_29_50.log | 277 ++ .../ruyi_test_device/2024-03-28-23_25_27.log | 748 ++++ .../2024-03-28-23_29_22.tar.gz | 0 .../2024-03-28-23_30_22.log | 292 ++ .../2024-03-28-23_23_42.log | 153 + .../ruyi_test_llvm/2024-03-28-23_25_11.log | 182 + .../ruyi_test_news/2024-03-28-23_29_26.log | 233 ++ .../ruyi_test_qemu/2024-03-28-23_19_56.log | 167 + .../ruyi_test_venv/2024-03-28-23_22_12.log | 258 ++ .../ruyi_test_xdg/2024-03-28-23_13_32.log | 562 +++ .../2024-03-28-23_13_19.log | 200 ++ 32 files changed, 12069 insertions(+) create mode 100644 20240408/RevyOS-LPi4A.md create mode 100644 20240408/fedora-SG2042-Pioneer.md create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_admin/2024-04-10-21_58_25.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_binaries/2024-04-10-21_47_30.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_cmake_ninja/2024-04-10-21_25_54.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_common/2024-04-10-21_19_05.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_config/2024-04-10-21_54_48.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_35_34.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_47_17.tar.gz create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct-rv64ilp32-elf/2024-04-10-21_52_28.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct_xiangshan-nanhu/2024-04-10-21_55_52.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_llvm/2024-04-10-21_53_50.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_news/2024-04-10-21_14_31.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_qemu/2024-04-10-21_59_25.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_venv/2024-04-10-21_23_22.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xdg/2024-04-10-21_15_40.log create mode 100644 20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xthead_qemu/2024-04-10-21_11_13.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_admin/2024-03-28-23_30_11.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_binaries/2024-03-28-23_15_27.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_cmake_ninja/2024-03-28-23_20_12.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_common/2024-03-28-23_17_18.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_config/2024-03-28-23_29_50.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_25_27.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_29_22.tar.gz create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct-rv64ilp32-elf/2024-03-28-23_30_22.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct_xiangshan-nanhu/2024-03-28-23_23_42.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_llvm/2024-03-28-23_25_11.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_news/2024-03-28-23_29_26.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_qemu/2024-03-28-23_19_56.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_venv/2024-03-28-23_22_12.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xdg/2024-03-28-23_13_32.log create mode 100644 20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xthead_qemu/2024-03-28-23_13_19.log diff --git a/20240408/RevyOS-LPi4A.md b/20240408/RevyOS-LPi4A.md new file mode 100644 index 00000000..36e99416 --- /dev/null +++ b/20240408/RevyOS-LPi4A.md @@ -0,0 +1,72 @@ +# RUYI 包管理 20240408 版本 测试报告 + +本次测试基于 RUYI 0.8.0 版本预编译的 riscv64 架构版本二进制 [ruyi.riscv64](https://mirror.iscas.ac.cn/ruyisdk/ruyi/release/0.4.0/ruyi.riscv64)。 + +编写了 mugen 测试用例,在 RevyOS 5.10.113 LPi4A 开展测试。 + +## mugen 测试 + +### 测试环境说明 + ++ 由于 mugen 本身依赖 expect、psmisc、ping、make、python3、python3-paramiko、python3-six,故 mugen 自动化测试不能测试 RUYI 对这些软件包的依赖。 ++ 由于 mugen 自身的特性,测试用例运行的顺序是随机的。 ++ 测试环境为RevyOS 5.10.113 LPi4A + +### 测试执行 + +0. 以 `root` 用户身份登录系统。 + +1. 获取 mugen-ruyi 测试套:`git clone --depth=1 https://github.com/weilinfox/ruyi-mugen` + +> 若系统未安装 `git`,需要先行安装:`dnf install -y git` + +2. 安装依赖包:`cd mugen-ruyi && bash dep_install.sh` + +3. 配置 `mugen`: + +openEuler 23.09: `bash mugen.sh -c --ip 127.0.0.1 --password 'openEuler12#$' --user root --port 22` + +4. 执行 `ruyi` 测试套:`bash mugen.sh -f ruyi` + +5. 执行结束后,对 log 文件名进行处理(避免 Windows 用户无法 checkout 仓库): + +```bash +for file in $(find ./logs -name "*:*"); do mv "$file" "${file//:/_}"; done +``` + +### 测试结果 + +共测试了 1 个测试套,14个测试用例,14个测试用例成功。 + + + + + +### 测试用例列表 + +| 测试套/软件包名 | 测试用例名 | 测试内容 | +| :-------------: | :--------------------------------: | :-----------------------------------------: | +| ruyi | ruyi\_test\_common | 基本命令测试 | +| | ruyi\_test\_xdg | ``XDG_*_HOME`` 环境变量测试 | +| | ruyi\_test\_venv | ``venv`` 命令测试 | +| | ruyi\_test\_admin | ``admin`` 命令测试 | +| | ruyi\_test\_cmake\_ninja | ``make`` 、 ``cmake`` 、 ``ninja`` 构建测试 | +| | ruyi\_test\_qemu | QEMU 支持测试 | +| | ruyi\_test\_xthead\_qemu | 平头哥 QEMU 支持测试 | +| | ruyi\_test\_llvm | LLVM 支持测试 | +| | ruyi\_test\_news | ``news`` 命令测试 | +| | ruyi\_test\_device | ``device`` 命令测试 | +| | ruyi\_test\_gnu-plct-rv64ilp32-elf | ``gnu-plct-rv64ilp32-elf`` 工具链测试 | +| | ruyi\_test\_config | config.toml 配置文件测试 | +| | ruyi\_test\_binaries | 二进制包测试 | +| | ruyi_test_gnu-plct_xiangshan-nanhu | `gnu-plct` 工具链/香山南湖平台测试 | + +### + + +### 失败用例列表 + +### 其他信息 + +详细日志见 [RevyOS-riscv64-lpi4a](./logs/RevyOS-LPi4A/) 目录。 + diff --git a/20240408/fedora-SG2042-Pioneer.md b/20240408/fedora-SG2042-Pioneer.md new file mode 100644 index 00000000..8973b508 --- /dev/null +++ b/20240408/fedora-SG2042-Pioneer.md @@ -0,0 +1,69 @@ +# RUYI 包管理 20240408版本 SG2042测试报告 + +本次测试基于 RUYI 0.8.0 版本预编译的 riscv64 架构版本二进制 [ruyi.riscv64](https://mirror.iscas.ac.cn/ruyisdk/ruyi/release/0.4.0/ruyi.riscv64)。 + +编写了 mugen 测试用例,在 Fedora 38 on SG2042 (Milk-V Pioneer v1.3)。开展测试。 + +## mugen 测试 + +### 测试环境说明 + ++ 由于 mugen 本身依赖 expect、psmisc、ping、make、python3、python3-paramiko、python3-six,故 mugen 自动化测试不能测试 RUYI 对这些软件包的依赖。 ++ 由于 mugen 自身的特性,测试用例运行的顺序是随机的。 ++ 测试环境为fedora 38 on SG2042 (Milk-V Pioneer v1.3)。 + +### 测试执行 + +0. 以 `root` 用户身份登录系统。 + +1. 获取 mugen-ruyi 测试套:`git clone --depth=1 https://github.com/weilinfox/ruyi-mugen` + +> 若系统未安装 `git`,需要先行安装:`dnf install -y git` + +2. 安装依赖包:`cd mugen-ruyi && bash dep_install.sh` + +3. 配置 `mugen`: + +openEuler 23.09: `bash mugen.sh -c --ip 127.0.0.1 --password 'openEuler12#$' --user root --port 22` + +4. 执行 `ruyi` 测试套:`bash mugen.sh -f ruyi` + +5. 执行结束后,对 log 文件名进行处理(避免 Windows 用户无法 checkout 仓库): + +```bash +for file in $(find ./logs -name "*:*"); do mv "$file" "${file//:/_}"; done +``` + +### 测试结果 + +共测试了 1 个测试套,14 个测试用例,14个测试用例成功。 + +### 测试结论 + +所有测试用例执行成功,mugen 测试通过。没有发现意外的失败。 + +### 测试用例列表 + +| 测试套/软件包名 | 测试用例名 | 测试内容 | +|:---------------:|:----------------------------------:|:-------------------------------------:| +| ruyi | ruyi\_test\_common | 基本命令测试 | +| | ruyi\_test\_xdg | ``XDG_*_HOME`` 环境变量测试 | +| | ruyi\_test\_venv | ``venv`` 命令测试 | +| | ruyi\_test\_admin | ``admin`` 命令测试 | +| | ruyi\_test\_cmake\_ninja | ``make`` 、 ``cmake`` 、 ``ninja`` 构建测试 | +| | ruyi\_test\_qemu | QEMU 支持测试 | +| | ruyi\_test\_xthead\_qemu | 平头哥 QEMU 支持测试 | +| | ruyi\_test\_llvm | LLVM 支持测试 | +| | ruyi\_test\_news | ``news`` 命令测试 | +| | ruyi\_test\_device | ``device`` 命令测试 | +| | ruyi\_test\_gnu-plct-rv64ilp32-elf | ``gnu-plct-rv64ilp32-elf`` 工具链测试 | +| | ruyi\_test\_config | config.toml 配置文件测试 | +| | ruyi\_test\_binaries | 二进制包测试 | +| | ruyi_test_gnu-plct_xiangshan-nanhu | `gnu-plct` 工具链/香山南湖平台测试 | + +### 失败用例列表 + +### 其他信息 + +详细日志见 [fedora38-riscv64-sg2042](./logs/fedora38-riscv64-sg2042/) 目录。 + diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_admin/2024-04-10-21_58_25.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_admin/2024-04-10-21_58_25.log new file mode 100644 index 00000000..b74e3de6 --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_admin/2024-04-10-21_58_25.log @@ -0,0 +1,207 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:58:26 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:58:27 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpl3jtq8hy ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpl3jtq8hy ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpl3jtq8hy ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpl3jtq8hy +Wed Apr 10 21:58:59 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpl3jtq8hy ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 72 20.8M 72 15.2M 0 0 11.7M 0 0:00:01 0:00:01 --:--:-- 11.7M 100 20.8M 100 20.8M 0 0 13.3M 0 0:00:01 0:00:01 --:--:-- 13.3M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:59:01 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:59:01 2024 - INFO - Start to run test. ++ test_file=ruyi_test_admin.sh ++ ruyi admin manifest ruyi_test_admin.sh +[ + { + "name": "ruyi_test_admin.sh", + "size": 1504, + "checksums": { + "sha512": "9e45e6ed0f1df29d1260dcf55eef7c6671864416f6f00224584f3e3b662df671b0fa2e7834f0aff5ff203e0361e549c805703f70e540c930dc0344327b8ddd92", + "sha256": "8bc13ac75cf26ffdc1bbba552801b6d0f9fee0b808c37e851f92be3dba3ab449" + } + } +] ++ CHECK_RESULT 0 0 0 'Check ruyi admin manifest failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi admin manifest failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi admin manifest --format json ruyi_test_admin.sh +[ + { + "name": "ruyi_test_admin.sh", + "size": 1504, + "checksums": { + "sha256": "8bc13ac75cf26ffdc1bbba552801b6d0f9fee0b808c37e851f92be3dba3ab449", + "sha512": "9e45e6ed0f1df29d1260dcf55eef7c6671864416f6f00224584f3e3b662df671b0fa2e7834f0aff5ff203e0361e549c805703f70e540c930dc0344327b8ddd92" + } + } +] ++ CHECK_RESULT 0 0 0 'Check ruyi admin manifest json format failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi admin manifest json format failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi admin manifest --format toml ruyi_test_admin.sh +[[distfiles]] +name = "ruyi_test_admin.sh" +size = 1504 + +[distfiles.checksums] +sha256 = "8bc13ac75cf26ffdc1bbba552801b6d0f9fee0b808c37e851f92be3dba3ab449" +sha512 = "9e45e6ed0f1df29d1260dcf55eef7c6671864416f6f00224584f3e3b662df671b0fa2e7834f0aff5ff203e0361e549c805703f70e540c930dc0344327b8ddd92" ++ CHECK_RESULT 0 0 0 'Check ruyi admin manifest toml format failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi admin manifest toml format failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:59:12 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:59:12 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:59:12 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpl3jtq8hy ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpl3jtq8hy +Wed Apr 10 21:59:13 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpl3jtq8hy ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpl3jtq8hy +Wed Apr 10 21:59:24 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:59:24 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_binaries/2024-04-10-21_47_30.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_binaries/2024-04-10-21_47_30.log new file mode 100644 index 00000000..0b13d25e --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_binaries/2024-04-10-21_47_30.log @@ -0,0 +1,215 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ EXECUTE_T=120m ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:47:30 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:47:31 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpiydelfs7 ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpiydelfs7 ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpiydelfs7 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpiydelfs7 +Wed Apr 10 21:48:04 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpiydelfs7 ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 71 20.8M 71 14.9M 0 0 11.8M 0 0:00:01 0:00:01 --:--:-- 11.8M 100 20.8M 100 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:48:06 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:48:06 2024 - INFO - Start to run test. ++ ruyi update + +Traceback (most recent call last): + File "/home/debian/.cache/ruyi/progcache/0.8.0/__main__.py", line 57, in + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/cli/__init__.py", line 300, in main + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/update_cli.py", line 14, in cli_update + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 180, in sync + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 170, in ensure_git_repo + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/__init__.py", line 209, in clone_repository + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/callbacks.py", line 99, in check_error + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/errors.py", line 65, in check_error +_pygit2.GitError: SSL error: unknown error ++ CHECK_RESULT 1 0 0 'Check ruyi udpate failed' ++ actual_result=1 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi udpate failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 0 -eq 0 ']' ++ test 1x '!=' 0x ++ test -n 'Check ruyi udpate failed' ++ LOG_ERROR 'Check ruyi udpate failed' ++ message='Check ruyi udpate failed' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level error --message 'Check ruyi udpate failed' +Wed Apr 10 21:49:20 2024 - ERROR - Check ruyi udpate failed ++ (( exec_result++ )) ++ LOG_ERROR 'ruyi_test_binaries.sh line 66' ++ message='ruyi_test_binaries.sh line 66' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level error --message 'ruyi_test_binaries.sh line 66' +Wed Apr 10 21:49:20 2024 - ERROR - ruyi_test_binaries.sh line 66 ++ '[' 0 -eq 1 ']' ++ return 0 ++ for i in toolchain emulator ++ test_oneshot toolchain ++ local ret retc bp bpb +++ ruyi list +++ grep toolchain +++ sed 's/^* toolchain\///' +Traceback (most recent call last): + File "/home/debian/.cache/ruyi/progcache/0.8.0/__main__.py", line 57, in + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/cli/__init__.py", line 300, in main + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/pkg_cli.py", line 26, in cli_list + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/pkg_cli.py", line 44, in do_list_non_verbose + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 299, in iter_pkgs + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 274, in ensure_pkg_cache + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 170, in ensure_git_repo + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/__init__.py", line 209, in clone_repository + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/callbacks.py", line 99, in check_error + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/errors.py", line 65, in check_error +_pygit2.GitError: SSL error: unknown error ++ for i in toolchain emulator ++ test_oneshot emulator ++ local ret retc bp bpb +++ ruyi list +++ grep emulator +++ sed 's/^* emulator\///' +Traceback (most recent call last): + File "/home/debian/.cache/ruyi/progcache/0.8.0/__main__.py", line 57, in + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/cli/__init__.py", line 300, in main + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/pkg_cli.py", line 26, in cli_list + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/pkg_cli.py", line 44, in do_list_non_verbose + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 299, in iter_pkgs + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 274, in ensure_pkg_cache + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 170, in ensure_git_repo + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/__init__.py", line 209, in clone_repository + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/callbacks.py", line 99, in check_error + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/errors.py", line 65, in check_error +_pygit2.GitError: failed to connect to github.com: Connection timed out ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:52:14 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z 1 ++ test 1 -gt 0 ++ LOG_ERROR 'failed to execute the case.' ++ message='failed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level error --message 'failed to execute the case.' +Wed Apr 10 21:52:15 2024 - ERROR - failed to execute the case. ++ exit 1 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:52:15 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpiydelfs7 ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpiydelfs7 +Wed Apr 10 21:52:16 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpiydelfs7 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpiydelfs7 +Wed Apr 10 21:52:26 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:52:27 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_cmake_ninja/2024-04-10-21_25_54.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_cmake_ninja/2024-04-10-21_25_54.log new file mode 100644 index 00000000..d8e300a2 --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_cmake_ninja/2024-04-10-21_25_54.log @@ -0,0 +1,589 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ EXECUTE_T=60m ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:25:54 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:25:55 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpm1w5u_wd ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpm1w5u_wd ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpm1w5u_wd ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:26:27 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpm1w5u_wd ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 2 20.8M 2 430k 0 0 793k 0 0:00:26 --:--:-- 0:00:26 793k 99 20.8M 99 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M 100 20.8M 100 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ DNF_INSTALL 'cmake ninja-build' ++ pkgs='cmake ninja-build' ++ node=1 ++ '[' -z /tmp/tmpm1w5u_wd ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'cmake ninja-build' --node 1 --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:26:30 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z /tmp/tmpm1w5u_wd ']' ++ APT_INSTALL 'cmake ninja-build' ++ pkgs='cmake ninja-build' ++ node=1 ++ '[' -z /tmp/tmpm1w5u_wd ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'cmake ninja-build' --node 1 --tempfile /tmp/tmpm1w5u_wd ++ tmpfile2=/tmp/tmpm1w5u_wd ++ '[' -z /tmp/tmpm1w5u_wd ']' ++ PACMAN_INSTALL 'cmake ninja' ++ pkgs='cmake ninja' ++ node=1 ++ '[' -z /tmp/tmpm1w5u_wd ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'cmake ninja' --node 1 --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:27:04 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpm1w5u_wd ']' ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:27:04 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:27:04 2024 - INFO - Start to run test. ++ mkdir build ++ cd build ++ tar zxf ../common/source/zlib-ng-2.1.5.tar.gz ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% +(155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: +25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% +(480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: +69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct gnu-plct-xthead +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 294M 0 2896 0 0 7071 0 12:08:41 --:--:-- 12:08:41 7063 6 294M 6 18.1M 0 0 12.8M 0 0:00:22 0:00:01 0:00:21 12.8M 12 294M 12 38.1M 0 0 15.8M 0 0:00:18 0:00:02 0:00:16 15.8M 19 294M 19 58.1M 0 0 17.0M 0 0:00:17 0:00:03 0:00:14 17.0M 26 294M 26 78.1M 0 0 17.7M 0 0:00:16 0:00:04 0:00:12 17.7M 32 294M 32 97.0M 0 0 17.9M 0 0:00:16 0:00:05 0:00:11 19.4M 39 294M 39 117M 0 0 18.2M 0 0:00:16 0:00:06 0:00:10 19.8M 46 294M 46 137M 0 0 18.5M 0 0:00:15 0:00:07 0:00:08 19.8M 53 294M 53 157M 0 0 18.7M 0 0:00:15 0:00:08 0:00:07 19.8M 60 294M 60 178M 0 0 18.8M 0 0:00:15 0:00:09 0:00:06 19.8M 67 294M 67 198M 0 0 19.0M 0 0:00:15 0:00:10 0:00:05 20.0M 73 294M 73 218M 0 0 19.1M 0 0:00:15 0:00:11 0:00:04 20.1M 80 294M 80 238M 0 0 19.2M 0 0:00:15 0:00:12 0:00:03 20.2M 87 294M 87 258M 0 0 19.2M 0 0:00:15 0:00:13 0:00:02 20.2M 94 294M 94 279M 0 0 19.3M 0 0:00:15 0:00:14 0:00:01 20.2M 100 294M 100 294M 0 0 19.3M 0 0:00:15 0:00:15 --:--:-- 20.2M +info: extracting RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthead-linux-gnu.tar.xz +for package gnu-plct-xthead-2.8.0-ruyi.20240222 +info: package gnu-plct-xthead-2.8.0-ruyi.20240222 installed to +/home/debian/.local/share/ruyi/binaries/riscv64/gnu-plct-xthead-2.8.0-ruyi.20240222 +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 3 231M 3 7758k 0 0 8533k 0 0:00:27 --:--:-- 0:00:27 8535k 12 231M 12 28.6M 0 0 14.6M 0 0:00:15 0:00:01 0:00:14 14.6M 21 231M 21 48.6M 0 0 16.5M 0 0:00:13 0:00:02 0:00:11 16.5M 29 231M 29 68.6M 0 0 17.5M 0 0:00:13 0:00:03 0:00:10 17.5M 38 231M 38 89.6M 0 0 18.1M 0 0:00:12 0:00:04 0:00:08 18.1M 47 231M 47 109M 0 0 18.4M 0 0:00:12 0:00:05 0:00:07 20.3M 56 231M 56 129M 0 0 18.7M 0 0:00:12 0:00:06 0:00:06 20.3M 64 231M 64 149M 0 0 18.9M 0 0:00:12 0:00:07 0:00:05 20.3M 73 231M 73 170M 0 0 19.0M 0 0:00:12 0:00:08 0:00:04 20.3M 82 231M 82 190M 0 0 19.2M 0 0:00:12 0:00:09 0:00:03 20.3M 91 231M 91 210M 0 0 19.3M 0 0:00:11 0:00:10 0:00:01 20.3M 99 231M 99 230M 0 0 19.3M 0 0:00:11 0:00:11 --:--:-- 20.2M 100 231M 100 231M 0 0 19.3M 0 0:00:11 0:00:11 --:--:-- 20.2M +info: extracting RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz for package +gnu-plct-0.20240324.0 +info: package gnu-plct-0.20240324.0 installed to /home/debian/.local/share/ruyi/binaries/riscv64/gnu-plct-0.20240324.0 ++ ruyi venv -t gnu-plct-xthead sipeed-lpi4a ./coremark_venv +info: Creating a Ruyi virtual environment at coremark_venv... +info: The virtual environment is now created. + +You may activate it by sourcing the appropriate activation script in the +bin directory, and deactivate by invoking `ruyi-deactivate`. + +A fresh sysroot/prefix is also provisioned in the virtual environment. +It is available at the following path: + + /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/coremark_venv/sysroot + +The virtual environment also comes with ready-made CMake toolchain file +and Meson cross file. Check the virtual environment root for those; +comments in the files contain usage instructions. + ++ ruyi extract coremark +info: downloading https://mirror.iscas.ac.cn/ruyisdk/dist/coremark-1.01.tar.gz to +/home/debian/.cache/ruyi/distfiles/coremark-1.01.tar.gz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 391k 100 391k 0 0 737k 0 --:--:-- --:--:-- --:--:-- 739k +info: extracting coremark-1.01.tar.gz for package coremark-1.0.1 +info: package coremark-1.0.1 extracted to current working directory ++ . coremark_venv/bin/ruyi-activate +++ '[' coremark_venv/bin/ruyi-activate = ruyi_test_cmake_ninja.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/coremark_venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ PATH=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/coremark_venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ export PATH +++ hash -r ++++ basename /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/coremark_venv +++ RUYI_VENV_PROMPT=coremark_venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi coremark_venv» ' +++ export PS1 ++ sed -i 's/\bgcc\b/riscv64-plctxthead-linux-gnu-gcc/g' linux64/core_portme.mak ++ make PORT_DIR=linux64 link +riscv64-plctxthead-linux-gnu-gcc -O2 -Ilinux64 -I. -DFLAGS_STR=\""-O2 -lrt"\" -DITERATIONS=0 core_list_join.c core_main.c core_matrix.c core_state.c core_util.c linux64/core_portme.c -o ./coremark.exe -lrt +Link performed along with compile ++ file coremark.exe ++ grep -i RISC-V +coremark.exe: ELF 64-bit LSB executable, UCB RISC-V, RVC, double-float ABI, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-riscv64-lp64d.so.1, BuildID[sha1]=9c635b0506f42e64cf04372c637dc42e18d599e8, for GNU/Linux 4.15.0, with debug_info, not stripped ++ CHECK_RESULT 0 0 0 'Check ruyi coremark build failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi coremark build failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ tar zxf ../common/source/zlib-ng-2.1.5.tar.gz ++ cd ./zlib-ng-2.1.5 ++ ruyi venv -t gnu-plct milkv-duo ./zlib_venv +info: Creating a Ruyi virtual environment at zlib_venv... +info: The virtual environment is now created. + +You may activate it by sourcing the appropriate activation script in the +bin directory, and deactivate by invoking `ruyi-deactivate`. + +A fresh sysroot/prefix is also provisioned in the virtual environment. +It is available at the following path: + + /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_venv/sysroot + +The virtual environment also comes with ready-made CMake toolchain file +and Meson cross file. Check the virtual environment root for those; +comments in the files contain usage instructions. + ++ . zlib_venv/bin/ruyi-activate +++ '[' zlib_venv/bin/ruyi-activate = ruyi_test_cmake_ninja.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ PATH=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ export PATH +++ hash -r ++++ basename /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_venv +++ RUYI_VENV_PROMPT=zlib_venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi zlib_venv» ' +++ export PS1 +++ pwd ++ cmake . -G Ninja -DCMAKE_C_COMPILER=riscv64-plct-linux-gnu-gcc -DCMAKE_INSTALL_PREFIX=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install '-DCMAKE_C_FLAGS=-O2 -pipe -g' -DZLIB_COMPAT=ON -DWITH_GTEST=OFF +-- Using CMake version 3.25.1 +-- ZLIB_HEADER_VERSION: 1.3.0 +-- ZLIBNG_HEADER_VERSION: 2.1.5 +-- The C compiler identification is GNU 13.1.0 +-- Detecting C compiler ABI info +-- Detecting C compiler ABI info - done +-- Check for working C compiler: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_venv/bin/riscv64-plct-linux-gnu-gcc - skipped +-- Detecting C compile features +-- Detecting C compile features - done +-- Arch detected: 'riscv64' +-- Basearch of 'riscv64' has been detected as: 'riscv' +-- Performing Test FNO_LTO_AVAILABLE +-- Performing Test FNO_LTO_AVAILABLE - Success +-- Looking for arm_acle.h +-- Looking for arm_acle.h - not found +-- Looking for sys/auxv.h +-- Looking for sys/auxv.h - found +-- Looking for sys/sdt.h +-- Looking for sys/sdt.h - not found +-- Looking for unistd.h +-- Looking for unistd.h - found +-- Looking for sys/types.h +-- Looking for sys/types.h - found +-- Looking for stdint.h +-- Looking for stdint.h - found +-- Looking for stddef.h +-- Looking for stddef.h - found +-- Check size of off64_t +-- Check size of off64_t - done +-- Looking for fseeko +-- Looking for fseeko - found +-- Looking for strerror +-- Looking for strerror - found +-- Looking for posix_memalign +-- Looking for posix_memalign - found +-- Looking for aligned_alloc +-- Looking for aligned_alloc - found +-- Performing Test HAVE_NO_INTERPOSITION +-- Performing Test HAVE_NO_INTERPOSITION - Success +-- Performing Test HAVE_ATTRIBUTE_VISIBILITY_HIDDEN +-- Performing Test HAVE_ATTRIBUTE_VISIBILITY_HIDDEN - Success +-- Performing Test HAVE_ATTRIBUTE_VISIBILITY_INTERNAL +-- Performing Test HAVE_ATTRIBUTE_VISIBILITY_INTERNAL - Success +-- Performing Test HAVE_ATTRIBUTE_ALIGNED +-- Performing Test HAVE_ATTRIBUTE_ALIGNED - Success +-- Performing Test HAVE_THREAD_LOCAL +-- Performing Test HAVE_THREAD_LOCAL - Success +-- Performing Test HAVE_BUILTIN_CTZ +-- Performing Test HAVE_BUILTIN_CTZ - Success +-- Performing Test HAVE_BUILTIN_CTZLL +-- Performing Test HAVE_BUILTIN_CTZLL - Success +-- Performing Test HAVE_PTRDIFF_T +-- Performing Test HAVE_PTRDIFF_T - Success +-- Performing Test HAVE_RVV_INTRIN +-- Performing Test HAVE_RVV_INTRIN - Success +-- Architecture-specific source files: arch/riscv/riscv_features.c;arch/riscv/riscv_features.c;arch/riscv/adler32_rvv.c;arch/riscv/chunkset_rvv.c;arch/riscv/compare256_rvv.c;arch/riscv/slide_hash_rvv.c +-- The following features have been enabled: + + * CMAKE_BUILD_TYPE, Build type: Release (default) + * WITH_GZFILEOP, Compile with support for gzFile related functions + * ZLIB_COMPAT, Compile with zlib compatible API + * ZLIB_ENABLE_TESTS, Build test binaries + * ZLIBNG_ENABLE_TESTS, Test zlib-ng specific API + * WITH_SANITIZER, Enable sanitizer support + * WITH_OPTIM, Build with optimisation + * WITH_NEW_STRATEGIES, Use new strategies + * WITH_RVV, Build with RVV intrinsics + +-- The following features have been disabled: + + * ZLIB_SYMBOL_PREFIX, Publicly exported symbols DO NOT have a custom prefix + * WITH_GTEST, Build gtest_zlib + * WITH_FUZZERS, Build test/fuzz + * WITH_BENCHMARKS, Build test/benchmarks + * WITH_BENCHMARK_APPS, Build application benchmarks + * WITH_NATIVE_INSTRUCTIONS, Instruct the compiler to use the full instruction set on this host (gcc/clang -march=native) + * WITH_MAINTAINER_WARNINGS, Build with project maintainer warnings + * WITH_CODE_COVERAGE, Enable code coverage reporting + * WITH_INFLATE_STRICT, Build with strict inflate distance checking + * WITH_INFLATE_ALLOW_INVALID_DIST, Build with zero fill for inflate invalid distances + * INSTALL_UTILS, Copy minigzip and minideflate during install + +CMake Warning at CMakeLists.txt:1287 (message): + Building to source folder is not recommended. Cpack will be unable to + generate source package. + + +-- Configuring done +-- Generating done +-- Build files have been written to: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5 ++ ninja +[1/93] Building C object CMakeFiles/zlib.dir/adler32_fold.c.o +[2/93] Building C object CMakeFiles/zlib.dir/cpu_features.c.o +[3/93] Building C object CMakeFiles/zlib.dir/compress.c.o +[4/93] Building C object CMakeFiles/zlib.dir/adler32.c.o +[5/93] Building C object CMakeFiles/zlib.dir/chunkset.c.o +[6/93] Building C object CMakeFiles/zlib.dir/compare256.c.o +[7/93] Building C object CMakeFiles/zlib.dir/crc32_braid_comb.c.o +[8/93] Building C object CMakeFiles/zlib.dir/crc32_fold.c.o +[9/93] Building C object CMakeFiles/zlib.dir/crc32_braid.c.o +[10/93] Building C object CMakeFiles/zlib.dir/deflate_fast.c.o +[11/93] Building C object CMakeFiles/zlib.dir/deflate_huff.c.o +[12/93] Building C object CMakeFiles/zlib.dir/deflate.c.o +[13/93] Building C object CMakeFiles/zlib.dir/deflate_medium.c.o +[14/93] Building C object CMakeFiles/zlib.dir/deflate_quick.c.o +[15/93] Building C object CMakeFiles/zlib.dir/deflate_rle.c.o +[16/93] Building C object CMakeFiles/zlib.dir/deflate_slow.c.o +[17/93] Building C object CMakeFiles/zlib.dir/deflate_stored.c.o +[18/93] Building C object CMakeFiles/zlib.dir/functable.c.o +[19/93] Building C object CMakeFiles/zlib.dir/insert_string.c.o +[20/93] Building C object CMakeFiles/zlib.dir/inftrees.c.o +[21/93] Building C object CMakeFiles/zlib.dir/insert_string_roll.c.o +[22/93] Building C object CMakeFiles/zlib.dir/slide_hash.c.o +[23/93] Building C object CMakeFiles/zlib.dir/infback.c.o +[24/93] Building C object CMakeFiles/zlib.dir/zutil.c.o +[25/93] Building C object CMakeFiles/zlib.dir/uncompr.c.o +[26/93] Building C object CMakeFiles/zlib.dir/arch/riscv/riscv_features.c.o +/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/arch/riscv/riscv_features.c: In function 'is_kernel_version_greater_or_equal_to_6_5': +/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/arch/riscv/riscv_features.c:22:33: warning: suggest parentheses around '&&' within '||' [-Wparentheses] + 22 | if (major > 6 || major == 6 && minor >= 5) + | ~~~~~~~~~~~^~~~~~~~~~~~~ +[27/93] Building C object CMakeFiles/zlib.dir/arch/riscv/adler32_rvv.c.o +[28/93] Building C object CMakeFiles/zlib.dir/inflate.c.o +[29/93] Building C object CMakeFiles/zlib.dir/trees.c.o +[30/93] Building C object CMakeFiles/zlib.dir/arch/riscv/slide_hash_rvv.c.o +[31/93] Building C object CMakeFiles/zlib.dir/arch/riscv/compare256_rvv.c.o +[32/93] Building C object CMakeFiles/zlib.dir/arch/riscv/chunkset_rvv.c.o +[33/93] Building C object CMakeFiles/zlib.dir/gzlib.c.o +[34/93] Building C object CMakeFiles/zlib.dir/gzread.c.o +[35/93] Building C object CMakeFiles/zlib.dir/gzwrite.c.o +[36/93] Building C object CMakeFiles/zlibstatic.dir/adler32_fold.c.o +[37/93] Building C object CMakeFiles/zlibstatic.dir/adler32.c.o +[38/93] Building C object CMakeFiles/zlibstatic.dir/chunkset.c.o +[39/93] Linking C shared library libz.so.1.3.0.zlib-ng +[40/93] Creating library symlink libz.so.1 libz.so +[41/93] Building C object CMakeFiles/zlibstatic.dir/compare256.c.o +[42/93] Building C object CMakeFiles/zlibstatic.dir/compress.c.o +[43/93] Building C object CMakeFiles/zlibstatic.dir/cpu_features.c.o +[44/93] Building C object CMakeFiles/zlibstatic.dir/crc32_braid.c.o +[45/93] Building C object CMakeFiles/zlibstatic.dir/deflate_fast.c.o +[46/93] Building C object CMakeFiles/zlibstatic.dir/crc32_fold.c.o +[47/93] Building C object CMakeFiles/zlibstatic.dir/crc32_braid_comb.c.o +[48/93] Building C object CMakeFiles/zlibstatic.dir/deflate_huff.c.o +[49/93] Building C object CMakeFiles/zlibstatic.dir/deflate_medium.c.o +[50/93] Building C object CMakeFiles/zlibstatic.dir/deflate.c.o +[51/93] Building C object CMakeFiles/zlibstatic.dir/deflate_rle.c.o +[52/93] Building C object CMakeFiles/zlibstatic.dir/deflate_stored.c.o +[53/93] Building C object CMakeFiles/zlibstatic.dir/deflate_slow.c.o +[54/93] Building C object CMakeFiles/zlibstatic.dir/deflate_quick.c.o +[55/93] Building C object CMakeFiles/zlibstatic.dir/functable.c.o +[56/93] Building C object CMakeFiles/zlibstatic.dir/insert_string_roll.c.o +[57/93] Building C object CMakeFiles/zlibstatic.dir/insert_string.c.o +[58/93] Building C object CMakeFiles/zlibstatic.dir/infback.c.o +[59/93] Building C object CMakeFiles/zlibstatic.dir/inftrees.c.o +[60/93] Building C object CMakeFiles/zlibstatic.dir/slide_hash.c.o +[61/93] Building C object CMakeFiles/zlibstatic.dir/zutil.c.o +[62/93] Building C object CMakeFiles/zlibstatic.dir/uncompr.c.o +[63/93] Building C object CMakeFiles/zlibstatic.dir/arch/riscv/riscv_features.c.o +/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/arch/riscv/riscv_features.c: In function 'is_kernel_version_greater_or_equal_to_6_5': +/home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/arch/riscv/riscv_features.c:22:33: warning: suggest parentheses around '&&' within '||' [-Wparentheses] + 22 | if (major > 6 || major == 6 && minor >= 5) + | ~~~~~~~~~~~^~~~~~~~~~~~~ +[64/93] Building C object CMakeFiles/zlibstatic.dir/inflate.c.o +[65/93] Building C object CMakeFiles/zlibstatic.dir/trees.c.o +[66/93] Building C object CMakeFiles/zlibstatic.dir/arch/riscv/adler32_rvv.c.o +[67/93] Building C object CMakeFiles/zlibstatic.dir/arch/riscv/slide_hash_rvv.c.o +[68/93] Building C object CMakeFiles/zlibstatic.dir/arch/riscv/compare256_rvv.c.o +[69/93] Building C object CMakeFiles/zlibstatic.dir/arch/riscv/chunkset_rvv.c.o +[70/93] Building C object CMakeFiles/zlibstatic.dir/gzread.c.o +[71/93] Building C object CMakeFiles/zlibstatic.dir/gzlib.c.o +[72/93] Building C object CMakeFiles/zlibstatic.dir/gzwrite.c.o +[73/93] Building C object test/CMakeFiles/example.dir/example.c.o +[74/93] Building C object test/CMakeFiles/minigzip.dir/minigzip.c.o +[75/93] Building C object test/CMakeFiles/minideflate.dir/minideflate.c.o +[76/93] Building C object test/CMakeFiles/switchlevels.dir/switchlevels.c.o +[77/93] Linking C executable example +[78/93] Building C object test/CMakeFiles/infcover.dir/infcover.c.o +[79/93] Building C object test/CMakeFiles/infcover.dir/__/inftrees.c.o +[80/93] Linking C executable minideflate +[81/93] Linking C static library libz.a +[82/93] Linking C executable switchlevels +[83/93] Building C object test/CMakeFiles/makefixed.dir/__/tools/makefixed.c.o +[84/93] Building C object test/CMakeFiles/makefixed.dir/__/inftrees.c.o +[85/93] Linking C executable infcover +[86/93] Linking C executable minigzip +[87/93] Building C object test/CMakeFiles/maketrees.dir/__/tools/maketrees.c.o +[88/93] Building C object test/CMakeFiles/maketrees.dir/__/zutil.c.o +[89/93] Linking C executable makefixed +[90/93] Building C object test/CMakeFiles/maketrees.dir/__/trees.c.o +[91/93] Building C object test/CMakeFiles/makecrct.dir/__/tools/makecrct.c.o +[92/93] Linking C executable maketrees +[93/93] Linking C executable makecrct ++ ninja install +[0/1] Install the project... +-- Install configuration: "Release" +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/lib/libz.so.1.3.0.zlib-ng +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/lib/libz.so.1 +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/lib/libz.so +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/lib/libz.a +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/include/zlib.h +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/include/zlib_name_mangling.h +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/include/zconf.h +-- Installing: /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/lib/pkgconfig/zlib.pc +++ pwd ++ ls /home/debian/mugen-ruyi/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/include +zconf.h +zlib.h +zlib_name_mangling.h ++ CHECK_RESULT 0 0 0 'Check ruyi zlib-ng build failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi zlib-ng build failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ cd .. ++ cd .. ++ rm -rf build ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:35:07 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:35:07 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:35:08 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpm1w5u_wd ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:35:08 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpm1w5u_wd ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:35:20 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpm1w5u_wd ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:35:28 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpm1w5u_wd ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpm1w5u_wd +Wed Apr 10 21:35:33 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:35:33 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_common/2024-04-10-21_19_05.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_common/2024-04-10-21_19_05.log new file mode 100644 index 00000000..8ea28280 --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_common/2024-04-10-21_19_05.log @@ -0,0 +1,900 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:19:06 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:19:07 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmp8782bjz2 ++ '[' -z '' ']' ++ tmpfile=/tmp/tmp8782bjz2 ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp8782bjz2 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp8782bjz2 +Wed Apr 10 21:19:39 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmp8782bjz2 ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 73 20.8M 73 15.2M 0 0 12.0M 0 0:00:01 0:00:01 --:--:-- 12.0M 100 20.8M 100 20.8M 0 0 13.5M 0 0:00:01 0:00:01 --:--:-- 13.5M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:19:41 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:19:41 2024 - INFO - Start to run test. ++ ruyi --version ++ grep 0.8.0 +Ruyi 0.8.0 ++ local rv=0 ++ CHECK_RESULT 0 0 0 'Check ruyi version failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi version failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ [[ 0x != \0\x ]] ++ ruyi ++ grep usage +usage: ruyi [-h] [-V] ++ CHECK_RESULT 0 0 0 'Check ruyi empty cmdline help failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi empty cmdline help failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi -h ++ grep usage +usage: ruyi [-h] [-V] ++ CHECK_RESULT 0 0 0 'Check ruyi help failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi help failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list +List of available packages: + +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 +* analyzer/dynamorio-riscv + - 10.0.19748-ruyi.20240128 (latest) +* emulator/qemu-system-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) +* emulator/qemu-user-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) + - 8.1.2-ruyi.20231121 (no binary for current host) +* emulator/qemu-user-riscv-xthead + - 6.1.0-ruyi.20231207+g03813c9fe8 (latest, no binary for current host) +* board-image/uboot-revyos-milkv-meles-4g + - 1.0.0 (latest) +* board-image/uboot-revyos-milkv-meles-8g + - 1.0.0 (latest) +* board-image/debian-desktop-sdk-milkv-mars-cm-sd + - 1.0.6+3.6.1 (latest) +* board-image/openwrt-sifive-unmatched + - 0.2305.2 (latest) +* board-image/buildroot-sdk-milkv-duo256m-python + - 1.0.7 (latest) +* board-image/freebsd-riscv64-mini-live + - 14.0.0 (latest) +* board-image/oerv-starfive-visionfive-xfce + - 0.2309.1 (latest) +* board-image/oerv-awol-d1-base + - 0.2303.1 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-16g + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo-python + - 1.0.7 (latest) +* board-image/uboot-revyos-sipeed-lpi4a-8g + - 0.20231210.0 (latest) +* board-image/canmv-debian-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/revyos-sg2042-milkv-pioneer + - 0.20240119.0 (latest) + - 0.20231220.0 () +* board-image/uboot-revyos-sipeed-lpi4a-16g + - 0.20231210.0 (latest) +* board-image/oerv-starfive-visionfive2-xfce + - 0.2309.1 (latest) +* board-image/openkylin-riscv64-sifive-unmatched + - 1.0.0 (latest) +* board-image/revyos-milkv-meles + - 1.0.0 (latest) +* board-image/oerv-awol-d1-xfce + - 0.2303.1 (latest) +* board-image/oerv-sifive-unmatched-base + - 0.2309.1 (latest) +* board-image/oerv-sifive-unmatched-xfce + - 0.2309.1 (latest) +* board-image/openbsd-riscv64-live + - 7.4.0 (latest) +* board-image/buildroot-sdk-milkv-duo + - 1.0.7 (latest) +* board-image/buildroot-sdk-milkv-duos-sd + - 1.0.9 (latest) +* board-image/ubuntu-server-riscv64-sifive-unmatched + - 0.2310.0 (latest) +* board-image/oerv-sg2042-milkv-pioneer-xfce + - 0.2309.1 (latest) +* board-image/oerv-sg2042-milkv-pioneer-base + - 0.2309.1 (latest) +* board-image/revyos-sipeed-lpi4a + - 0.20231210.0 (latest) +* board-image/oerv-starfive-visionfive2-base + - 0.2309.1 (latest) +* board-image/canmv-ubuntu-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/debian-desktop-sdk-milkv-mars-sd + - 1.0.6+3.6.1 (latest) +* board-image/oerv-sipeed-lpi4a-xfce + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo256m + - 1.0.7 (latest) +* board-image/oerv-sipeed-lpi4a-headless + - 0.2309.1 (latest) +* board-image/oerv-starfive-visionfive-base + - 0.2309.1 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-8g + - 0.2309.1 (latest) +* toolchain/gnu-plct-xthead + - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118 +* toolchain/gnu-plct-rv64ilp32-elf + - 0.20240223.0-ruyi.20240224 (latest) +* toolchain/gnu-plct + - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118 +* toolchain/gnu-upstream + - 0.20231212.0 (latest) slug: gnu-upstream-20231212 + - 0.20231118.0 () slug: gnu-upstream-20231118 +* toolchain/llvm-upstream + - 17.0.5-ruyi.20231121 (latest, no binary for current host) slug: llvm-upstream-20231121 +* source/coremark + - 1.0.2-pre.20230125 (prerelease, latest-prerelease) + - 1.0.1 (latest) +* source/ruyisdk-demo + - 0.20231114.0 (latest) ++ CHECK_RESULT 0 0 0 'Check ruyi empty list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi empty list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ '[' -d /home/debian/.cache//ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi create cache directory failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi create cache directory failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi update + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi update failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi update failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* ' +++ wc -l ++ pkgcnt=46 ++ CHECK_RESULT 46 0 1 'Check ruyi list failed' ++ actual_result=46 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi list failed' ++ exit_mode=0 ++ '[' -z 46 ']' ++ '[' 1 -eq 0 ']' ++ test 46x == 0x ++ return 0 ++ ruyi list ++ grep 'Package declares' ++ CHECK_RESULT 1 0 1 'Check ruyi brief list failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi brief list failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Package declares' +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Binary artifacts' +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose artifacts failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose artifacts failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Toolchain metadata' +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose metadata failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose metadata failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list profiles +generic +baremetal-rv64ilp32 (needs flavor(s): {'rv64ilp32'}) +xiangshan-nanhu +sipeed-lpi4a (needs flavor(s): {'xthead'}) +milkv-duo ++ CHECK_RESULT 0 0 0 'Check ruyi profile failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi profile failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* toolchain' +++ cut -d/ -f 2 ++ pkgnames='gnu-plct-xthead +gnu-plct-rv64ilp32-elf +gnu-plct +gnu-upstream +llvm-upstream' ++ for p in $pkgnames +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/gnu-plct-xthead/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ s=' - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118' ++ '[' '!' -z ' - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118' ']' ++ pkgname=gnu-plct-xthead ++ break ++ '[' -z gnu-plct-xthead ']' ++ http_proxy=http://wrong.proxy ++ https_proxy=http://wrong.proxy ++ ruyi install gnu-plct-xthead +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz' returned 5 +info: retrying download (2 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz' returned 5 +info: retrying download (3 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz' returned 5 +fatal error: failed to fetch +'/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthe +ad-linux-gnu.tar.xz': all source URLs have failed + +Downloads can fail for a multitude of reasons, most of which should not and +cannot be handled by Ruyi. For your convenience though, please check if any +of the following common failure modes apply to you, and take actions +accordingly if one of them turns out to be the case: + +* Basic connectivity problems + - is the gateway reachable? + - is common websites reachable? + - is there any DNS pollution? +* Organizational and/or ISP restrictions + - is there a firewall preventing Ruyi traffic? + - is your ISP blocking access to the source website? +* Volatile upstream + - is the recorded link dead? (Please raise a Ruyi issue for a fix!) + ++ CHECK_RESULT 1 0 1 'Check ruyi install package from wrong proxy failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi install package from wrong proxy failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ http_proxy=http://wrong.proxy ++ https_proxy=http://wrong.proxy ++ ruyi install gnu-plct-xthead ++ grep 'Basic connectivity problems' +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz' returned 5 +info: retrying download (2 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz' returned 5 +info: retrying download (3 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz' returned 5 +fatal error: failed to fetch +'/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthe +ad-linux-gnu.tar.xz': all source URLs have failed +* Basic connectivity problems ++ CHECK_RESULT 0 0 0 'Check ruyi install failure message failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install failure message failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install gnu-plct-xthead ++ grep downloading +info: downloading ++ CHECK_RESULT 0 0 0 'Check ruyi install package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install gnu-plct-xthead ++ grep 'skipping already installed package' +info: skipping already installed package gnu-plct-xthead-2.8.0-ruyi.20240222 ++ CHECK_RESULT 0 0 0 'Check ruyi install duplicate package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install duplicate package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install name:gnu-plct-xthead ++ grep 'skipping already installed package' +info: skipping already installed package gnu-plct-xthead-2.8.0-ruyi.20240222 ++ CHECK_RESULT 0 0 0 'Check ruyi install duplicate package by name failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install duplicate package by name failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* source' +++ head -n 1 +++ cut -d/ -f 2 ++ pkgname=coremark ++ mkdir source-test ++ cd source-test ++ ruyi extract coremark +info: downloading https://mirror.iscas.ac.cn/ruyisdk/dist/coremark-1.01.tar.gz to +/home/debian/.cache/ruyi/distfiles/coremark-1.01.tar.gz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 391k 100 391k 0 0 744k 0 --:--:-- --:--:-- --:--:-- 744k +info: extracting coremark-1.01.tar.gz for package coremark-1.0.1 +info: package coremark-1.0.1 extracted to current working directory ++ CHECK_RESULT 0 0 0 'Check ruyi extract failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi extract failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ls ++ '[' 'LICENSE.md +Makefile +README.md +barebones +core_list_join.c +core_main.c +core_matrix.c +core_state.c +core_util.c +coremark.h +cygwin +docs +linux +linux64 +simple' '!=' '' ']' ++ CHECK_RESULT 0 0 0 'Check ruyi extract dir not enpty failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi extract dir not enpty failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ cd .. ++ rm -rf source-test ++ ruyi self uninstall -y +info: uninstallation consent given over CLI, proceeding +info: removing the ruyi binary +info: ruyi is uninstalled ++ CHECK_RESULT 0 0 0 'Check ruyi self uninstall failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi self uninstall failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi version +ruyi_test_common.sh: line 93: /usr/bin/ruyi: No such file or directory ++ CHECK_RESULT 127 0 1 'Check ruyi uninstall exists failed' ++ actual_result=127 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi uninstall exists failed' ++ exit_mode=0 ++ '[' -z 127 ']' ++ '[' 1 -eq 0 ']' ++ test 127x == 0x ++ return 0 ++ '[' -d /home/debian/.cache/ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi cache dir exists failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi cache dir exists failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.local/share/ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi data dir exists failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi data dir exists failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.local/state/ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi state dir exists failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi state dir exists failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp8782bjz2 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp8782bjz2 +Wed Apr 10 21:22:44 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z /tmp/tmp8782bjz2 ']' ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp8782bjz2 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile /tmp/tmp8782bjz2 +Wed Apr 10 21:22:58 2024 - INFO - pkgs:(curl git tar bzip2 xz-utils zstd unzip) is already installed ++ tmpfile2= ++ '[' -z /tmp/tmp8782bjz2 ']' ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp8782bjz2 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp8782bjz2 +Wed Apr 10 21:22:59 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmp8782bjz2 ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 7 20.8M 7 1675k 0 0 2762k 0 0:00:07 --:--:-- 0:00:07 2760k 98 20.8M 98 20.5M 0 0 12.6M 0 0:00:01 0:00:01 --:--:-- 12.6M 100 20.8M 100 20.8M 0 0 12.7M 0 0:00:01 0:00:01 --:--:-- 12.7M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi +ln: failed to create symbolic link '/usr/bin/ruyi': File exists ++ ruyi self uninstall --purge -y +info: uninstallation consent given over CLI, proceeding +info: removing installed packages +info: removing state data +info: removing cached data +info: removing the ruyi binary +info: ruyi is uninstalled ++ CHECK_RESULT 0 0 0 'Check ruyi self purge failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi self purge failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi version +ruyi_test_common.sh: line 105: /usr/bin/ruyi: No such file or directory ++ CHECK_RESULT 127 0 1 'Check ruyi purge exists failed' ++ actual_result=127 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi purge exists failed' ++ exit_mode=0 ++ '[' -z 127 ']' ++ '[' 1 -eq 0 ']' ++ test 127x == 0x ++ return 0 ++ '[' -d /home/debian/.cache/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi purge cache dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi purge cache dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /home/debian/.local/share/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi purge data dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi purge data dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /home/debian/.local/state/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi purge state dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi purge state dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:23:09 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:23:09 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:23:09 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmp8782bjz2 ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp8782bjz2 +Wed Apr 10 21:23:10 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp8782bjz2 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp8782bjz2 +Wed Apr 10 21:23:21 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:23:21 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_config/2024-04-10-21_54_48.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_config/2024-04-10-21_54_48.log new file mode 100644 index 00000000..f1167b86 --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_config/2024-04-10-21_54_48.log @@ -0,0 +1,247 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:54:49 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:54:49 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmp_053p0qv ++ '[' -z '' ']' ++ tmpfile=/tmp/tmp_053p0qv ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp_053p0qv ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp_053p0qv +Wed Apr 10 21:55:21 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmp_053p0qv ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ rm -f ruyi ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 6 20.8M 6 1326k 0 0 2255k 0 0:00:09 --:--:-- 0:00:09 2256k 100 20.8M 100 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M 100 20.8M 100 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:55:24 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:55:24 2024 - INFO - Start to run test. +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ cfg_d=/home/debian/.config/ruyi ++ cfg_f=/home/debian/.config/ruyi/config.toml +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ cc_dir=/home/debian/.cache//ruyi/packages-index ++ cc_td=/tmp/ruyi_config_test ++ '[' '!' -d /home/debian/.config/ruyi ']' ++ mkdir -p /home/debian/.config/ruyi ++ '[' -d /tmp/ruyi_config_test ']' ++ cat ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi update failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi update failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /tmp/ruyi_config_test ']' ++ CHECK_RESULT 0 0 0 'Check ruyi local failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi local failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.cache//ruyi/packages-index ']' ++ CHECK_RESULT 1 0 1 'Check ruyi orig local failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi orig local failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ rm -rf /tmp/ruyi_config_test ++ wr=wrong_magic ++ cat ++ ruyi update ++ grep wrong_magic +_pygit2.GitError: failed to resolve address for wrong_magic: Name or service not known ++ CHECK_RESULT 0 0 0 'Check ruyi remote failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi remote failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ cat ++ ruyi update ++ grep wrong_magic +KeyError: "reference 'refs/remotes/origin/wrong_magic' not found" ++ CHECK_RESULT 0 0 0 'Check ruyi branch failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi branch failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:55:39 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:55:39 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:55:39 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmp_053p0qv ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp_053p0qv +Wed Apr 10 21:55:40 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp_053p0qv ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp_053p0qv +Wed Apr 10 21:55:51 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:55:52 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_35_34.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_35_34.log new file mode 100644 index 00000000..6ff2a72d --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_35_34.log @@ -0,0 +1,3039 @@ ++ source ./common/device_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh +++ source ../common/common_lib.sh ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh +++++ python3 --version +++++ '[' 0 -eq 0 ']' +++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh +++ result_item=() ++ source ../common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ EXECUTE_T=120m ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:35:34 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:35:35 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmp889xv454 ++ '[' -z '' ']' ++ tmpfile=/tmp/tmp889xv454 ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp889xv454 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp889xv454 +Wed Apr 10 21:36:07 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmp889xv454 ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 36 20.8M 36 7819k 0 0 8693k 0 0:00:02 --:--:-- 0:00:02 8688k 100 20.8M 100 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi_test_device/ruyi /usr/bin/ruyi ++ mkdir /tmp/ruyi_device ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:36:09 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:36:09 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ recursion_run '' ++ local now_exec= ++ local end_exec= ++ [[ 0 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Continue /tmp/ruyi_device/output +Continue? (y/N) ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Continue ++ local output +++ grep Continue /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' y = n ']' ++ recursion_run y ++ local now_exec=y ++ local end_exec= ++ [[ 1 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e y ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-14)' ++ [[ (1-14) == \(\y\/\N\) ]] ++ [[ (1-14) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 4 ++ next_step=('1' '2' '3' '4') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n1' ++ local 'now_exec=y\n1' ++ local end_exec= ++ [[ 4 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-1) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-1)' ++ [[ (1-1) == \(\y\/\N\) ]] ++ [[ (1-1) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 1 ++ next_step=('1') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n1\n1' ++ local 'now_exec=y\n1\n1' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-1) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n1\n1\n1' ++ local 'now_exec=y\n1\n1\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n1\n1\n1\ny' y ++ local 'now_exec=y\n1\n1\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n1\n1\n1\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 8098 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 76872 19.2M 40.2M 60.2M 80.2M 99.1M 119M 139M 160M 180M 200M 220M 240M 261M 281M 301M 321M 341M 362M 382M 402M 402M for ' +++ echo Received Spent 0 76872 19.2M 40.2M 60.2M 80.2M 99.1M 119M 139M 160M 180M 200M 220M 240M 261M 281M 301M 321M 341M 362M 382M 402M 402M for ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 76872 =~ [0-9]+ ]] ++ [[ 76872 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n1\ny' +++ sed 's/\\n//g' ++ now_exec_f=y111y +++ echo -E y111y +++ sed 's$/$_$g' ++ now_exec_f=y111y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y111y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf /home/debian/.cache//ruyi/distfiles/openEuler-23.03-V1-base-d1-preview.img.zst +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/oerv-awol-d1-base-0.2303.1 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n1\n1\n1\nn' 2 ++ local 'now_exec=y\n1\n1\n1\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n1\n1\n1\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n1\nn' +++ sed 's/\\n//g' ++ now_exec_f=y111n +++ echo -E y111n +++ sed 's$/$_$g' ++ now_exec_f=y111n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y111n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n1\n1\n2' ++ local 'now_exec=y\n1\n1\n2' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1\n1\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n1\n1\n2\ny' y ++ local 'now_exec=y\n1\n1\n2\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n1\n1\n2\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ tee +/home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh: line 196: 8096 Done nohup echo -e "$now_exec" + 8097 Exit 120 | ruyi device provision 2>&1 + 8098 Killed | tee > /tmp/ruyi_device/output ++ kill -9 8166 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 5579k 11.9M 19.9M 29.0M 39.1M 50.4M 62.7M 76.7M 92.1M 108M 126M 143M 162M 182M 202M 222M 243M 263M 283M 303M 324M 344M 365M 385M 405M 426M 446M 466M 487M 507M 528M 548M 568M 583M 603M 624M 644M 665M 685M 705M 726M 746M 766M 787M 807M 827M 848M 868M 888M 895M ' +++ echo Received Spent 0 0 5579k 11.9M 19.9M 29.0M 39.1M 50.4M 62.7M 76.7M 92.1M 108M 126M 143M 162M 182M 202M 222M 243M 263M 283M 303M 324M 344M 365M 385M 405M 426M 446M 466M 487M 507M 528M 548M 568M 583M 603M 624M 644M 665M 685M 705M 726M 746M 766M 787M 807M 827M 848M 868M 888M 895M ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 5579k =~ [0-9]+ ]] ++ [[ 5579k != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n2\ny' +++ sed 's/\\n//g' ++ now_exec_f=y112y +++ echo -E y112y +++ sed 's$/$_$g' ++ now_exec_f=y112y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y112y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf /home/debian/.cache//ruyi/distfiles/openEuler-23.03-V1-xfce-d1-preview.img.zst +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/oerv-awol-d1-xfce-0.2303.1 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n1\n1\n2\nn' 2 ++ local 'now_exec=y\n1\n1\n2\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n1\n1\n2\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n2\nn' +++ sed 's/\\n//g' ++ now_exec_f=y112n +++ echo -E y112n +++ sed 's$/$_$g' ++ now_exec_f=y112n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y112n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n2' ++ local 'now_exec=y\n2' ++ local end_exec= ++ [[ 4 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-1) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-1)' ++ [[ (1-1) == \(\y\/\N\) ]] ++ [[ (1-1) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 1 ++ next_step=('1') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n2\n1' ++ local 'now_exec=y\n2\n1' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-1) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ tail -1 +++ awk '{print $2}' ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n2\n1\n1' ++ local 'now_exec=y\n2\n1\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2\n1\n1' ++ grep --line-buffered -Ev '^$|#' ++ ruyi device provision ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n2\n1\n1\ny' y ++ local 'now_exec=y\n2\n1\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n2\n1\n1\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ tee +/home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh: line 196: 8164 Done nohup echo -e "$now_exec" + 8165 Exit 120 | ruyi device provision 2>&1 + 8166 Killed | tee > /tmp/ruyi_device/output ++ kill -9 8261 +./common/device_lib.sh: line 49: kill: (8261) - No such process ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 15791 16.4M 35.3M 52.7M 70.0M 89.0M 106M 123M 141M 160M 178M 196M 209M for installed target SD live /dev/nvmeXnY may need path 71, reading the call 57, 300, 30, 110, 197, 73, reading ' +++ echo Received Spent 0 15791 16.4M 35.3M 52.7M 70.0M 89.0M 106M 123M 141M 160M 178M 196M 209M for installed target SD live /dev/nvmeXnY may need path 71, reading the call 57, 300, 30, 110, 197, 73, reading ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 15791 =~ [0-9]+ ]] ++ [[ 15791 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n2\n1\n1\ny' +++ sed 's/\\n//g' ++ now_exec_f=y211y +++ echo -E y211y +++ sed 's$/$_$g' ++ now_exec_f=y211y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y211y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf /home/debian/.cache//ruyi/distfiles/canmv_debian_sdcard_sdk_1.3.img.gz +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/canmv-debian-sdk-canaan-k230-1.3.0 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n2\n1\n1\nn' 2 ++ local 'now_exec=y\n2\n1\n1\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n2\n1\n1\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n2\n1\n1\nn' +++ sed 's/\\n//g' ++ now_exec_f=y211n +++ echo -E y211n +++ sed 's$/$_$g' ++ now_exec_f=y211n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y211n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n2\n1\n2' ++ local 'now_exec=y\n2\n1\n2' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2\n1\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n2\n1\n2\ny' y ++ local 'now_exec=y\n2\n1\n2\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n2\n1\n2\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 8326 +./common/device_lib.sh: line 49: kill: (8326) - No such process ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 15791 19.6M 40.2M 60.7M 81.2M 101M 122M 144M 164M 185M 194M for installed target SD live /dev/nvmeXnY may need path 71, reading the call 57, 300, 30, 110, 197, 73, reading ' +++ echo Received Spent 0 15791 19.6M 40.2M 60.7M 81.2M 101M 122M 144M 164M 185M 194M for installed target SD live /dev/nvmeXnY may need path 71, reading the call 57, 300, 30, 110, 197, 73, reading ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 15791 =~ [0-9]+ ]] ++ [[ 15791 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n2\n1\n2\ny' +++ sed 's/\\n//g' ++ now_exec_f=y212y +++ echo -E y212y +++ sed 's$/$_$g' ++ now_exec_f=y212y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y212y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf /home/debian/.cache//ruyi/distfiles/canmv_ubuntu_sdcard_1.3.img.gz +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/canmv-ubuntu-sdk-canaan-k230-1.3.0 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n2\n1\n2\nn' 2 ++ local 'now_exec=y\n2\n1\n2\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n2\n1\n2\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n2\n1\n2\nn' +++ sed 's/\\n//g' ++ now_exec_f=y212n +++ echo -E y212n +++ sed 's$/$_$g' ++ now_exec_f=y212n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y212n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 3 = n ']' ++ recursion_run 'y\n3' ++ local 'now_exec=y\n3' ++ local end_exec= ++ [[ 4 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n3\n1' ++ local 'now_exec=y\n3\n1' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-2) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n3\n1\n1' ++ local 'now_exec=y\n3\n1\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n3\n1\n1\ny' y ++ local 'now_exec=y\n3\n1\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n3\n1\n1\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 8423 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6881 16518 28920 32768 49143 49143 65518 65518 81893 98304 111k 126k 142k 158k 158k 174k 190k 190k 206k 238k 270k 270k 286k 286k 302k 318k 318k 334k 334k 350k ' +++ echo Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6881 16518 28920 32768 49143 49143 65518 65518 81893 98304 111k 126k 142k 158k 158k 174k 190k 190k 206k 238k 270k 270k 286k 286k 302k 318k 318k 334k 334k 350k ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 6881 =~ [0-9]+ ]] ++ [[ 6881 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n1\n1\ny' +++ sed 's/\\n//g' ++ now_exec_f=y311y +++ echo -E y311y +++ sed 's$/$_$g' ++ now_exec_f=y311y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y311y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf /home/debian/.cache//ruyi/distfiles/milkv-duo-v1.0.7-2023-1223.img.zip +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/buildroot-sdk-milkv-duo-1.0.7 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n3\n1\n1\nn' 2 ++ local 'now_exec=y\n3\n1\n1\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n3\n1\n1\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n1\n1\nn' +++ sed 's/\\n//g' ++ now_exec_f=y311n +++ echo -E y311n +++ sed 's$/$_$g' ++ now_exec_f=y311n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y311n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n3\n1\n2' ++ local 'now_exec=y\n3\n1\n2' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3\n1\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n3\n1\n2\ny' y ++ local 'now_exec=y\n3\n1\n2\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n3\n1\n2\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 8486 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 0 0 0 0 0 0 0 0 0 stream fetch (2 Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ' +++ echo Received Spent 0 0 0 0 0 0 0 0 0 0 0 stream fetch '(2' Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ stream =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ fetch =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ (2 =~ [0-9]+ ]] ++ [[ (2 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n1\n2\ny' +++ sed 's/\\n//g' ++ now_exec_f=y312y +++ echo -E y312y +++ sed 's$/$_$g' ++ now_exec_f=y312y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y312y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/buildroot-sdk-milkv-duo-python-1.0.7 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n3\n1\n2\nn' 2 ++ local 'now_exec=y\n3\n1\n2\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n3\n1\n2\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n1\n2\nn' +++ sed 's/\\n//g' ++ now_exec_f=y312n +++ echo -E y312n +++ sed 's$/$_$g' ++ now_exec_f=y312n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y312n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n3\n2' ++ local 'now_exec=y\n3\n2' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-2) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n3\n2\n1' ++ local 'now_exec=y\n3\n2\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3\n2\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n3\n2\n1\ny' y ++ local 'now_exec=y\n3\n2\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n3\n2\n1\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input +/home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh: line 196: 8484 Done nohup echo -e "$now_exec" + 8485 Exit 120 | ruyi device provision 2>&1 + 8486 Killed | tee > /tmp/ruyi_device/output ++ kill -9 8567 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1369 2747 11015 11015 11015 11015 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 ' +++ echo Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1369 2747 11015 11015 11015 11015 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 13771 ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 1369 =~ [0-9]+ ]] ++ [[ 1369 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n2\n1\ny' +++ sed 's/\\n//g' ++ now_exec_f=y321y +++ echo -E y321y +++ sed 's$/$_$g' ++ now_exec_f=y321y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y321y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf /home/debian/.cache//ruyi/distfiles/milkv-duo256m-v1.0.7-2023-1223.img.zip +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/buildroot-sdk-milkv-duo256m-1.0.7 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n3\n2\n1\nn' 2 ++ local 'now_exec=y\n3\n2\n1\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n3\n2\n1\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n2\n1\nn' +++ sed 's/\\n//g' ++ now_exec_f=y321n +++ echo -E y321n +++ sed 's$/$_$g' ++ now_exec_f=y321n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y321n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n3\n2\n2' ++ local 'now_exec=y\n3\n2\n2' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n3\n2\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n3\n2\n2\ny' y ++ local 'now_exec=y\n3\n2\n2\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n3\n2\n2\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 8630 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ' +++ echo Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' n = n ']' ++ echo -e '\nHappy hacking! 0 1' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n2\n2\ny' +++ sed 's/\\n//g' ++ now_exec_f=y322y +++ echo -E y322y +++ sed 's$/$_$g' ++ now_exec_f=y322y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y322y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/buildroot-sdk-milkv-duo256m-python-1.0.7 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n3\n2\n2\nn' 2 ++ local 'now_exec=y\n3\n2\n2\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n3\n2\n2\nn' ++ ruyi device provision +./common/device_lib.sh: line 37: 8628 Done nohup echo -e "$now_exec" + 8629 Exit 120 | ruyi device provision 2>&1 + 8630 Killed | tee > /tmp/ruyi_device/output ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n3\n2\n2\nn' +++ sed 's/\\n//g' ++ now_exec_f=y322n +++ echo -E y322n +++ sed 's$/$_$g' ++ now_exec_f=y322n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y322n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 4 = n ']' ++ recursion_run 'y\n4' ++ local 'now_exec=y\n4' ++ local end_exec= ++ [[ 4 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n4' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-1) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-1)' ++ [[ (1-1) == \(\y\/\N\) ]] ++ [[ (1-1) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 1 ++ next_step=('1') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n4\n1' ++ local 'now_exec=y\n4\n1' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n4\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-14) +Choice? (1-1) +Choice? (1-1) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-1)' ++ [[ (1-1) == \(\y\/\N\) ]] ++ [[ (1-1) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 1 ++ next_step=('1') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n4\n1\n1' ++ local 'now_exec=y\n4\n1\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n4\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n4\n1\n1\ny' y ++ local 'now_exec=y\n4\n1\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n4\n1\n1\ny' ++ ruyi device provision ++ SLEEP_WAIT 1m ++ tee ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 8724 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 stream fetch (2 Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 stream fetch (3 Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ' +++ echo Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 stream fetch '(2' Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 stream fetch '(3' Received Spent 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ stream =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ fetch =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ (2 =~ [0-9]+ ]] ++ [[ (2 != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n4\n1\n1\ny' +++ sed 's/\\n//g' ++ now_exec_f=y411y +++ echo -E y411y +++ sed 's$/$_$g' ++ now_exec_f=y411y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y411y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf /home/debian/.local/share/ruyi/blobs/buildroot-sdk-milkv-duos-sd-1.0.9 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n4\n1\n1\nn' 2 ++ local 'now_exec=y\n4\n1\n1\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n4\n1\n1\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n4\n1\n1\nn' +++ sed 's/\\n//g' ++ now_exec_f=y411n +++ echo -E y411n +++ sed 's$/$_$g' ++ now_exec_f=y411n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y411n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' n = n ']' ++ end_exec=2 ++ recursion_run n 2 ++ local now_exec=n ++ local end_exec=2 ++ [[ 1 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e n ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E n +++ sed 's/\\n//g' ++ now_exec_f=n +++ echo -E n +++ sed 's$/$_$g' ++ now_exec_f=n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi ++ rm -rf '/home/debian/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi ++ rm -rf '/home/debian/.local/share/ruyi/blobs/*' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check recursion run failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check recursion run failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ls_output=($(ls /tmp/ruyi_device/output*)) +++ ls /tmp/ruyi_device/output_n /tmp/ruyi_device/output_y111n /tmp/ruyi_device/output_y111y /tmp/ruyi_device/output_y112n /tmp/ruyi_device/output_y112y /tmp/ruyi_device/output_y211n /tmp/ruyi_device/output_y211y /tmp/ruyi_device/output_y212n /tmp/ruyi_device/output_y212y /tmp/ruyi_device/output_y311n /tmp/ruyi_device/output_y311y /tmp/ruyi_device/output_y312n /tmp/ruyi_device/output_y312y /tmp/ruyi_device/output_y321n /tmp/ruyi_device/output_y321y /tmp/ruyi_device/output_y322n /tmp/ruyi_device/output_y322y /tmp/ruyi_device/output_y411n /tmp/ruyi_device/output_y411y ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_n ++ local file=/tmp/ruyi_device/output_n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y111n ++ local file=/tmp/ruyi_device/output_y111n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y111n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y111n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y111n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y111y ++ local file=/tmp/ruyi_device/output_y111y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y111y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y111y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y111y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y112n ++ local file=/tmp/ruyi_device/output_y112n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y112n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y112n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y112n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y112y ++ local file=/tmp/ruyi_device/output_y112y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y112y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y112y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y112y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y211n ++ local file=/tmp/ruyi_device/output_y211n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y211n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y211n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y211n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y211y ++ local file=/tmp/ruyi_device/output_y211y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y211y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y211y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y211y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y212n ++ local file=/tmp/ruyi_device/output_y212n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y212n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y212n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y212n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y212y ++ local file=/tmp/ruyi_device/output_y212y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y212y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y212y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y212y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y311n ++ local file=/tmp/ruyi_device/output_y311n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y311n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y311n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y311n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y311y ++ local file=/tmp/ruyi_device/output_y311y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y311y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y311y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y311y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y312n ++ local file=/tmp/ruyi_device/output_y312n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y312n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y312n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y312n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y312y ++ local file=/tmp/ruyi_device/output_y312y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y312y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y312y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y312y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y321n ++ local file=/tmp/ruyi_device/output_y321n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y321n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y321n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y321n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y321y ++ local file=/tmp/ruyi_device/output_y321y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y321y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y321y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y321y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y322n ++ local file=/tmp/ruyi_device/output_y322n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y322n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y322n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y322n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y322y ++ local file=/tmp/ruyi_device/output_y322y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y322y ++ ret='Happy hacking! 0 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 1 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 0 = 0 ']' ++ '[' 1 = 0 ']' ++ '[' 0 '!=' 0 ']' +++ expr 0 + 1 ++ res=1 ++ return 1 ++ CHECK_RESULT 1 0 0 'Check file /tmp/ruyi_device/output_y322y failed' ++ actual_result=1 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y322y failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 0 -eq 0 ']' ++ test 1x '!=' 0x ++ test -n 'Check file /tmp/ruyi_device/output_y322y failed' ++ LOG_ERROR 'Check file /tmp/ruyi_device/output_y322y failed' ++ message='Check file /tmp/ruyi_device/output_y322y failed' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level error --message 'Check file /tmp/ruyi_device/output_y322y failed' +Wed Apr 10 21:47:16 2024 - ERROR - Check file /tmp/ruyi_device/output_y322y failed ++ (( exec_result++ )) ++ LOG_ERROR 'ruyi_test_device.sh line 44' ++ message='ruyi_test_device.sh line 44' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level error --message 'ruyi_test_device.sh line 44' +Wed Apr 10 21:47:17 2024 - ERROR - ruyi_test_device.sh line 44 ++ '[' 0 -eq 1 ']' ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y411n ++ local file=/tmp/ruyi_device/output_y411n ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y411n ++ ret='Happy hacking! 1 1' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $3}' ++ local ret_e=1 +++ echo Happy 'hacking!' 1 1 +++ awk '{print $4}' ++ local ret_g=1 ++ '[' 1 = 0 ']' ++ '[' 1 '!=' 0 ']' ++ '[' 1 '!=' 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y411n failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y411n failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for file in ${ls_output[@]} ++ test_res /tmp/ruyi_device/output_y411y ++ local file=/tmp/ruyi_device/output_y411y ++ local res=0 ++ local ret=0 +++ grep 'Happy hacking!' /tmp/ruyi_device/output_y411y ++ ret='Happy hacking! 0 0' +++ expr 0 + 0 ++ res=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $3}' ++ local ret_e=0 +++ echo Happy 'hacking!' 0 0 +++ awk '{print $4}' ++ local ret_g=0 ++ '[' 0 = 0 ']' ++ '[' 0 = 0 ']' +++ expr 0 + 0 ++ res=0 ++ return 0 ++ CHECK_RESULT 0 0 0 'Check file /tmp/ruyi_device/output_y411y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check file /tmp/ruyi_device/output_y411y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ rm -rf /tmp/ruyi_device/test +++ date +%Y-%m-%d-%H:%M:%S ++ tar zcf /home/debian/mugen-ruyi/logs/ruyi/ruyi_test_device/2024-04-10-21:47:17.tar.gz /tmp/ruyi_device +tar: Removing leading `/' from member names ++ CHECK_RESULT 0 0 0 'Backup temp log file /tmp/ruyi_device/output_y411y failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Backup temp log file /tmp/ruyi_device/output_y411y failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:47:17 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z 1 ++ test 1 -gt 0 ++ LOG_ERROR 'failed to execute the case.' ++ message='failed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level error --message 'failed to execute the case.' +Wed Apr 10 21:47:17 2024 - ERROR - failed to execute the case. ++ exit 1 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:47:17 2024 - INFO - start environment cleanup. ++ rm -rf /tmp/ruyi_device ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmp889xv454 ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp889xv454 +Wed Apr 10 21:47:18 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp889xv454 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp889xv454 +Wed Apr 10 21:47:29 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:47:29 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_47_17.tar.gz b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_device/2024-04-10-21_47_17.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..7a4f87c1850131c4bd4ad169900a2ae036b76a3a GIT binary patch literal 6908 zcmZX32T&AU(=Ji+g0kc#iIQOf$skJ*ku0d>Ad)4>!jcqO(u%MM0)l`mNqs?b1_8-A z=Ow2F$vLN;i|_Z{d;h9`x~i+EpMLtBn&~;GPYoxUoZ#P!c=M~fq+Us#I&_XD_fA^V?@rzpjxf_I!JQo$kKU;f7}Bys#ct`+mwxd< z2aH3X&9oLc!0%gw4tjN8%WD=4!6gFrX+V@3>0o>}k@^N;)K1SU^(<18x0Svt%XUZzV~%sJ*!>V$VG5Pm7-nlUaZG3hjTvsQBe|1u&aL?= zJ)1r;Hqxus2sW%l@6-Zsb}|n1t*&&elJR^y`i-ILID(DsaXs<2nXYeVjM^ zBnQOC{{)0G(W!8!MxOM{RgB|Y;i*=x`^=iqpijab5**fTOr2e`h&W5AgK5+X&t3py z;Xfby7&r3Bj6WT68rhZic~Ia=-z>FsCB>e$D7vin$^{J_WUq; zI-j?FVj&-n?DCs^p+x7HKCSkic6`M=XVFT)$CD+ zxT7xf24^(M6L=u8n_QY&aR!StPJq!(g5{%(A0L=|IBDgvS6r&C0uv_x*w?&;TVaC{7&$?da!{I-@!4?6-J) zs!rW8h47gG9$C3boSKgTynG+Ox%N%TTC2R9?c##YsannN$C-vWqNG>YC3T3F&)ytU z?DKp9#DBdn?m;N)4auxMQw?UDd{0!c|wU6gL$JJt^cbt7RbVo$Q$ zC_;{EokD`dvdYW>O_55o_-u6pEWg8A!_2^Lm$zPEW(ynM7x4#hQ!DD>qsRrV&#+Od zZu63-FXt0=7~@9cvPweiy`ygE+B)%P_X(Q1cAGwvQCwr~fA_L+#LNkas{Zk?{%cwm zPVybMQ+yw9_6kXR#SFt$6Dc&(;Ap1zb&ANO+g?n|Qz@m;WKOinhu020x$h3QX3Kc& zr82RC2b@d7p;jATR2-bNN33;4FTD5nWk^~G zTih*&Uw}jW2(Lc&!C$XlfuWye1}<^hRl9TKJbAuz@oPMaK9ficXFr~PdJ_25-GqNK zi&tn{*n+(R{4e^akhAzVtH)`%eRVgUd$$so5o9G)*DfWoxfi{zn3Zk}Isluq&7BlLi{s@VAc;d__{0+8I16uK?sr5O z=%^|MX==X&5+gph@?&|d<*kzIc$p|T64@QBVSGHPj`5=xy68p=q4kRccg8ZxkaT}WA!NISiVt_ zdwGa=E<>JqzS9DTV@BJm(yXm|RAMYYanHRxYA(k<1k_+AB5JFup^I^d&fyCyaYo_F zAx%6pO?%2WXdt1CP=FHrh>S6(g(CjjL(2Yv%xCg#{2k}gdVMx-iA~q8cjz| zO_UDUsrM6MF-5d`51JNFA30$eRFfen%UYP|5+mPZHRm68>7q$I8ulC8;Z*CgDAGKS z;Lb+IDq=ka2srGUo8h8rd~*@{q+KBViHQ`pG`91mL&qeWF}!DW~jaARk@ndj{GN`ZC*I7X(ph@!Gl?g@U(Dh5}QVEfs z$p@EgPsJ|Bghuyo0t$(M@j6%b7VxbN$UURq0q!>~T-DD48~;yTC?5mtSQ-m(rtPa; zru12XT0pD%WHFGm?+u)`-51JM{R*i%nRGM*Lv;GVDpJUVAt^IWYd z6u%^k zI0F^@gQMb&?Wpqy3#Q+m?ilZ`z`vdt^zMcFLTi<7zJ6<$=2<{{JdI5JbER?;bWlT3 ztFS6s)xHcmXPP11JySVTav<6PPKe7m(`lRDVu=rp7i;VB9+(p>XY>L7ycr(TZM`GX z5pJ(S`AUU@cVaf=k`hzNbzNRm`yT%qZ?TNu=Qj4}Vk|FUa!pyBDxae2hjp@NLF2#*^vM4gJ+ZnS0r77r=dgimw-&)GF$OsbBVnM$2w> z9;+j3{m;%5OJi79xwZFm0|UPHp3{%Dn@!ul=}_!F5a#@z3$JBu!8Q7cx0vyobmIko zudeJ4j}DC0T8{)&^<+qPmS1IjKKaG`co67_)GmY6y(r(&JL?V!x(;JRKe;-l0>Fs_R^ z97UY;VJlt@Hfv!*?7YcNxI;aQBL-<+k-srI!;GTS5xI3Ws z+C_19__brH?1PK9I;u2n+>TmQG9=StO{~+O4I5X(+R9kk^lQi_uDfQw%BAI2mgP0# z{bV~ccs!zX{iX@#dNBX-w(_OEMZtUmLScCDwS)9GRbMpeDeA?&Op@#5;MxyQ6yOO) zLHmh6sIK_}OO_r9Mhydo3)jO4AiN%&K?;T_yM!#3w8AxSR=`ERmRD&BWi#M95(*Nh zX^pKd1wEoBe`X~rf{kCliPPUu^ZGt zUTJGIG!GzGvAonTK%XGPkiZImxHYi10SmlpF9Z~Gj?$*8mkkOCX3TD0DA8S>Gd}3j zQ9RWea8Gu%I=EoT-fXk*8nI7@*CtsXp??n5N=QnhwyZN}C5^*g7s7rxnbDAgjt)-W z1yKj(<-6pd?{h-kd;YL8Go&!mZ`>w1_kA1ChF2K7n2VxX*n}-#A=?%IS9^5A5;Jda z`YZ5gBc0^K0g3#&p!h|7xBs2a@D8YZpxN{#LaGtF{APD&S%3|!5)8#pVjF#_a#YSa z*xz7`^jQB1dGEF$JG>g2gJiw^1^T;eVe{*ZEe?4X{Pij1ue2a{7&u8pDs6}9S1f1}s6vYuYqK7Z zqeJbK$#luk!mm8o`s9zD;ImIcwg+#Kb&9=Qc-q~#cqurBvbhYSoPiZMig#waFPQx( zm7RL8vh4FTqZu{6-&^2xVX|Sx*)0N}q@d(A?dHieFDR|n?~=YfU$jNU$DibSLE&Aq zCEQmnMzW}iD3VoayhGK*Sg`iISaxHam{3@VP43!-PO;3Gdf^HmD{j}qz(c`RW}a+V zM5MfhuK$Ous;!%6`&_@aD9)yr2HMe1{xR#3Q0vFKCMf?Y<_X6M*;E?i=MO&NE+&K( z%-{M%3!(?##4j|fR=;DBy6R54<5U>Rj)=|c?tIl9Xw@gpbc%?TYpyGSJ{R1QN&|P4 z+Ifg)zo@3GnkeL)Ytn)5ub)v}3i0|&^cVCrhlpNZ5g&lSjs!A3h)BD~$x)j5t{t_;wk2kq=mfv}u zl3;Igm34ooe~bPzfE7BIv(9RJ?@1;9+#+AP)EmxLcG)?xDS=}B^6Z8enJed}Po9aH zqBtWh4HZV(aZkQ;0iIq~BwEyDB9*7??LPq>s4Xbt*(Yp~lq1%>-QR zn)jOWu7VWJ)p?~%A>3>Dy)tDNS%32L#w7gv-eBEn=YmzFECB{72D6<36hsRu|Mx0Oih0*UW|_KnOOrHbN4X6Of9NwwfvU; z)>tg5zXY`X+x$}9{1Vnys$24dz^`44xaT~iQIXvE)YpI03Rpf_1ege+mjM1EO+)VT zywDmr+Nck_!WIJOM{@;ZNSQy|vjD&xJu`=dr2y804QBv@{VafNY5sc{Iyg?N1UM3| zR_XzKRXq?G!x^}!gXPW6<=BnnU)C{KTf&>6*5sziyIzj>FfmB%` zMNQ&WNx08)+7>2%xb(;wq~VHDex)S_9d2KnV=1Ro<*3^T7zVfgj18*Dt>~gK`tzJv-KOEB$-t^v;E#_Q zrMqX3;}cDO6RNCdxk4u2lUp^Npq0U383$E8r}Hq0U!2iHta>D;zb9|;bwj4@S$2Jl z!-S()6P6WALR3lI;}|MRx|Wnz9x{7yJ4L|3kuUn)XtLBSo5ermm@Srd8Yq)k(2#|7=YPK^2F@kUVnxu>j;IDI98)W$*vuKG?2Qt?&9(#ccuk%UFZq^Cyun-p30 zNY-d{O8Nuda9f@fCn7ftC7Z0KiznH7Cx*FOkWBdAKk5UlMDC3d??<)U?P%J&Ak!!+ zT`Whs$*-$lM)G}5G#Ux$0UK$OW*mW!I09Am198)B(Qc_MWZ`|2h+Y!pL)r#vA$n%W z#|=Ziao>Dy#D!=zi294H&ZnOh)9^_!m?F{``qg7k?Yo2=L_OSq^}V#7WR2?HBmwD+ z8C4+2!Twptx*K0Mi!hbN<39~tjZIvx=sgix_Aza~s-L#ORJx#J z+USzoFL6x{Q$NKrr67eL`1ymV+Z8q^=&F67kSRe+?%y}Ea@hDC$};bhkWY@7>iYlQ z@_T+Gj;LKHx=o2N|D%cNACKMK=e?<;0l5eZR;^$hug3gtC%-X*6GHP%UhfP1X9G+A zd{-H}y|5GR!4pTRLT7b@L@l9DgOtqaI%{C;#k@(?s83f!v7!A@<8iRR%8a4>=qCk{ z!^CtC$Qx~psFz0pF=qeb0Iwc1vzK;Od|4kC*>H|*WIe>s@o@bAvqVf6uz`cYR!{rW z`r2s~@%IvorcV16-p{gJj#h~oF5|u%s+3((^V}Axu%c($J}b0Xraw)hT-nn;cw`5s z*63`bDvo?P)-X}tv@ZoeXmIEwhWJ)VjO|E^Ql2qJe_?1pcUgomSu7}q(u4TOU;W1B z6W?W(Wr{U2lB4d&*>7%A@@0^wpx1(zbRllFynPP^?{K50i1g$zA&gFS#k5&&^~L?u z&F*I@vdzn}AOQwRtcM1#nd{|FstfF2M#8mo6A;B>RL=GC(|)UPIa>1;hFV(@Zf{*VzTL4K|ODDOusB{QRukmdPie%tK-#UQwdK- zEA-_+qP|+T&_DmX75W`W!N>ggQp*=%OhU;y?-dHzL1`EE2Or*!`9*w{^Hn*klU0il zFI*(<^Csmr6vE$7|HRjH;GxiTwm zP*fE~O;{~>s9b+(B{#Q%Ml)^3m!GqJHLF^nk5_cXrC8d8>sJQ4G-;wGgdd{ltBl6m zP`VbQrADcD%Vqi6+D04Mh{2EE+%pWzp|r;iK5&BTMTra8v0Fhr67;LRGLm$m{(x>ZA^M)e)y1^qUz0RHVDW5Qh zy-e*H*!@>*tDLxW?4dmymilpFj{JVZT`i2K8UgPQcU%hhJi92OHP6GHTrBvk*`X-O zhng-NZNcM-At6|4VUCZifcG+U`J|T5)y+38T1?p(?)ikpIa~*o2K)G-hJm@+^5qH| z;zp}<-wwjbpxgF_)yhb!vfs*&PfJk?)129-lXuJG;%?9gP298oqMZDQv79x&n_Z7k zN%1I7j~e`%*-6FnCOfSyXX+-VFTz1wN8^K!Q@RO9o04J#Nx8SrkI**ed@?`gi-E|$ zx8e}?j$ppD$lI|4+C0C7AlC`ZV$;80kUQHxQE);2!f3gW9=n}~bKO+qyY(r)Usz<1VUllVpu^{p7pVP02jN zdt%2K^b{|HqphBohrZLaL`i%tyhBIP)d^NcTu&kWZ??bu9m>pHc1gvVj#njg*Yi_1 zR&XMb=V;>|iPO8o{}VZ*#A%+F>wSiC^M{x=MM4zeJY84pNeIZ*2964Xtzy zjJpSGCx)d2bJlLG=GgG=qX7RDQC1ORtEPun8l`ys$(&4lb1PmSbXHIL5r_q7V*vvo z_?&hG38};r&!qZ9NL^uN4uO$sp*kQp8vq|#Qz-)~{|dVnkidD&onY-v=yLU?&Z2+i z6|620Sdxn~4y&yK2J6@S&udMzen-V<;XKw{N`L-=-s_CRf3`i7k+z3o)m4SOgWfj7&9x;4 z+8U~YEZ?iUl{lDA-rcDd*c`Co+`et6`wj* zOZ8d4NtXG&F$--K?SE3bS$vzHdTr3oy661zXB8U_`^l>#Ws^hkr1yUE%K|JQWdVr% z0iG5XfbY~G%v<=L-1BHY4*I-lL14tUeE3*GerSFxm8h$Pf cx?smeK=_~ETmM(j(jp1o{b~{>a3Uo5KbwEOQUCw| literal 0 HcmV?d00001 diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct-rv64ilp32-elf/2024-04-10-21_52_28.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct-rv64ilp32-elf/2024-04-10-21_52_28.log new file mode 100644 index 00000000..78420097 --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct-rv64ilp32-elf/2024-04-10-21_52_28.log @@ -0,0 +1,293 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:52:28 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:52:29 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpgtn6tidu ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpgtn6tidu ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpgtn6tidu ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpgtn6tidu +Wed Apr 10 21:53:01 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpgtn6tidu ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 59 20.8M 59 12.4M 0 0 10.9M 0 0:00:01 0:00:01 --:--:-- 10.9M 100 20.8M 100 20.8M 0 0 13.5M 0 0:00:01 0:00:01 --:--:-- 13.5M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:53:03 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:53:03 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct-rv64ilp32-elf +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240224-PLCT-Sources-RV64ILP32-g8c718031673d-HOST-riscv64-linux-gnu-ris +cv64-plct-elf.tar.xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240224-PLCT-Sources-RV64ILP32-g8c718031673d-HOST-riscv64-linux-gnu-riscv64- +plct-elf.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 41 42.8M 41 17.7M 0 0 12.6M 0 0:00:03 0:00:01 0:00:02 12.6M 88 42.8M 88 37.7M 0 0 15.7M 0 0:00:02 0:00:02 --:--:-- 15.7M 100 42.8M 100 42.8M 0 0 16.2M 0 0:00:02 0:00:02 --:--:-- 16.2M +info: extracting RuyiSDK-20240224-PLCT-Sources-RV64ILP32-g8c718031673d-HOST-riscv64-linux-gnu-riscv64-plct-elf.tar.xz +for package gnu-plct-rv64ilp32-elf-0.20240223.0-ruyi.20240224 +info: package gnu-plct-rv64ilp32-elf-0.20240223.0-ruyi.20240224 installed to +/home/debian/.local/share/ruyi/binaries/riscv64/gnu-plct-rv64ilp32-elf-0.20240223.0-ruyi.20240224 ++ [[ 0 != \0 ]] ++ ruyi venv -t gnu-plct-rv64ilp32-elf --without-sysroot baremetal-rv64ilp32 /tmp/mugen_test_venv +info: Creating a Ruyi virtual environment at /tmp/mugen_test_venv... +info: The virtual environment is now created. + +You may activate it by sourcing the appropriate activation script in the +bin directory, and deactivate by invoking `ruyi-deactivate`. + +The virtual environment also comes with ready-made CMake toolchain file +and Meson cross file. Check the virtual environment root for those; +comments in the files contain usage instructions. + ++ CHECK_RESULT 0 0 0 'Check ruyi venv creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi venv creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ cat ++ CHECK_RESULT 0 0 0 'Check test.c creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.c creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ source /tmp/mugen_test_venv/bin/ruyi-activate +++ '[' /tmp/mugen_test_venv/bin/ruyi-activate = ruyi_test_gnu-plct-rv64ilp32-elf.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/tmp/mugen_test_venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ PATH=/tmp/mugen_test_venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ export PATH +++ hash -r ++++ basename /tmp/mugen_test_venv +++ RUYI_VENV_PROMPT=mugen_test_venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi mugen_test_venv» ' +++ export PS1 ++ riscv64-plct-elf-gcc -O2 -c -o test.o test.c ++ CHECK_RESULT 0 0 0 'Check test.c compilation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.c compilation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ riscv64-plct-elf-readelf -h test.o ++ grep 32 + Class: ELF32 + Flags: 0x25, RVC, X32, double-float ABI ++ CHECK_RESULT 0 0 0 'Check test.o 32bit failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.o 32bit failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ riscv64-plct-elf-objdump -dw test.o ++ grep a0 + 0: 6108 ld a0,0(a0) + 2: 952e add a0,a0,a1 + 8: 4511 li a0,4 + 14: 4511 li a0,4 + 1e: 4521 li a0,8 + 2a: 4511 li a0,4 ++ CHECK_RESULT 0 0 0 'Check test.o 64bit reg failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.o 64bit reg failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ rm -f test.c test.o ++ rm -rf /tmp/mugen_test_venv ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:53:36 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:53:36 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:53:36 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpgtn6tidu ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpgtn6tidu +Wed Apr 10 21:53:37 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpgtn6tidu ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpgtn6tidu +Wed Apr 10 21:53:48 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:53:49 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct_xiangshan-nanhu/2024-04-10-21_55_52.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct_xiangshan-nanhu/2024-04-10-21_55_52.log new file mode 100644 index 00000000..17444dfa --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_gnu-plct_xiangshan-nanhu/2024-04-10-21_55_52.log @@ -0,0 +1,263 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:55:53 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:55:54 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmph4sqi85n ++ '[' -z '' ']' ++ tmpfile=/tmp/tmph4sqi85n ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmph4sqi85n ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmph4sqi85n +Wed Apr 10 21:56:26 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmph4sqi85n ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 84 20.8M 84 17.5M 0 0 12.8M 0 0:00:01 0:00:01 --:--:-- 12.8M 100 20.8M 100 20.8M 0 0 13.6M 0 0:00:01 0:00:01 --:--:-- 13.6M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:56:28 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:56:28 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 2 231M 2 4942k 0 0 6419k 0 0:00:36 --:--:-- 0:00:36 6418k 11 231M 11 25.9M 0 0 14.4M 0 0:00:16 0:00:01 0:00:15 14.4M 19 231M 19 45.9M 0 0 16.5M 0 0:00:13 0:00:02 0:00:11 16.5M 28 231M 28 67.0M 0 0 17.5M 0 0:00:13 0:00:03 0:00:10 17.5M 37 231M 37 87.0M 0 0 18.1M 0 0:00:12 0:00:04 0:00:08 18.1M 46 231M 46 107M 0 0 18.5M 0 0:00:12 0:00:05 0:00:07 20.4M 55 231M 55 128M 0 0 18.8M 0 0:00:12 0:00:06 0:00:06 20.4M 63 231M 63 148M 0 0 19.0M 0 0:00:12 0:00:07 0:00:05 20.4M 73 231M 73 169M 0 0 19.2M 0 0:00:12 0:00:08 0:00:04 20.4M 81 231M 81 189M 0 0 19.3M 0 0:00:11 0:00:09 0:00:02 20.4M 90 231M 90 209M 0 0 19.4M 0 0:00:11 0:00:10 0:00:01 20.3M 99 231M 99 230M 0 0 19.4M 0 0:00:11 0:00:11 --:--:-- 20.4M 100 231M 100 231M 0 0 19.5M 0 0:00:11 0:00:11 --:--:-- 20.3M +info: extracting RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz for package +gnu-plct-0.20240324.0 +info: package gnu-plct-0.20240324.0 installed to /home/debian/.local/share/ruyi/binaries/riscv64/gnu-plct-0.20240324.0 ++ ruyi venv -t gnu-plct xiangshan-nanhu /tmp/mugen_test_venv +info: Creating a Ruyi virtual environment at /tmp/mugen_test_venv... +info: The virtual environment is now created. + +You may activate it by sourcing the appropriate activation script in the +bin directory, and deactivate by invoking `ruyi-deactivate`. + +A fresh sysroot/prefix is also provisioned in the virtual environment. +It is available at the following path: + + /tmp/mugen_test_venv/sysroot + +The virtual environment also comes with ready-made CMake toolchain file +and Meson cross file. Check the virtual environment root for those; +comments in the files contain usage instructions. + ++ CHECK_RESULT 0 0 0 'Check ruyi venv creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi venv creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ cat ++ CHECK_RESULT 0 0 0 'Check test.c creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.c creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ source /tmp/mugen_test_venv/bin/ruyi-activate +++ '[' /tmp/mugen_test_venv/bin/ruyi-activate = ruyi_test_gnu-plct_xiangshan-nanhu.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/tmp/mugen_test_venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ PATH=/tmp/mugen_test_venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ export PATH +++ hash -r ++++ basename /tmp/mugen_test_venv +++ RUYI_VENV_PROMPT=mugen_test_venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi mugen_test_venv» ' +++ export PS1 ++ riscv64-plct-linux-gnu-gcc -O2 -c -o test.o test.c ++ CHECK_RESULT 0 0 0 'Check test.c compilation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.c compilation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ rm -f test.c test.o ++ rm -rf /tmp/mugen_test_venv ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:58:10 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:58:10 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:58:10 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmph4sqi85n ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmph4sqi85n +Wed Apr 10 21:58:11 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmph4sqi85n ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmph4sqi85n +Wed Apr 10 21:58:22 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:58:25 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_llvm/2024-04-10-21_53_50.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_llvm/2024-04-10-21_53_50.log new file mode 100644 index 00000000..0ca71ab4 --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_llvm/2024-04-10-21_53_50.log @@ -0,0 +1,183 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:53:50 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:53:51 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmp1zbca0_8 ++ '[' -z '' ']' ++ tmpfile=/tmp/tmp1zbca0_8 ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp1zbca0_8 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp1zbca0_8 +Wed Apr 10 21:54:23 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmp1zbca0_8 ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 39 20.8M 39 8525k 0 0 9110k 0 0:00:02 --:--:-- 0:00:02 9108k 100 20.8M 100 20.8M 0 0 13.4M 0 0:00:01 0:00:01 --:--:-- 13.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:54:25 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:54:25 2024 - INFO - Start to run test. ++ mkdir llvm_test ++ cd llvm_test ++ qemu_pkg=qemu-user-riscv-upstream ++ qemu_cmd='-e qemu-user-riscv-upstream' ++ qemu_bin=ruyi-qemu +++ uname -m ++ '[' riscv64 == riscv64 ']' ++ qemu_pkg= ++ qemu_cmd= ++ qemu_bin= ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% +(45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% +(74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% +(104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% +(133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: +22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting +objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting +objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting +objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% +(274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/llvm-upstream/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ pe= ++ '[' -z '' ']' +++ uname -m ++ LOG_INFO 'No llvm-upstream available for current host riscv64, skip' ++ message='No llvm-upstream available for current host riscv64, skip' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'No llvm-upstream available for current host riscv64, skip' +Wed Apr 10 21:54:35 2024 - INFO - No llvm-upstream available for current host riscv64, skip ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:54:35 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmp1zbca0_8 ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp1zbca0_8 +Wed Apr 10 21:54:36 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp1zbca0_8 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp1zbca0_8 +Wed Apr 10 21:54:47 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:54:47 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_news/2024-04-10-21_14_31.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_news/2024-04-10-21_14_31.log new file mode 100644 index 00000000..8931939b --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_news/2024-04-10-21_14_31.log @@ -0,0 +1,241 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:14:31 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:14:32 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmps_bhfubx ++ '[' -z '' ']' ++ tmpfile=/tmp/tmps_bhfubx ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmps_bhfubx ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmps_bhfubx +Wed Apr 10 21:15:04 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmps_bhfubx ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 17 20.8M 17 3774k 0 0 5257k 0 0:00:04 --:--:-- 0:00:04 5257k 100 20.8M 100 20.8M 0 0 13.3M 0 0:00:01 0:00:01 --:--:-- 13.3M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:15:06 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:15:06 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% +(23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% +(52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% +(82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% +(111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% +(141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing +objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% +(97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% +(110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi news read ++ grep '#' +# RuyiSDK 支持展示新闻了 +# 新增板卡支持 (2024-01-15) +## Milk-V Duo +### 64M RAM 版本 +### 256M RAM 版本 +## Milk-V Pioneer +## Sipeed LicheePi 4A +# 新增板卡支持 (2024-01-29) +## Sipeed LicheeRV & Allwinner 哪吒 D1 +## StarFive VisionFive +## StarFive VisionFive2 +# RuyiSDK 0.4 版本更新说明 +## RuyiSDK 包管理器 +## RuyiSDK 软件源 +# RV64ILP32 裸机工具链与 profile 现已可用 +## 使用示例 ++ CHECK_RESULT 0 0 0 'Check ruyi news read failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news read failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news read ++ grep 'No news to display.' +No news to display. ++ CHECK_RESULT 0 0 0 'Check ruyi news read empty failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news read empty failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news read 1 ++ grep '#' +# RuyiSDK 支持展示新闻了 ++ CHECK_RESULT 0 0 0 'Check ruyi news read 1 failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news read 1 failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news list ++ grep 'News items' +News items: ++ CHECK_RESULT 0 0 0 'Check ruyi news list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:15:27 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:15:27 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:15:27 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmps_bhfubx ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmps_bhfubx +Wed Apr 10 21:15:28 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmps_bhfubx ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmps_bhfubx +Wed Apr 10 21:15:39 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:15:39 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_qemu/2024-04-10-21_59_25.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_qemu/2024-04-10-21_59_25.log new file mode 100644 index 00000000..0954d6df --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_qemu/2024-04-10-21_59_25.log @@ -0,0 +1,175 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:59:25 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:59:26 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmp0nvszd0h ++ '[' -z '' ']' ++ tmpfile=/tmp/tmp0nvszd0h ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmp0nvszd0h ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmp0nvszd0h +Wed Apr 10 21:59:58 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmp0nvszd0h ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 5 20.8M 5 1246k 0 0 2185k 0 0:00:09 --:--:-- 0:00:09 2183k 100 20.8M 100 20.8M 0 0 13.3M 0 0:00:01 0:00:01 --:--:-- 13.3M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 22:00:00 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 22:00:00 2024 - INFO - Start to run test. ++ mkdir qemu_test ++ cd qemu_test ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing +objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% +(85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% +(97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing +objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing +objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% +(141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing +objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing +objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% +(191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* emulator\/qemu-user-riscv-upstream/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ pe= ++ '[' -z '' ']' +++ uname -m ++ LOG_INFO 'No qemu-user-riscv-upstream available for current host riscv64, skip' ++ message='No qemu-user-riscv-upstream available for current host riscv64, skip' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'No qemu-user-riscv-upstream available for current host riscv64, skip' +Wed Apr 10 22:00:11 2024 - INFO - No qemu-user-riscv-upstream available for current host riscv64, skip ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 22:00:11 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmp0nvszd0h ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp0nvszd0h +Wed Apr 10 22:00:12 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp0nvszd0h ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmp0nvszd0h +Wed Apr 10 22:00:23 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 22:00:24 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_venv/2024-04-10-21_23_22.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_venv/2024-04-10-21_23_22.log new file mode 100644 index 00000000..94eefaeb --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_venv/2024-04-10-21_23_22.log @@ -0,0 +1,263 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:23:22 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:23:23 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpiluuprvr ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpiluuprvr ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpiluuprvr ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpiluuprvr +Wed Apr 10 21:23:55 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpiluuprvr ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 33 20.8M 33 7115k 0 0 8506k 0 0:00:02 --:--:-- 0:00:02 8501k 100 20.8M 100 20.8M 0 0 13.7M 0 0:00:01 0:00:01 --:--:-- 13.8M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:23:57 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:23:57 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 7 231M 7 16.5M 0 0 12.3M 0 0:00:18 0:00:01 0:00:17 12.3M 15 231M 15 36.5M 0 0 15.7M 0 0:00:14 0:00:02 0:00:12 15.7M 24 231M 24 57.6M 0 0 17.1M 0 0:00:13 0:00:03 0:00:10 17.1M 33 231M 33 77.5M 0 0 17.9M 0 0:00:12 0:00:04 0:00:08 17.9M 42 231M 42 98.6M 0 0 18.3M 0 0:00:12 0:00:05 0:00:07 19.5M 51 231M 51 118M 0 0 18.6M 0 0:00:12 0:00:06 0:00:06 20.3M 59 231M 59 137M 0 0 18.6M 0 0:00:12 0:00:07 0:00:05 20.0M 67 231M 67 155M 0 0 18.6M 0 0:00:12 0:00:08 0:00:04 19.6M 75 231M 75 174M 0 0 18.5M 0 0:00:12 0:00:09 0:00:03 19.1M 83 231M 83 192M 0 0 18.5M 0 0:00:12 0:00:10 0:00:02 18.7M 90 231M 90 210M 0 0 18.5M 0 0:00:12 0:00:11 0:00:01 18.2M 98 231M 98 228M 0 0 18.4M 0 0:00:12 0:00:12 --:--:-- 18.2M 100 231M 100 231M 0 0 18.5M 0 0:00:12 0:00:12 --:--:-- 18.2M +info: extracting RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz for package +gnu-plct-0.20240324.0 +info: package gnu-plct-0.20240324.0 installed to /home/debian/.local/share/ruyi/binaries/riscv64/gnu-plct-0.20240324.0 ++ ruyi venv --toolchain gnu-plct milkv-duo test-venv ++ grep 'The virtual environment is now created.' +info: The virtual environment is now created. ++ CHECK_RESULT 0 0 0 'Check ruyi venv install failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi venv install failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -f ./test-venv/bin/ruyi-activate ']' ++ CHECK_RESULT 0 0 0 'Check ruyi venv activate file failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi venv activate file failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ oldps1= ++ source ./test-venv/bin/ruyi-activate +++ '[' ./test-venv/bin/ruyi-activate = ruyi_test_venv.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/test-venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ PATH=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/test-venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ export PATH +++ hash -r ++++ basename /home/debian/mugen-ruyi/testcases/cli-test/ruyi/test-venv +++ RUYI_VENV_PROMPT=test-venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi test-venv» ' +++ export PS1 ++ echo '«Ruyi test-venv» ' ++ grep test-venv +«Ruyi test-venv» ++ CHECK_RESULT 0 0 0 'Check activate ruyi venv PS1 failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check activate ruyi venv PS1 failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ '[' '' == '' ']' ++ CHECK_RESULT 0 0 0 'Check deactivate ruyi venv PS1 failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check deactivate ruyi venv PS1 failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ rm -rf test-venv ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:25:38 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:25:38 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:25:38 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpiluuprvr ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpiluuprvr +Wed Apr 10 21:25:39 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpiluuprvr ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpiluuprvr +Wed Apr 10 21:25:50 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:25:53 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xdg/2024-04-10-21_15_40.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xdg/2024-04-10-21_15_40.log new file mode 100644 index 00000000..05cb6bbe --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xdg/2024-04-10-21_15_40.log @@ -0,0 +1,644 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:15:40 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:15:41 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpt5yzvkdx ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpt5yzvkdx ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpt5yzvkdx ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpt5yzvkdx +Wed Apr 10 21:16:13 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpt5yzvkdx ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 27 20.8M 27 5931k 0 0 7048k 0 0:00:03 --:--:-- 0:00:03 7044k 100 20.8M 100 20.8M 0 0 13.2M 0 0:00:01 0:00:01 --:--:-- 13.2M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:16:15 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:16:15 2024 - INFO - Start to run test. ++ export XDG_CACHE_HOME=/home/debian/.cache/ruyi_mugen_test ++ XDG_CACHE_HOME=/home/debian/.cache/ruyi_mugen_test ++ export XDG_DATA_HOME=/home/debian/.local/share/ruyi_mugen_test ++ XDG_DATA_HOME=/home/debian/.local/share/ruyi_mugen_test ++ export XDG_STATE_HOME=/home/debian/.local/state/ruyi_mugen_test ++ XDG_STATE_HOME=/home/debian/.local/state/ruyi_mugen_test ++ mkdir -p /home/debian/.cache/ruyi_mugen_test /home/debian/.local/share/ruyi_mugen_test /home/debian/.local/state/ruyi_mugen_test ++ xdg_ruyi_dir=/home/debian/.cache/ruyi_mugen_test/ruyi ++ xdg_ruyi_data_dir=/home/debian/.local/share/ruyi_mugen_test/ruyi ++ xdg_ruyi_state_dir=/home/debian/.local/state/ruyi_mugen_test/ruyi ++ default_ruyi_dir=/home/debian/.cache/ruyi ++ default_ruyi_data_dir=/home/debian/.local/share/ruyi ++ default_ruyi_state_dir=/home/debian/.local/state/ruyi ++ ruyi list +List of available packages: + +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 +* analyzer/dynamorio-riscv + - 10.0.19748-ruyi.20240128 (latest) +* emulator/qemu-system-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) +* emulator/qemu-user-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) + - 8.1.2-ruyi.20231121 (no binary for current host) +* emulator/qemu-user-riscv-xthead + - 6.1.0-ruyi.20231207+g03813c9fe8 (latest, no binary for current host) +* board-image/uboot-revyos-milkv-meles-4g + - 1.0.0 (latest) +* board-image/uboot-revyos-milkv-meles-8g + - 1.0.0 (latest) +* board-image/debian-desktop-sdk-milkv-mars-cm-sd + - 1.0.6+3.6.1 (latest) +* board-image/openwrt-sifive-unmatched + - 0.2305.2 (latest) +* board-image/buildroot-sdk-milkv-duo256m-python + - 1.0.7 (latest) +* board-image/freebsd-riscv64-mini-live + - 14.0.0 (latest) +* board-image/oerv-starfive-visionfive-xfce + - 0.2309.1 (latest) +* board-image/oerv-awol-d1-base + - 0.2303.1 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-16g + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo-python + - 1.0.7 (latest) +* board-image/uboot-revyos-sipeed-lpi4a-8g + - 0.20231210.0 (latest) +* board-image/canmv-debian-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/revyos-sg2042-milkv-pioneer + - 0.20240119.0 (latest) + - 0.20231220.0 () +* board-image/uboot-revyos-sipeed-lpi4a-16g + - 0.20231210.0 (latest) +* board-image/oerv-starfive-visionfive2-xfce + - 0.2309.1 (latest) +* board-image/openkylin-riscv64-sifive-unmatched + - 1.0.0 (latest) +* board-image/revyos-milkv-meles + - 1.0.0 (latest) +* board-image/oerv-awol-d1-xfce + - 0.2303.1 (latest) +* board-image/oerv-sifive-unmatched-base + - 0.2309.1 (latest) +* board-image/oerv-sifive-unmatched-xfce + - 0.2309.1 (latest) +* board-image/openbsd-riscv64-live + - 7.4.0 (latest) +* board-image/buildroot-sdk-milkv-duo + - 1.0.7 (latest) +* board-image/buildroot-sdk-milkv-duos-sd + - 1.0.9 (latest) +* board-image/ubuntu-server-riscv64-sifive-unmatched + - 0.2310.0 (latest) +* board-image/oerv-sg2042-milkv-pioneer-xfce + - 0.2309.1 (latest) +* board-image/oerv-sg2042-milkv-pioneer-base + - 0.2309.1 (latest) +* board-image/revyos-sipeed-lpi4a + - 0.20231210.0 (latest) +* board-image/oerv-starfive-visionfive2-base + - 0.2309.1 (latest) +* board-image/canmv-ubuntu-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/debian-desktop-sdk-milkv-mars-sd + - 1.0.6+3.6.1 (latest) +* board-image/oerv-sipeed-lpi4a-xfce + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo256m + - 1.0.7 (latest) +* board-image/oerv-sipeed-lpi4a-headless + - 0.2309.1 (latest) +* board-image/oerv-starfive-visionfive-base + - 0.2309.1 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-8g + - 0.2309.1 (latest) +* toolchain/gnu-plct-xthead + - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118 +* toolchain/gnu-plct-rv64ilp32-elf + - 0.20240223.0-ruyi.20240224 (latest) +* toolchain/gnu-plct + - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118 +* toolchain/gnu-upstream + - 0.20231212.0 (latest) slug: gnu-upstream-20231212 + - 0.20231118.0 () slug: gnu-upstream-20231118 +* toolchain/llvm-upstream + - 17.0.5-ruyi.20231121 (latest, no binary for current host) slug: llvm-upstream-20231121 +* source/coremark + - 1.0.2-pre.20230125 (prerelease, latest-prerelease) + - 1.0.1 (latest) +* source/ruyisdk-demo + - 0.20231114.0 (latest) ++ CHECK_RESULT 0 0 0 'Check ruyi empty list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi empty list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi update + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi update failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi update failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* ' +++ wc -l ++ pkgcnt=46 ++ CHECK_RESULT 46 0 1 'Check ruyi list failed' ++ actual_result=46 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi list failed' ++ exit_mode=0 ++ '[' -z 46 ']' ++ '[' 1 -eq 0 ']' ++ test 46x == 0x ++ return 0 ++ ruyi list ++ grep 'Package declares' ++ CHECK_RESULT 1 0 1 'Check ruyi brief list failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi brief list failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Package declares' +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Binary artifacts' +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose artifacts failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose artifacts failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Toolchain metadata' +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose metadata failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose metadata failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news list +News items: + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 ++ CHECK_RESULT 0 0 0 'Check ruyi news list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* toolchain' +++ cut -d/ -f 2 ++ pkgnames='gnu-plct-xthead +gnu-plct-rv64ilp32-elf +gnu-plct +gnu-upstream +llvm-upstream' ++ for p in $pkgnames +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/gnu-plct-xthead/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ s=' - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118' ++ '[' '!' -z ' - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118' ']' ++ pkgname=gnu-plct-xthead ++ break ++ '[' -z gnu-plct-xthead ']' ++ ruyi install gnu-plct-xthead +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz to +/home/debian/.cache/ruyi_mugen_test/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-r +iscv64-plctxthead-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 4 294M 4 12.1M 0 0 10.7M 0 0:00:27 0:00:01 0:00:26 10.7M 10 294M 10 32.1M 0 0 15.1M 0 0:00:19 0:00:02 0:00:17 15.1M 18 294M 18 53.1M 0 0 16.8M 0 0:00:17 0:00:03 0:00:14 16.8M 24 294M 24 73.1M 0 0 17.6M 0 0:00:16 0:00:04 0:00:12 17.6M 31 294M 31 92.1M 0 0 18.0M 0 0:00:16 0:00:05 0:00:11 19.2M 37 294M 37 111M 0 0 18.0M 0 0:00:16 0:00:06 0:00:10 19.7M 43 294M 43 128M 0 0 18.0M 0 0:00:16 0:00:07 0:00:09 19.3M 49 294M 49 146M 0 0 18.1M 0 0:00:16 0:00:08 0:00:08 18.8M 56 294M 56 165M 0 0 18.1M 0 0:00:16 0:00:09 0:00:07 18.4M 62 294M 62 183M 0 0 18.1M 0 0:00:16 0:00:10 0:00:06 18.2M 68 294M 68 201M 0 0 18.1M 0 0:00:16 0:00:11 0:00:05 18.2M 74 294M 74 220M 0 0 18.1M 0 0:00:16 0:00:12 0:00:04 18.2M 80 294M 80 238M 0 0 18.1M 0 0:00:16 0:00:13 0:00:03 18.2M 87 294M 87 257M 0 0 18.1M 0 0:00:16 0:00:14 0:00:02 18.2M 93 294M 93 275M 0 0 18.1M 0 0:00:16 0:00:15 0:00:01 18.2M 99 294M 99 293M 0 0 18.1M 0 0:00:16 0:00:16 --:--:-- 18.3M 100 294M 100 294M 0 0 18.2M 0 0:00:16 0:00:16 --:--:-- 18.3M +info: extracting RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthead-linux-gnu.tar.xz +for package gnu-plct-xthead-2.8.0-ruyi.20240222 +info: package gnu-plct-xthead-2.8.0-ruyi.20240222 installed to +/home/debian/.local/share/ruyi_mugen_test/ruyi/binaries/riscv64/gnu-plct-xthead-2.8.0-ruyi.20240222 ++ CHECK_RESULT 0 0 0 'Check ruyi install package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install gnu-plct-xthead ++ grep 'skipping already installed package' +info: skipping already installed package gnu-plct-xthead-2.8.0-ruyi.20240222 ++ CHECK_RESULT 0 0 0 'Check ruyi install duplicate package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install duplicate package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.cache/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi create xdg based cache directory failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi create xdg based cache directory failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.cache/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi create default cache directory failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi create default cache directory failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /home/debian/.local/share/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi create xdg based data directory failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi create xdg based data directory failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.local/share/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi create default data directory failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi create default data directory failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /home/debian/.local/state/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi create xdg based state directory failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi create xdg based state directory failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.local/state/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi create default state directory failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi create default state directory failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ ruyi self uninstall --purge -y +info: uninstallation consent given over CLI, proceeding +info: removing installed packages +info: removing state data +info: removing cached data +info: removing the ruyi binary +info: ruyi is uninstalled ++ CHECK_RESULT 0 0 0 'Check ruyi xdg self purge failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi xdg self purge failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /home/debian/.cache/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi xdg purge cache dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi xdg purge cache dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /home/debian/.local/share/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi xdg purge data dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi xdg purge data dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /home/debian/.local/state/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi xdg purge state dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi xdg purge state dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ rm -rf /home/debian/.cache/ruyi_mugen_test /home/debian/.local/share/ruyi_mugen_test /home/debian/.local/state/ruyi_mugen_test ++ export XDG_CACHE_HOME= ++ XDG_CACHE_HOME= ++ export XDG_DATA_HOME= ++ XDG_DATA_HOME= ++ export XDG_STATE_HOME= ++ XDG_STATE_HOME= ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:18:52 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:18:52 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:18:52 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpt5yzvkdx ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpt5yzvkdx +Wed Apr 10 21:18:53 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpt5yzvkdx ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpt5yzvkdx +Wed Apr 10 21:19:04 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:19:05 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xthead_qemu/2024-04-10-21_11_13.log b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xthead_qemu/2024-04-10-21_11_13.log new file mode 100644 index 00000000..e4cc9e6d --- /dev/null +++ b/20240408/logs/RevyOS-LPi4A/ruyi/ruyi_test_xthead_qemu/2024-04-10-21_11_13.log @@ -0,0 +1,297 @@ ++ source ./common/common_lib.sh +++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /home/debian/mugen-ruyi/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Wed Apr 10 21:11:14 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Wed Apr 10 21:11:15 2024 - INFO - unsupported package manager: dnf ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' ++ tmpfile2=/tmp/tmpxuvexcf3 ++ '[' -z '' ']' ++ tmpfile=/tmp/tmpxuvexcf3 ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z /tmp/tmpxuvexcf3 ']' +++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile /tmp/tmpxuvexcf3 +Wed Apr 10 21:11:48 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z /tmp/tmpxuvexcf3 ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.8.0 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.8.0/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 17 20.8M 17 3726k 0 0 5161k 0 0:00:04 --:--:-- 0:00:04 5161k 100 20.8M 100 20.8M 0 0 13.2M 0 0:00:01 0:00:01 --:--:-- 13.2M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ sudo ln -s /home/debian/mugen-ruyi/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Wed Apr 10 21:11:50 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Wed Apr 10 21:11:50 2024 - INFO - Start to run test. ++ mkdir qemu_test ++ cd qemu_test ++ ruyi update +Enumerating objects: 738, done. +Counting objects: 0% (1/738)Counting objects: 1% (8/738)Counting objects: 2% (15/738)Counting objects: 3% (23/738)Counting objects: 4% (30/738)Counting objects: 5% (37/738)Counting objects: 6% (45/738)Counting objects: 7% (52/738)Counting objects: 8% (60/738)Counting objects: 9% (67/738)Counting objects: 10% (74/738)Counting objects: 11% (82/738)Counting objects: 12% (89/738)Counting objects: 13% (96/738)Counting objects: 14% (104/738)Counting objects: 15% (111/738)Counting objects: 16% (119/738)Counting objects: 17% (126/738)Counting objects: 18% (133/738)Counting objects: 19% (141/738)Counting objects: 20% (148/738)Counting objects: 21% (155/738)Counting objects: 22% (163/738)Counting objects: 23% (170/738)Counting objects: 24% (178/738)Counting objects: 25% (185/738)Counting objects: 26% (192/738)Counting objects: 27% (200/738)Counting objects: 28% (207/738)Counting objects: 29% (215/738)Counting objects: 30% (222/738)Counting objects: 31% (229/738)Counting objects: 32% (237/738)Counting objects: 33% (244/738)Counting objects: 34% (251/738)Counting objects: 35% (259/738)Counting objects: 36% (266/738)Counting objects: 37% (274/738)Counting objects: 38% (281/738)Counting objects: 39% (288/738)Counting objects: 40% (296/738)Counting objects: 41% (303/738)Counting objects: 42% (310/738)Counting objects: 43% (318/738)Counting objects: 44% (325/738)Counting objects: 45% (333/738)Counting objects: 46% (340/738)Counting objects: 47% (347/738)Counting objects: 48% (355/738)Counting objects: 49% (362/738)Counting objects: 50% (369/738)Counting objects: 51% (377/738)Counting objects: 52% (384/738)Counting objects: 53% (392/738)Counting objects: 54% (399/738)Counting objects: 55% (406/738)Counting objects: 56% (414/738)Counting objects: 57% (421/738)Counting objects: 58% (429/738)Counting objects: 59% (436/738)Counting objects: 60% (443/738)Counting objects: 61% (451/738)Counting objects: 62% (458/738)Counting objects: 63% (465/738)Counting objects: 64% (473/738)Counting objects: 65% (480/738)Counting objects: 66% (488/738)Counting objects: 67% (495/738)Counting objects: 68% (502/738)Counting objects: 69% (510/738)Counting objects: 70% (517/738)Counting objects: 71% (524/738)Counting objects: 72% (532/738)Counting objects: 73% (539/738)Counting objects: 74% (547/738)Counting objects: 75% (554/738)Counting objects: 76% (561/738)Counting objects: 77% (569/738)Counting objects: 78% (576/738)Counting objects: 79% (584/738)Counting objects: 80% (591/738)Counting objects: 81% (598/738)Counting objects: 82% (606/738)Counting objects: 83% (613/738)Counting objects: 84% (620/738)Counting objects: 85% (628/738)Counting objects: 86% (635/738)Counting objects: 87% (643/738)Counting objects: 88% (650/738)Counting objects: 89% (657/738)Counting objects: 90% (665/738)Counting objects: 91% (672/738)Counting objects: 92% (679/738)Counting objects: 93% (687/738)Counting objects: 94% (694/738)Counting objects: 95% (702/738)Counting objects: 96% (709/738)Counting objects: 97% (716/738)Counting objects: 98% (724/738)Counting objects: 99% (731/738)Counting objects: 100% (738/738)Counting objects: 100% (738/738), done. +Compressing objects: 0% (1/312)Compressing objects: 1% (4/312)Compressing objects: 2% (7/312)Compressing objects: 3% (10/312)Compressing objects: 4% (13/312)Compressing objects: 5% (16/312)Compressing objects: 6% (19/312)Compressing objects: 7% (22/312)Compressing objects: 8% (25/312)Compressing objects: 9% (29/312)Compressing objects: 10% (32/312)Compressing objects: 11% (35/312)Compressing objects: 12% (38/312)Compressing objects: 13% (41/312)Compressing objects: 14% (44/312)Compressing objects: 15% (47/312)Compressing objects: 16% (50/312)Compressing objects: 17% (54/312)Compressing objects: 18% (57/312)Compressing objects: 19% (60/312)Compressing objects: 20% (63/312)Compressing objects: 21% (66/312)Compressing objects: 22% (69/312)Compressing objects: 23% (72/312)Compressing objects: 24% (75/312)Compressing objects: 25% (78/312)Compressing objects: 26% (82/312)Compressing objects: 27% (85/312)Compressing objects: 28% (88/312)Compressing objects: 29% (91/312)Compressing objects: 30% (94/312)Compressing objects: 31% (97/312)Compressing objects: 32% (100/312)Compressing objects: 33% (103/312)Compressing objects: 34% (107/312)Compressing objects: 35% (110/312)Compressing objects: 36% (113/312)Compressing objects: 37% (116/312)Compressing objects: 38% (119/312)Compressing objects: 39% (122/312)Compressing objects: 40% (125/312)Compressing objects: 41% (128/312)Compressing objects: 42% (132/312)Compressing objects: 43% (135/312)Compressing objects: 44% (138/312)Compressing objects: 45% (141/312)Compressing objects: 46% (144/312)Compressing objects: 47% (147/312)Compressing objects: 48% (150/312)Compressing objects: 49% (153/312)Compressing objects: 50% (156/312)Compressing objects: 51% (160/312)Compressing objects: 52% (163/312)Compressing objects: 53% (166/312)Compressing objects: 54% (169/312)Compressing objects: 55% (172/312)Compressing objects: 56% (175/312)Compressing objects: 57% (178/312)Compressing objects: 58% (181/312)Compressing objects: 59% (185/312)Compressing objects: 60% (188/312)Compressing objects: 61% (191/312)Compressing objects: 62% (194/312)Compressing objects: 63% (197/312)Compressing objects: 64% (200/312)Compressing objects: 65% (203/312)Compressing objects: 66% (206/312)Compressing objects: 67% (210/312)Compressing objects: 68% (213/312)Compressing objects: 69% (216/312)Compressing objects: 70% (219/312)Compressing objects: 71% (222/312)Compressing objects: 72% (225/312)Compressing objects: 73% (228/312)Compressing objects: 74% (231/312)Compressing objects: 75% (234/312)Compressing objects: 76% (238/312)Compressing objects: 77% (241/312)Compressing objects: 78% (244/312)Compressing objects: 79% (247/312)Compressing objects: 80% (250/312)Compressing objects: 81% (253/312)Compressing objects: 82% (256/312)Compressing objects: 83% (259/312)Compressing objects: 84% (263/312)Compressing objects: 85% (266/312)Compressing objects: 86% (269/312)Compressing objects: 87% (272/312)Compressing objects: 88% (275/312)Compressing objects: 89% (278/312)Compressing objects: 90% (281/312)Compressing objects: 91% (284/312)Compressing objects: 92% (288/312)Compressing objects: 93% (291/312)Compressing objects: 94% (294/312)Compressing objects: 95% (297/312)Compressing objects: 96% (300/312)Compressing objects: 97% (303/312)Compressing objects: 98% (306/312)Compressing objects: 99% (309/312)Compressing objects: 100% (312/312)Compressing objects: 100% (312/312), done. +Total 738 (delta 344), reused 685 (delta 291), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + +Traceback (most recent call last): + File "/home/debian/.cache/ruyi/progcache/0.8.0/__main__.py", line 57, in + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/cli/__init__.py", line 300, in main + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/update_cli.py", line 14, in cli_update + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/ruyipkg/repo.py", line 181, in sync + File "/home/debian/.cache/ruyi/progcache/0.8.0/ruyi/utils/git.py", line 82, in pull_ff_or_die + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/remotes.py", line 155, in fetch + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/callbacks.py", line 99, in check_error + File "/home/debian/.cache/ruyi/progcache/0.8.0/pygit2/errors.py", line 65, in check_error +_pygit2.GitError: SSL error: unknown error +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/gnu-plct-xthead/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ local 'pe= - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118' ++ '[' -z - 2.8.0-ruyi.20240222 '(latest)' - 0.20231212.0 '()' slug: gnu-plct-xthead-20231212 - 0.20231118.0 '()' slug: gnu-plct-xthead-20231118 ']' +ruyi_test_xthead_qemu.sh: line 36: [: too many arguments ++ local qemu_pkg= ++ local qemu_cmd= +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* emulator\/qemu-user-riscv-xthead/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ pe= ++ '[' -n '' ']' ++ ruyi install gnu-plct-xthead +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz to +/home/debian/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthea +d-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 3 294M 3 9198k 0 0 9373k 0 0:00:32 --:--:-- 0:00:32 9376k 10 294M 10 30.0M 0 0 14.9M 0 0:00:19 0:00:02 0:00:17 14.9M 16 294M 16 50.0M 0 0 16.7M 0 0:00:17 0:00:02 0:00:15 16.7M 23 294M 23 69.9M 0 0 17.5M 0 0:00:16 0:00:03 0:00:13 17.4M 30 294M 30 89.9M 0 0 18.0M 0 0:00:16 0:00:04 0:00:12 18.0M 37 294M 37 111M 0 0 18.4M 0 0:00:15 0:00:06 0:00:09 20.2M 44 294M 44 131M 0 0 18.7M 0 0:00:15 0:00:06 0:00:09 20.3M 51 294M 51 152M 0 0 18.9M 0 0:00:15 0:00:08 0:00:07 20.2M 57 294M 57 170M 0 0 19.0M 0 0:00:15 0:00:08 0:00:07 20.2M 65 294M 65 192M 0 0 19.1M 0 0:00:15 0:00:10 0:00:05 20.2M 71 294M 71 212M 0 0 19.2M 0 0:00:15 0:00:10 0:00:05 20.2M 79 294M 79 233M 0 0 19.4M 0 0:00:15 0:00:12 0:00:03 20.2M 85 294M 85 253M 0 0 19.4M 0 0:00:15 0:00:12 0:00:03 20.3M 92 294M 92 274M 0 0 19.5M 0 0:00:15 0:00:14 0:00:01 20.4M 99 294M 99 293M 0 0 19.5M 0 0:00:15 0:00:14 0:00:01 20.3M 100 294M 100 294M 0 0 19.5M 0 0:00:15 0:00:15 --:--:-- 20.3M +info: extracting RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthead-linux-gnu.tar.xz +for package gnu-plct-xthead-2.8.0-ruyi.20240222 +info: package gnu-plct-xthead-2.8.0-ruyi.20240222 installed to +/home/debian/.local/share/ruyi/binaries/riscv64/gnu-plct-xthead-2.8.0-ruyi.20240222 ++ CHECK_RESULT 0 0 0 'Check ruyi xthead toolchain install failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi xthead toolchain install failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi venv -t gnu-plct-xthead sipeed-lpi4a venv +info: Creating a Ruyi virtual environment at venv... +info: The virtual environment is now created. + +You may activate it by sourcing the appropriate activation script in the +bin directory, and deactivate by invoking `ruyi-deactivate`. + +A fresh sysroot/prefix is also provisioned in the virtual environment. +It is available at the following path: + + /home/debian/mugen-ruyi/testcases/cli-test/ruyi/qemu_test/venv/sysroot + +The virtual environment also comes with ready-made CMake toolchain file +and Meson cross file. Check the virtual environment root for those; +comments in the files contain usage instructions. + ++ CHECK_RESULT 0 0 0 'Check ruyi xthead venv creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi xthead venv creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ . venv/bin/ruyi-activate +++ '[' venv/bin/ruyi-activate = ruyi_test_xthead_qemu.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/qemu_test/venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ PATH=/home/debian/mugen-ruyi/testcases/cli-test/ruyi/qemu_test/venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin +++ export PATH +++ hash -r ++++ basename /home/debian/mugen-ruyi/testcases/cli-test/ruyi/qemu_test/venv +++ RUYI_VENV_PROMPT=venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi venv» ' +++ export PS1 ++ cat ++ riscv64-plctxthead-linux-gnu-gcc hello_ruyi.c -o hello_ruyi.o ++ CHECK_RESULT 0 0 0 'Check ruyi compilation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi compilation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -n '' ']' ++ '[' -f /etc/revyos-release ']' ++ ./hello_ruyi.o ++ grep 'hello, ruyi' +hello, ruyi ++ CHECK_RESULT 0 0 0 'Check xthead bin run on revyos failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check xthead bin run on revyos failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ cd .. ++ rm -rf qemu_test ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Wed Apr 10 21:14:14 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Wed Apr 10 21:14:14 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Wed Apr 10 21:14:15 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z /tmp/tmpxuvexcf3 ]] ++ '[' 0 -ne 0 ']' ++ '[' 1 == 0 ']' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/rpm_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpxuvexcf3 +Wed Apr 10 21:14:16 2024 - INFO - unsupported package manager: dnf +(0, None) ++ python3 /home/debian/mugen-ruyi/libs/locallibs/deb_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpxuvexcf3 ++ python3 /home/debian/mugen-ruyi/libs/locallibs/archpkg_manage.py remove --node 1 --pkgs '' --tempfile /tmp/tmpxuvexcf3 +Wed Apr 10 21:14:26 2024 - INFO - unsupported package manager: pacman +(0, None) ++ '[' 0 -ne 0 ']' ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.cache/ +++ echo /home/debian/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/share +++ echo /home/debian/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.local/state +++ echo /home/debian/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/home/debian/.config +++ echo /home/debian/.config/ruyi ++ rm -rf /home/debian/.cache//ruyi /home/debian/.local/share/ruyi /home/debian/.local/state/ruyi /home/debian/.config/ruyi ++ rm -f ruyi ++ sudo rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /home/debian/mugen-ruyi/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Wed Apr 10 21:14:30 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_admin/2024-03-28-23_30_11.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_admin/2024-03-28-23_30_11.log new file mode 100644 index 00000000..59131eb4 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_admin/2024-03-28-23_30_11.log @@ -0,0 +1,167 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:30:11 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:30:15 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:30:16 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:30:16 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 8 16.8M 8 1545k 0 0 6907k 0 0:00:02 --:--:-- 0:00:02 6900k 100 16.8M 100 16.8M 0 0 19.2M 0 --:--:-- --:--:-- --:--:-- 19.2M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:30:17 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:30:18 2024 - INFO - Start to run test. ++ test_file=ruyi_test_admin.sh ++ ruyi admin manifest ruyi_test_admin.sh +[ + { + "name": "ruyi_test_admin.sh", + "size": 1264, + "checksums": { + "sha512": "8118777af6b72fef50adf90d748009b61cf69ac83d75fcccbcb6fbded219af8ebcd0685476c5fadd9d79231d1877a679f34b57f92c986bfd15bcea74e215c135", + "sha256": "6e44debe7921d02c3987bc67f331ae64fdf63df58a58c05716b50c10f3cfe266" + } + } +] ++ CHECK_RESULT 0 0 0 'Check ruyi admin manifest failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi admin manifest failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:30:21 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Thu Mar 28 23:30:21 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:30:21 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:30:22 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:30:22 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_binaries/2024-03-28-23_15_27.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_binaries/2024-03-28-23_15_27.log new file mode 100644 index 00000000..3787779b --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_binaries/2024-03-28-23_15_27.log @@ -0,0 +1,141 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ EXECUTE_T=120m ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:15:27 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:15:31 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:15:32 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:15:33 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 77 16.8M 77 13.1M 0 0 18.2M 0 --:--:-- --:--:-- --:--:-- 18.2M 100 16.8M 100 16.8M 0 0 19.2M 0 --:--:-- --:--:-- --:--:-- 19.2M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:15:34 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:15:34 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% +(22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% +(50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% +(79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% +(108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% +(136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing +objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi udpate failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi udpate failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ for i in toolchain emulator ++ test_oneshot toolchain ++ local ret retc bp bpb +++ ruyi list +++ grep toolchain +++ sed 's/^* toolchain\///' ++ for tc in `ruyi list | grep $1 | sed "s/^* $1\///"` +++ ruyi install gnu-plct ++ ret='info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to /root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload + rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:17:18 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_cmake_ninja/2024-03-28-23_20_12.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_cmake_ninja/2024-03-28-23_20_12.log new file mode 100644 index 00000000..d88bbb32 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_cmake_ninja/2024-03-28-23_20_12.log @@ -0,0 +1,295 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ EXECUTE_T=60m ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:20:12 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:20:16 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:20:17 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:20:18 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ rm -f ruyi ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 91 16.8M 91 15.4M 0 0 19.0M 0 --:--:-- --:--:-- --:--:-- 19.0M 100 16.8M 100 16.8M 0 0 19.3M 0 --:--:-- --:--:-- --:--:-- 19.3M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ DNF_INSTALL 'cmake ninja-build' ++ pkgs='cmake ninja-build' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'cmake ninja-build' --node 1 --tempfile '' +Thu Mar 28 23:20:23 2024 - INFO - pkgs:(cmake ninja-build) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'cmake ninja-build' ++ pkgs='cmake ninja-build' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'cmake ninja-build' --node 1 --tempfile '' +Thu Mar 28 23:20:24 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'cmake ninja' ++ pkgs='cmake ninja' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'cmake ninja' --node 1 --tempfile '' +Thu Mar 28 23:20:24 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:20:25 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:20:25 2024 - INFO - Start to run test. ++ mkdir build ++ cd build ++ tar zxf ../common/source/zlib-ng-2.1.5.tar.gz ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% +(22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% +(50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% +(79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% +(108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% +(322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% +(393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% +(443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: +66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% +(522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: +77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing +objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% +(88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% +(100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct gnu-plct-xthead +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plct +xthead-linux-gnu.tar.xz to +/root/.cache/ruyi/distfiles/RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthead-linux +-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 7 294M 7 23.1M 0 0 20.4M 0 0:00:14 0:00:01 0:00:13 20.4M 15 294M 15 46.3M 0 0 21.8M 0 0:00:13 0:00:02 0:00:11 21.8M 23 294M 23 70.5M 0 0 22.3M 0 0:00:13 0:00:03 0:00:10 22.3M 31 294M 31 93.6M 0 0 22.6M 0 0:00:13 0:00:04 0:00:09 22.6M 39 294M 39 116M 0 0 22.8M 0 0:00:12 0:00:05 0:00:07 23.4M 47 294M 47 141M 0 0 22.9M 0 0:00:12 0:00:06 0:00:06 23.4M 55 294M 55 164M 0 0 22.9M 0 0:00:12 0:00:07 0:00:05 23.4M 63 294M 63 187M 0 0 23.0M 0 0:00:12 0:00:08 0:00:04 23.4M 71 294M 71 210M 0 0 23.0M 0 0:00:12 0:00:09 0:00:03 23.4M 79 294M 79 234M 0 0 23.1M 0 0:00:12 0:00:10 0:00:02 23.4M 87 294M 87 257M 0 0 23.1M 0 0:00:12 0:00:11 0:00:01 23.4M 95 294M 95 280M 0 0 23.1M 0 0:00:12 0:00:12 --:--:-- 23.4M 100 294M 100 294M 0 0 23.2M 0 0:00:12 0:00:12 --:--:-- 23.4M +info: extracting RuyiSDK-20240222-T-Head-Sources-T-Head-2.8.0-HOST-riscv64-linux-gnu-riscv64-plctxthead-linux-gnu.tar.xz +for package gnu-plct-xthead-2.8.0-ruyi.20240222 +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libasan.a: Wrote only 7680 of 10240 bytes +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libasan.so.6.0.0: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libasan_preinit.o: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libatomic.a: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libatomic.so.1.2.0: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libgcc_s.so: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libgcc_s.so.1: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libgfortran.a: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libgfortran.so.5.0.0: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libgfortran.spec: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libobjc.a: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libobjc.so.4.0.0: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libsanitizer.spec: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libssp.a: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libssp.so.0.0.0: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libssp_nonshared.a: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/sysroot/lib64v_xthead/lp64d/libstdc++.a: Cannot write: No space left on device +tar: riscv64-plctxthead-linux-gnu/systar: zlib-ng-2.1.5/zlib.h.in: Wrote only 2048 of 3254 bytes +tar: Exiting with failure status due to previous errors ++ cd ./zlib-ng-2.1.5 ++ ruyi venv -t gnu-plct milkv-duo ./zlib_venv +fatal error: cannot find the installed directory for the toolchain ++ . zlib_venv/bin/ruyi-activate +ruyi_test_cmake_ninja.sh: line 54: zlib_venv/bin/ruyi-activate: No such file or directory +++ pwd ++ cmake . -G Ninja -DCMAKE_C_COMPILER=riscv64-plct-linux-gnu-gcc -DCMAKE_INSTALL_PREFIX=/root/ruyi-mugen/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install '-DCMAKE_C_FLAGS=-O2 -pipe -g' -DZLIB_COMPAT=ON -DWITH_GTEST=OFF +CMake Error: Unable to (re)create the private pkgRedirects directory: +/root/ruyi-mugen/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/CMakeFiles/pkgRedirects ++ ninja +ninja: error: loading 'build.ninja': No such file or directory ++ ninja install +ninja: error: loading 'build.ninja': No such file or directory +++ pwd ++ ls /root/ruyi-mugen/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/include +ls: cannot access '/root/ruyi-mugen/testcases/cli-test/ruyi/build/zlib-ng-2.1.5/zlib_my_install/include': No such file or directory ++ CHECK_RESULT 2 0 0 'Check ruyi zlib-ng build failed' ++ actual_result=2 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi zlib-ng build failed' ++ exit_mode=0 ++ '[' -z 2 ']' ++ '[' 0 -eq 0 ']' ++ test 2x '!=' 0x ++ test -n 'Check ruyi zlib-ng build failed' ++ LOG_ERROR 'Check ruyi zlib-ng build failed' ++ message='Check ruyi zlib-ng build failed' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'Check ruyi zlib-ng build failed' +Thu Mar 28 23:22:09 2024 - ERROR - Check ruyi zlib-ng build failed ++ (( exec_result++ )) ++ LOG_ERROR 'ruyi_test_cmake_ninja.sh line 59' ++ message='ruyi_test_cmake_ninja.sh line 59' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'ruyi_test_cmake_ninja.sh line 59' +Thu Mar 28 23:22:09 2024 - ERROR - ruyi_test_cmake_ninja.sh line 59 ++ '[' 0 -eq 1 ']' ++ return 0 ++ ruyi-deactivate +ruyi_test_cmake_ninja.sh: line 60: ruyi-deactivate: command not found ++ cd .. ++ cd .. ++ rm -rf build ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:22:10 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z 2 ++ test 2 -gt 0 ++ LOG_ERROR 'failed to execute the case.' ++ message='failed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'failed to execute the case.' +Thu Mar 28 23:22:10 2024 - ERROR - failed to execute the case. ++ exit 2 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:22:10 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:22:10 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:22:12 2024 - WARN - no thing to do. ++ return 0 ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:22:12 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_common/2024-03-28-23_17_18.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_common/2024-03-28-23_17_18.log new file mode 100644 index 00000000..199cadab --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_common/2024-03-28-23_17_18.log @@ -0,0 +1,697 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:17:19 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:17:23 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:17:24 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:17:24 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 19 16.8M 19 3333k 0 0 11.2M 0 0:00:01 --:--:-- 0:00:01 11.2M 100 16.8M 100 16.8M 0 0 19.3M 0 --:--:-- --:--:-- --:--:-- 19.3M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:17:25 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:17:26 2024 - INFO - Start to run test. ++ ruyi --version ++ grep 0.7.1 +Ruyi 0.7.1 ++ local rv=0 ++ CHECK_RESULT 0 0 0 'Check ruyi version failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi version failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ [[ 0x != \0\x ]] ++ ruyi ++ grep usage +usage: ruyi [-h] [-V] ++ CHECK_RESULT 0 0 0 'Check ruyi empty cmdline help failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi empty cmdline help failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi -h ++ grep usage +usage: ruyi [-h] [-V] ++ CHECK_RESULT 0 0 0 'Check ruyi help failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi help failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list +List of available packages: + +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 +* emulator/qemu-user-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) + - 8.1.2-ruyi.20231121 (no binary for current host) +* emulator/qemu-user-riscv-xthead + - 6.1.0-ruyi.20231207+g03813c9fe8 (latest, no binary for current host) +* emulator/qemu-system-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) +* board-image/buildroot-sdk-milkv-duo + - 1.0.7 (latest) +* board-image/oerv-sg2042-milkv-pioneer-base + - 0.2309.1 (latest) +* board-image/oerv-starfive-visionfive2-base + - 0.2309.1 (latest) +* board-image/ubuntu-server-riscv64-sifive-unmatched + - 0.2310.0 (latest) +* board-image/oerv-starfive-visionfive2-xfce + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo256m-python + - 1.0.7 (latest) +* board-image/oerv-starfive-visionfive-base + - 0.2309.1 (latest) +* board-image/oerv-starfive-visionfive-xfce + - 0.2309.1 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-8g + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo256m + - 1.0.7 (latest) +* board-image/openwrt-sifive-unmatched + - 0.2305.2 (latest) +* board-image/openbsd-riscv64-live + - 7.4.0 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-16g + - 0.2309.1 (latest) +* board-image/revyos-sg2042-milkv-pioneer + - 0.20240119.0 (latest) + - 0.20231220.0 () +* board-image/oerv-sifive-unmatched-base + - 0.2309.1 (latest) +* board-image/debian-desktop-sdk-milkv-mars-sd + - 1.0.6+3.6.1 (latest) +* board-image/oerv-sipeed-lpi4a-xfce + - 0.2309.1 (latest) +* board-image/canmv-ubuntu-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/oerv-awol-d1-base + - 0.2303.1 (latest) +* board-image/freebsd-riscv64-mini-live + - 14.0.0 (latest) +* board-image/revyos-sipeed-lpi4a + - 0.20231210.0 (latest) +* board-image/debian-desktop-sdk-milkv-mars-cm-sd + - 1.0.6+3.6.1 (latest) +* board-image/oerv-sg2042-milkv-pioneer-xfce + - 0.2309.1 (latest) +* board-image/canmv-debian-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/openkylin-riscv64-sifive-unmatched + - 1.0.0 (latest) +* board-image/uboot-revyos-sipeed-lpi4a-8g + - 0.20231210.0 (latest) +* board-image/buildroot-sdk-milkv-duo-python + - 1.0.7 (latest) +* board-image/buildroot-sdk-milkv-duos-sd + - 1.0.9 (latest) +* board-image/oerv-sifive-unmatched-xfce + - 0.2309.1 (latest) +* board-image/oerv-sipeed-lpi4a-headless + - 0.2309.1 (latest) +* board-image/uboot-revyos-sipeed-lpi4a-16g + - 0.20231210.0 (latest) +* board-image/oerv-awol-d1-xfce + - 0.2303.1 (latest) +* source/ruyisdk-demo + - 0.20231114.0 (latest) +* source/coremark + - 1.0.2-pre.20230125 (prerelease, latest-prerelease) + - 1.0.1 (latest) +* analyzer/dynamorio-riscv + - 10.0.19748-ruyi.20240128 (latest) +* toolchain/gnu-plct + - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118 +* toolchain/gnu-plct-xthead + - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118 +* toolchain/gnu-upstream + - 0.20231212.0 (latest) slug: gnu-upstream-20231212 + - 0.20231118.0 () slug: gnu-upstream-20231118 +* toolchain/gnu-plct-rv64ilp32-elf + - 0.20240223.0-ruyi.20240224 (latest) +* toolchain/llvm-upstream + - 17.0.5-ruyi.20231121 (latest, no binary for current host) slug: llvm-upstream-20231121 ++ CHECK_RESULT 0 0 0 'Check ruyi empty list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi empty list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi ++ '[' -d /root/.cache//ruyi ']' ++ CHECK_RESULT 0 0 0 'Check ruyi create cache directory failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi create cache directory failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi update + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi update failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi update failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* ' +++ wc -l ++ pkgcnt=43 ++ CHECK_RESULT 43 0 1 'Check ruyi list failed' ++ actual_result=43 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi list failed' ++ exit_mode=0 ++ '[' -z 43 ']' ++ '[' 1 -eq 0 ']' ++ test 43x == 0x ++ return 0 ++ ruyi list ++ grep 'Package declares' ++ CHECK_RESULT 1 0 1 'Check ruyi brief list failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi brief list failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Package declares' +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 1 distfile(s): ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Binary artifacts' +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose artifacts failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose artifacts failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Toolchain metadata' +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose metadata failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose metadata failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list profiles +generic +baremetal-rv64ilp32 (needs flavor(s): {'rv64ilp32'}) +xiangshan-nanhu +sipeed-lpi4a (needs flavor(s): {'xthead'}) +milkv-duo ++ CHECK_RESULT 0 0 0 'Check ruyi profile failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi profile failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* toolchain' +++ cut -d/ -f 2 ++ pkgnames='gnu-plct +gnu-plct-xthead +gnu-upstream +gnu-plct-rv64ilp32-elf +llvm-upstream' ++ for p in $pkgnames +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/gnu-plct/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ s=' - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118' ++ '[' '!' -z ' - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118' ']' ++ pkgname=gnu-plct ++ break ++ '[' -z gnu-plct ']' ++ http_proxy=http://wrong.proxy ++ https_proxy=http://wrong.proxy ++ ruyi install gnu-plct +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to /root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz' returned 5 +info: retrying download (2 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz' returned 5 +info: retrying download (3 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz' returned 5 +fatal error: failed to fetch +'/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz': all +source URLs have failed + +Downloads can fail for a multitude of reasons, most of which should not and +cannot be handled by Ruyi. For your convenience though, please check if any +of the following common failure modes apply to you, and take actions +accordingly if one of them turns out to be the case: + +* Basic connectivity problems + - is the gateway reachable? + - is common websites reachable? + - is there any DNS pollution? +* Organizational and/or ISP restrictions + - is there a firewall preventing Ruyi traffic? + - is your ISP blocking access to the source website? +* Volatile upstream + - is the recorded link dead? (Please raise a Ruyi issue for a fix!) + ++ CHECK_RESULT 1 0 1 'Check ruyi install package from wrong proxy failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi install package from wrong proxy failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ http_proxy=http://wrong.proxy ++ https_proxy=http://wrong.proxy ++ ruyi install gnu-plct ++ grep 'Basic connectivity problems' +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to /root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz' returned 5 +info: retrying download (2 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz' returned 5 +info: retrying download (3 of 3 times) + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (5) Could not resolve proxy: wrong.proxy +warn: failed to fetch distfile: command 'curl -L --connect-timeout 60 --ftp-pasv -o +/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz' returned 5 +fatal error: failed to fetch +'/root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz': all +source URLs have failed +* Basic connectivity problems ++ CHECK_RESULT 0 0 0 'Check ruyi install failure message failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install failure message failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install gnu-plct ++ grep downloading +info: downloading ++ CHECK_RESULT 0 0 0 'Check ruyi install package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install gnu-plct ++ grep 'skipping already installed package' +info: skipping already installed package gnu-plct-0.20240324.0 ++ CHECK_RESULT 0 0 0 'Check ruyi install duplicate package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install duplicate package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi install name:gnu-plct ++ grep 'skipping already installed package' +info: skipping already installed package gnu-plct-0.20240324.0 ++ CHECK_RESULT 0 0 0 'Check ruyi install duplicate package by name failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi install duplicate package by name failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* source' +++ head -n 1 +++ cut -d/ -f 2 ++ pkgname=ruyisdk-demo ++ mkdir source-test +mkdir: cannot create directory ‘source-test’: No space left on device ++ ruyi extract ruyisdk-demo +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/ruyisdk-demo-f3d5f81e9c1ccda7ee3e4390dbe1b17125758b5e.src.tar.zst to +/root/.cache/ruyi/distfiles/ruyisdk-demo-f3d5f81e9c1ccda7ee3e4390dbe1b17125758b5e.src.tar.zst + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 Thu Mar 28 23:19:39 2024 - INFO - unsupported package manager: apt-get +Traceback (most recent call last): + File "/root/ruyi-mugen/libs/locallibs/deb_manage.py", line 178, in + exitcode, output = deb_install(args.pkgs, args.node, args.tempfile) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/root/ruyi-mugen/libs/locallibs/deb_manage.py", line 76, in deb_install + mugen_log.logging("info", "unsupported package manager: apt-get") + File "/root/ruyi-mugen/libs/locallibs/mugen_log.py", line 39, in logging + sys.stderr.write( +OSError: [Errno 28] No space left on device ++ tmpfile2= ++ '[' -z '[Errno 28] No space left on device' ']' ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '[Errno 28] No space left on device' ']' +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '[Errno 28] No space left on device' +Thu Mar 28 23:19:39 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '[Errno 28] No space left on device' ']' ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: Failed to open the file ruyi: Is a directory + 0 16.8M 0 4344 0 0 29126 0 0:10:06 --:--:-- 0:10:06 29351 +curl: (23) Failure writing output to destination ++ '[' 23 = 0 ']' ++ (( trys++ )) ++ true ++ '[' 1 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: Failed to open the file ruyi: Is a directory + 0 16.8M 0 2896 0 0 19969 0 0:14:44 --:--:-- 0:14:44 19972 +curl: (23) Failure writing output to destination ++ '[' 23 = 0 ']' ++ (( trys++ )) ++ true ++ '[' 2 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: Failed to open the file ruyi: Is a directory + 0 16.8M 0 2896 0 0 19926 0 0:14:46 --:--:-- 0:14:46 20111 +curl: (23) Failure writing output to destination ++ '[' 23 = 0 ']' ++ (( trys++ )) ++ true ++ '[' 3 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0Warning: Failed to open the file ruyi: Is a directory + 0 16.8M 0 13032 0 0 87780 0 0:03:21 --:--:-- 0:03:21 88054 +curl: (23) Failure writing output to destination ++ '[' 23 = 0 ']' ++ (( trys++ )) ++ true ++ '[' 4 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time+ rm -f ruyi +rm: cannot remove 'ruyi': Is a directory ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:19:55 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_config/2024-03-28-23_29_50.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_config/2024-03-28-23_29_50.log new file mode 100644 index 00000000..ba9d3262 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_config/2024-03-28-23_29_50.log @@ -0,0 +1,277 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:29:50 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:29:54 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:29:55 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:29:55 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 6 16.8M 6 1148k 0 0 5601k 0 0:00:03 --:--:-- 0:00:03 5600k 100 16.8M 100 16.8M 0 0 19.2M 0 --:--:-- --:--:-- --:--:-- 19.2M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:29:56 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:29:57 2024 - INFO - Start to run test. +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ cfg_d=/root/.config/ruyi ++ cfg_f=/root/.config/ruyi/config.toml +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi ++ cc_dir=/root/.cache//ruyi/packages-index ++ cc_td=/tmp/ruyi_config_test ++ '[' '!' -d /root/.config/ruyi ']' ++ mkdir -p /root/.config/ruyi ++ '[' -d /tmp/ruyi_config_test ']' ++ cat ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% +(43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% +(72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% +(100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% +(129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% +(158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: +26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting +objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting +objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% +(265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% +(293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% +(322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% +(350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% +(379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: +57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting +objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting +objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% +(486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% +(515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% +(543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% +(572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% +(600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: +88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting +objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting +objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting +objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing +objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% +(91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% +(103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing +objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% +(124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing +objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% +(145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi update failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi update failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /tmp/ruyi_config_test ']' ++ CHECK_RESULT 0 0 0 'Check ruyi local failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi local failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /root/.cache//ruyi/packages-index ']' ++ CHECK_RESULT 1 0 1 'Check ruyi orig local failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi orig local failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ rm -rf /tmp/ruyi_config_test ++ wr=wrong_magic ++ cat ++ ruyi update ++ grep wrong_magic +_pygit2.GitError: failed to resolve address for wrong_magic: Name or service not known ++ CHECK_RESULT 0 0 0 'Check ruyi remote failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi remote failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ cat ++ ruyi update ++ grep wrong_magic +KeyError: "reference 'refs/remotes/origin/wrong_magic' not found" ++ CHECK_RESULT 0 0 0 'Check ruyi branch failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi branch failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:30:09 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Thu Mar 28 23:30:10 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:30:10 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:30:10 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:30:10 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_25_27.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_25_27.log new file mode 100644 index 00000000..6a8c1cc4 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_25_27.log @@ -0,0 +1,748 @@ ++ source ./common/device_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh +++ source ../common/common_lib.sh ++++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh +++++ python3 --version +++++ '[' 0 -eq 0 ']' +++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh +++ result_item=() ++ source ../common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ EXECUTE_T=120m ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:25:28 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:25:32 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:25:32 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:25:33 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 48 16.8M 48 8324k 0 0 16.2M 0 0:00:01 --:--:-- 0:00:01 16.2M 100 16.8M 100 16.8M 0 0 19.3M 0 --:--:-- --:--:-- --:--:-- 19.3M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi_test_device/ruyi /usr/bin/ruyi ++ mkdir /tmp/ruyi_device ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:25:34 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:25:34 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% +(22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% +(50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% +(79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% +(108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% +(136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: +23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: +27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting +objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting +objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% +(429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% +(479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% +(550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing +objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% +(88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% +(100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ recursion_run '' ++ local now_exec= ++ local end_exec= ++ [[ 0 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Continue /tmp/ruyi_device/output +Continue? (y/N) ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Continue ++ local output +++ grep Continue /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' y = n ']' ++ recursion_run y ++ local now_exec=y ++ local end_exec= ++ [[ 1 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e y ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-13) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-13)' ++ [[ (1-13) == \(\y\/\N\) ]] ++ [[ (1-13) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 3 ++ next_step=('1' '2' '3') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n1' ++ local 'now_exec=y\n1' ++ local end_exec= ++ [[ 4 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-13) +Choice? (1-1) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-1)' ++ [[ (1-1) == \(\y\/\N\) ]] ++ [[ (1-1) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 1 ++ next_step=('1') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n1\n1' ++ local 'now_exec=y\n1\n1' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-13) +Choice? (1-1) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n1\n1\n1' ++ local 'now_exec=y\n1\n1\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n1\n1\n1\ny' y ++ local 'now_exec=y\n1\n1\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n1\n1\n1\ny' ++ ruyi device provision ++ tee ++ SLEEP_WAIT 1m ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /root/ruyi-mugen/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +nohup: ignoring input ++ kill -9 4101 +./common/device_lib.sh: line 49: kill: (4101) - No such process ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 10.8M 34.0M 58.2M 81.3M 104M 128M 152M 176M 200M 223M 247M 270M 293M 318M 341M 364M 388M 402M for : call 46, 290, 30, 110, 149, 254, 377, 104, 58, 46, 212, command ' +++ echo Received Spent 0 10.8M 34.0M 58.2M 81.3M 104M 128M 152M 176M 200M 223M 247M 270M 293M 318M 341M 364M 388M 402M for : call 46, 290, 30, 110, 149, 254, 377, 104, 58, 46, 212, command ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 10.8M =~ [0-9]+ ]] ++ [[ 10.8M != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n1\ny' +++ sed 's/\\n//g' ++ now_exec_f=y111y +++ echo -E y111y +++ sed 's$/$_$g' ++ now_exec_f=y111y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y111y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi ++ rm -rf /root/.cache//ruyi/distfiles/openEuler-23.03-V1-base-d1-preview.img.zst +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi ++ rm -rf /root/.local/share/ruyi/blobs/oerv-awol-d1-base-0.2303.1 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n1\n1\n1\nn' 2 ++ local 'now_exec=y\n1\n1\n1\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n1\n1\n1\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n1\nn' +++ sed 's/\\n//g' ++ now_exec_f=y111n +++ echo -E y111n +++ sed 's$/$_$g' ++ now_exec_f=y111n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y111n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi ++ rm -rf '/root/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi ++ rm -rf '/root/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n1\n1\n2' ++ local 'now_exec=y\n1\n1\n2' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n1\n1\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n1\n1\n2\ny' y ++ local 'now_exec=y\n1\n1\n2\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n1\n1\n2\ny' ++ ruyi device provision ++ tee ++ SLEEP_WAIT 1m +nohup: ignoring input ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /root/ruyi-mugen/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 ++ kill -9 4168 ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 20.3M 44.5M 67.6M 90.8M 115M 138M 161M 185M 208M 231M 255M 279M 303M 326M 350M 373M 396M 421M 444M 467M 490M 514M 537M 561M 585M 608M 631M 655M 678M 702M 726M 749M 772M 795M 819M 843M 866M 889M 895M ' +++ echo Received Spent 0 0 20.3M 44.5M 67.6M 90.8M 115M 138M 161M 185M 208M 231M 255M 279M 303M 326M 350M 373M 396M 421M 444M 467M 490M 514M 537M 561M 585M 608M 631M 655M 678M 702M 726M 749M 772M 795M 819M 843M 866M 889M 895M ++ for i in $(echo $curl_out) ++ [[ Received =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ Spent =~ [0-9]+ ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 0 =~ [0-9]+ ]] ++ [[ 0 != \0 ]] ++ for i in $(echo $curl_out) ++ [[ 20.3M =~ [0-9]+ ]] ++ [[ 20.3M != \0 ]] ++ echo -e '\nHappy hacking! 0 0' ++ happy=y ++ break ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output_e ++ '[' y = n ']' ++ rm -f /tmp/ruyi_device/output_e ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 0 0 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n2\ny' +++ sed 's/\\n//g' ++ now_exec_f=y112y +++ echo -E y112y +++ sed 's$/$_$g' ++ now_exec_f=y112y ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y112y +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi ++ rm -rf /root/.cache//ruyi/distfiles/openEuler-23.03-V1-xfce-d1-preview.img.zst +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi ++ rm -rf /root/.local/share/ruyi/blobs/oerv-awol-d1-xfce-0.2303.1 ++ return 0 ++ for step in ${next_step[@]} ++ '[' n = n ']' ++ recursion_run 'y\n1\n1\n2\nn' 2 ++ local 'now_exec=y\n1\n1\n2\nn' ++ local end_exec=2 ++ [[ 13 -gt 100 ]] ++ [[ 2 == \y ]] ++ '[' '!' -z 2 ']' ++ '[' 2 '!=' 0 ']' ++ local ret ++ echo -e 'y\n1\n1\n2\nn' ++ ruyi device provision ++ ret=1 +++ expr 2 - 1 ++ echo -e '\nHappy hacking! 1 1' ++ grep 'Happy hacking!' /tmp/ruyi_device/output +Happy hacking! 1 1 ++ [[ 0 -eq 0 ]] ++ local now_exec_f +++ echo -E 'y\n1\n1\n2\nn' +++ sed 's/\\n//g' ++ now_exec_f=y112n +++ echo -E y112n +++ sed 's$/$_$g' ++ now_exec_f=y112n ++ mv /tmp/ruyi_device/output /tmp/ruyi_device/output_y112n +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi ++ rm -rf '/root/.cache//ruyi/distfiles/*' +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi ++ rm -rf '/root/.local/share/ruyi/blobs/*' ++ return 0 ++ '[' n = y ']' ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ return 0 +++ expr 0 + 0 ++ ret=0 ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 2 = n ']' ++ recursion_run 'y\n2' ++ local 'now_exec=y\n2' ++ local end_exec= ++ [[ 4 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-13) +Choice? (1-1) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-1)' ++ [[ (1-1) == \(\y\/\N\) ]] ++ [[ (1-1) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 1 ++ next_step=('1') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n2\n1' ++ local 'now_exec=y\n2\n1' ++ local end_exec= ++ [[ 7 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Choice /tmp/ruyi_device/output +Choice? (1-13) +Choice? (1-1) +Choice? (1-2) Traceback (most recent call last): ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Choice ++ local output +++ grep Choice /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(1-2)' ++ [[ (1-2) == \(\y\/\N\) ]] ++ [[ (1-2) =~ (1-.) ]] ++ result_item=($(seq ${output:0-2:1})) +++ seq 2 ++ next_step=('1' '2') ++ local next_step ++ for step in ${next_step[@]} ++ end_exec= ++ '[' 1 = n ']' ++ recursion_run 'y\n2\n1\n1' ++ local 'now_exec=y\n2\n1\n1' ++ local end_exec= ++ [[ 10 -gt 100 ]] ++ [[ '' == \y ]] ++ '[' '!' -z '' ']' ++ echo -e 'y\n2\n1\n1' ++ ruyi device provision ++ grep --line-buffered -Ev '^$|#' ++ grep 'Happy hacking!' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ local ret ++ ret=0 ++ grep 'failed to fetch distfile' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Proceed with flashing' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep 'Please give the path for the target'\''s whole disk' /tmp/ruyi_device/output ++ [[ 1 -eq 0 ]] ++ grep Proceed /tmp/ruyi_device/output +Proceed? (y/N) warn: EOF while reading user input, assuming the default choice NO ++ [[ 0 -eq 0 ]] ++ test_ouput /tmp/ruyi_device/output Proceed ++ local output +++ grep Proceed /tmp/ruyi_device/output +++ awk '{print $2}' +++ tail -1 ++ output='(y/N)' ++ [[ (y/N) == \(\y\/\N\) ]] ++ result_item=('y' 'n') ++ next_step=('y' 'n') ++ local next_step ++ for step in ${next_step[@]} ++ '[' y = n ']' ++ '[' y = y ']' ++ recursion_run 'y\n2\n1\n1\ny' y ++ local 'now_exec=y\n2\n1\n1\ny' ++ local end_exec=y ++ [[ 13 -gt 100 ]] ++ [[ y == \y ]] ++ nohup echo -e 'y\n2\n1\n1\ny' ++ ruyi device provision ++ tee +nohup: ignoring input ++ SLEEP_WAIT 1m ++ wait_time=1m ++ cmd= ++ mode=1 ++ python3 /root/ruyi-mugen/libs/locallibs/sleep_wait.py --time 1m --cmd '' --mode 1 +/root/ruyi-mugen/libs/locallibs/common_lib_python.sh: line 196: 4166 Done nohup echo -e "$now_exec" + 4167 Exit 120 | ruyi device provision 2>&1 + 4168 Killed | tee > /tmp/ruyi_device/output ++ kill -9 4262 +./common/device_lib.sh: line 49: kill: (4262) - No such process ++ sed 's/\x0D/\n/g' /tmp/ruyi_device/output ++ local happy ++ happy=n ++ grep -A 100 'Saving to' /tmp/ruyi_device/output_e ++ grep '\[=' ++ '[' n = n ']' +++ grep -A 100 Total /tmp/ruyi_device/output_e +++ grep -A 100 Received +++ awk '{printf $4" "}' ++ curl_out='Received Spent 0 0 19.9M 41.9M 64.0M 86.1M 109M 131M 154M 176M 199M 209M for space call 46, 290, 30, 110, 149, 254, 377, 104, 58, 37, 156, command ' +++ echo Received Spent 0 0 19.9M 41.9M 64.0M 86.1M 109M 131M 154M 176M 199M 209M for space call 46, 290, 30, 110, 149, 254, + rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:29:26 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_29_22.tar.gz b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_device/2024-03-28-23_29_22.tar.gz new file mode 100644 index 00000000..e69de29b diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct-rv64ilp32-elf/2024-03-28-23_30_22.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct-rv64ilp32-elf/2024-03-28-23_30_22.log new file mode 100644 index 00000000..4c57546a --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct-rv64ilp32-elf/2024-03-28-23_30_22.log @@ -0,0 +1,292 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:30:23 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:30:27 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:30:28 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:30:28 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 30 16.8M 30 5330k 0 0 13.4M 0 0:00:01 --:--:-- 0:00:01 13.4M 100 16.8M 100 16.8M 0 0 19.0M 0 --:--:-- --:--:-- --:--:-- 19.0M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:30:29 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:30:29 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% -:--:-- +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct-rv64ilp32-elf +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240224-PLCT-Sources-RV64ILP32-g8c718031673d-HOST-riscv64-linux-gnu-ris +cv64-plct-elf.tar.xz to +/root/.cache/ruyi/distfiles/RuyiSDK-20240224-PLCT-Sources-RV64ILP32-g8c718031673d-HOST-riscv64-linux-gnu-riscv64-plct-el +f.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 13 42.8M 13 5721k 0 0 12.8M 0 0:00:03 --:--:-- 0:00:03 12.8M 67 42.8M 67 28.7M 0 0 20.1M 0 0:00:02 0:00:01 0:00:01 20.1M 100 42.8M 100 42.8M 0 0 21.1M 0 0:00:02 0:00:02 --:--:-- 21.1M +info: extracting RuyiSDK-20240224-PLCT-Sources-RV64ILP32-g8c718031673d-HOST-riscv64-linux-gnu-riscv64-plct-elf.tar.xz +for package gnu-plct-rv64ilp32-elf-0.20240223.0-ruyi.20240224 +info: package gnu-plct-rv64ilp32-elf-0.20240223.0-ruyi.20240224 installed to +/root/.local/share/ruyi/binaries/riscv64/gnu-plct-rv64ilp32-elf-0.20240223.0-ruyi.20240224 ++ [[ 0 != \0 ]] ++ ruyi venv -t gnu-plct-rv64ilp32-elf --without-sysroot baremetal-rv64ilp32 /tmp/mugen_test_venv +info: Creating a Ruyi virtual environment at /tmp/mugen_test_venv... +info: The virtual environment is now created. + +You may activate it by sourcing the appropriate activation script in the +bin directory, and deactivate by invoking `ruyi-deactivate`. + +The virtual environment also comes with ready-made CMake toolchain file +and Meson cross file. Check the virtual environment root for those; +comments in the files contain usage instructions. + ++ CHECK_RESULT 0 0 0 'Check ruyi venv creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi venv creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ cat ++ CHECK_RESULT 0 0 0 'Check test.c creation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.c creation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ source /tmp/mugen_test_venv/bin/ruyi-activate +++ '[' /tmp/mugen_test_venv/bin/ruyi-activate = ruyi_test_gnu-plct-rv64ilp32-elf.sh ']' +++ ruyi-deactivate nondestructive +++ '[' -z '' ']' +++ hash -r +++ '[' -z '' ']' +++ unset RUYI_VENV +++ unset RUYI_VENV_PROMPT +++ '[' '!' nondestructive = nondestructive ']' +++ RUYI_VENV=/tmp/mugen_test_venv +++ export RUYI_VENV +++ _RUYI_OLD_PATH=/root/.local/bin:/root/bin:/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin +++ PATH=/tmp/mugen_test_venv/bin:/root/.local/bin:/root/bin:/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin +++ export PATH +++ hash -r ++++ basename /tmp/mugen_test_venv +++ RUYI_VENV_PROMPT=mugen_test_venv +++ export RUYI_VENV_PROMPT +++ '[' -z '' ']' +++ _RUYI_OLD_PS1= +++ PS1='«Ruyi mugen_test_venv» ' +++ export PS1 ++ riscv64-plct-elf-gcc -O2 -c -o test.o test.c ++ CHECK_RESULT 0 0 0 'Check test.c compilation failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.c compilation failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ riscv64-plct-elf-readelf -h test.o ++ grep 32 + Class: ELF32 + Flags: 0x25, RVC, X32, double-float ABI ++ CHECK_RESULT 0 0 0 'Check test.o 32bit failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.o 32bit failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ riscv64-plct-elf-objdump -dw test.o ++ grep a0 + 0: 6108 ld a0,0(a0) + 2: 952e add a0,a0,a1 + 8: 4511 li a0,4 + 14: 4511 li a0,4 + 1e: 4521 li a0,8 + 2a: 4511 li a0,4 ++ CHECK_RESULT 0 0 0 'Check test.o 64bit reg failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check test.o 64bit reg failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi-deactivate ++ '[' -z _ ']' ++ PATH=/root/.local/bin:/root/bin:/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin ++ export PATH ++ unset _RUYI_OLD_PATH ++ hash -r ++ '[' -z _ ']' ++ PS1= ++ export PS1 ++ unset _RUYI_OLD_PS1 ++ unset RUYI_VENV ++ unset RUYI_VENV_PROMPT ++ '[' '!' '' = nondestructive ']' ++ unset -f ruyi-deactivate ++ rm -f test.c test.o ++ rm -rf /tmp/mugen_test_venv ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:30:56 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Thu Mar 28 23:30:56 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:30:56 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:30:56 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:30:57 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct_xiangshan-nanhu/2024-03-28-23_23_42.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct_xiangshan-nanhu/2024-03-28-23_23_42.log new file mode 100644 index 00000000..fce5ce27 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_gnu-plct_xiangshan-nanhu/2024-03-28-23_23_42.log @@ -0,0 +1,153 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:23:43 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:23:47 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:23:47 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:23:48 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 48 16.8M 48 8426k 0 0 15.9M 0 0:00:01 --:--:-- 0:00:01 15.9M 100 16.8M 100 16.8M 0 0 19.0M 0 --:--:-- --:--:-- --:--:-- 19.0M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:23:49 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:23:49 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% -:--:-- +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to /root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 4 231M 4 9.8M 0 0 17.2M 0 0:00:13 --:--:-- 0:00:13 17.2M 14 231M 14 33.0M 0 0 21.1M 0 0:00:10 0:00:01 0:00:09 21.1M 24 231M 24 56.3M 0 0 21.9M 0 0:00:10 0:00:02 0:00:08 21.9M 34 231M 34 79.5M 0 0 22.3M 0 0:00:10 0:00:03 0:00:07 22.3M 44 231M 44 102M 0 0 22.5M 0 0:00:10 0:00:04 0:00:06 22.5M 54 231M 54 125M 0 0 22.7M 0 0:00:10 0:00:05 0:00:05 23.3M 64 231M 64 150M 0 0 22.8M 0 0:00:10 0:00:06 0:00:04 23.3M 74 231M 74 173M 0 0 22.9M 0 0:00:10 0:00:07 0:00:03 23.3M 84 231M 84 196M 0 0 22.9M 0 0:00:10 0:00:08 0:00:02 23.3M 94 231M 94 219M 0 0 23.0M 0 0:00:10 0:00:09 0:00:01 23.4M 100 231M 100 231M 0 0 23.0M 0 0:00:10 0:00:10 --:--:-- 23.4M +info: extracting RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz for package +gnu-plct-0.20240324.0 +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libm.a: Wrote only 512 of 10240 bytes +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libmcheck.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libpthread.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libresolv.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/librt.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libutil.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf: Cannot mkdir: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V7_ILP32_OFFBIG: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V7_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/XBS5_ILP32_OFFBIG: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/XBS5_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin/iconvconfig: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin/nscd: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin/zic: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/share: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/share: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/share/i18n: Cannot mkdir: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/share: Cannot mkdir: No space left on device +tar: riscv6+ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:25:10 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_llvm/2024-03-28-23_25_11.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_llvm/2024-03-28-23_25_11.log new file mode 100644 index 00000000..f1bff040 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_llvm/2024-03-28-23_25_11.log @@ -0,0 +1,182 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:25:11 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:25:15 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:25:16 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:25:17 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 77 16.8M 77 13.0M 0 0 18.5M 0 --:--:-- --:--:-- --:--:-- 18.4M 100 16.8M 100 16.8M 0 0 19.4M 0 --:--:-- --:--:-- --:--:-- 19.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:25:18 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:25:18 2024 - INFO - Start to run test. ++ mkdir llvm_test +mkdir: cannot create directory ‘llvm_test’: File exists ++ cd llvm_test ++ qemu_pkg=qemu-user-riscv-upstream ++ qemu_cmd='-e qemu-user-riscv-upstream' ++ qemu_bin=ruyi-qemu +++ uname -m ++ '[' riscv64 == riscv64 ']' ++ qemu_pkg= ++ qemu_cmd= ++ qemu_bin= ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% +(22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% +(50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% +(79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% +(108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% +(279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% +(714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing +objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% +(97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/llvm-upstream/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ pe= ++ '[' -z '' ']' +++ uname -m ++ LOG_INFO 'No llvm-upstream available for current host riscv64, skip' ++ message='No llvm-upstream available for current host riscv64, skip' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'No llvm-upstream available for current host riscv64, skip' +Thu Mar 28 23:25:26 2024 - INFO - No llvm-upstream available for current host riscv64, skip ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:25:26 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:25:26 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:25:27 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_news/2024-03-28-23_29_26.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_news/2024-03-28-23_29_26.log new file mode 100644 index 00000000..68adc720 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_news/2024-03-28-23_29_26.log @@ -0,0 +1,233 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:29:26 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:29:31 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:29:31 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:29:32 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ rm -f ruyi ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 64 16.8M 64 10.8M 0 0 17.1M 0 --:--:-- --:--:-- --:--:-- 17.1M 100 16.8M 100 16.8M 0 0 18.9M 0 --:--:-- --:--:-- --:--:-- 18.9M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:29:33 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:29:33 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi news read ++ grep '#' +# RuyiSDK 支持展示新闻了 +# 新增板卡支持 (2024-01-15) +## Milk-V Duo +### 64M RAM 版本 +### 256M RAM 版本 +## Milk-V Pioneer +## Sipeed LicheePi 4A +# 新增板卡支持 (2024-01-29) +## Sipeed LicheeRV & Allwinner 哪吒 D1 +## StarFive VisionFive +## StarFive VisionFive2 +# RuyiSDK 0.4 版本更新说明 +## RuyiSDK 包管理器 +## RuyiSDK 软件源 +# RV64ILP32 裸机工具链与 profile 现已可用 +## 使用示例 ++ CHECK_RESULT 0 0 0 'Check ruyi news read failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news read failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news read ++ grep 'No news to display.' +No news to display. ++ CHECK_RESULT 0 0 0 'Check ruyi news read empty failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news read empty failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news read 1 ++ grep '#' +# RuyiSDK 支持展示新闻了 ++ CHECK_RESULT 0 0 0 'Check ruyi news read 1 failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news read 1 failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news list ++ grep 'News items' +News items: ++ CHECK_RESULT 0 0 0 'Check ruyi news list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:29:48 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z '' ++ test 0 -eq 0 ++ LOG_INFO 'succeed to execute the case.' ++ message='succeed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'succeed to execute the case.' +Thu Mar 28 23:29:49 2024 - INFO - succeed to execute the case. ++ exec_result= ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:29:49 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:29:49 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:29:49 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_qemu/2024-03-28-23_19_56.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_qemu/2024-03-28-23_19_56.log new file mode 100644 index 00000000..8919f604 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_qemu/2024-03-28-23_19_56.log @@ -0,0 +1,167 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:19:56 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:20:00 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:20:01 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:20:02 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ rm -f ruyi ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 16.8M 100 16.8M 0 0 19.4M 0 --:--:-- --:--:-- --:--:-- 19.5M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:20:03 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:20:03 2024 - INFO - Start to run test. ++ mkdir qemu_test +mkdir: cannot create directory ‘qemu_test’: File exists ++ cd qemu_test ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* emulator\/qemu-user-riscv-upstream/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ pe= ++ '[' -z '' ']' +++ uname -m ++ LOG_INFO 'No qemu-user-riscv-upstream available for current host riscv64, skip' ++ message='No qemu-user-riscv-upstream available for current host riscv64, skip' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'No qemu-user-riscv-upstream available for current host riscv64, skip' +Thu Mar 28 23:20:11 2024 - INFO - No qemu-user-riscv-upstream available for current host riscv64, skip ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:20:11 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:20:11 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:20:11 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_venv/2024-03-28-23_22_12.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_venv/2024-03-28-23_22_12.log new file mode 100644 index 00000000..c6fe6fc1 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_venv/2024-03-28-23_22_12.log @@ -0,0 +1,258 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:22:13 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:22:17 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:22:17 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:22:18 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 35 16.8M 35 6198k 0 0 14.8M 0 0:00:01 --:--:-- 0:00:01 14.8M 100 16.8M 100 16.8M 0 0 19.4M 0 --:--:-- --:--:-- --:--:-- 19.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:22:19 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:22:19 2024 - INFO - Start to run test. ++ ruyi update +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% +(22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% +(50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% +(79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% +(108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% +(136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: +23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: +27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting +objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting +objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% +(272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% +(300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% +(329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% +(357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% +(386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: +58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting +objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting +objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% +(493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% +(522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% +(550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% +(579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% +(607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% (665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% +(686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing +objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% +(94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% +(106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% (175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% 0:00:01 +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ ruyi install gnu-plct +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to /root/.cache/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 4 231M 4 11.2M 0 0 17.7M 0 0:00:13 --:--:-- 0:00:13 17.8M 14 231M 14 34.4M 0 0 21.2M 0 0:00:10 0:00:01 0:00:09 21.2M 24 231M 24 57.5M 0 0 22.0M 0 0:00:10 0:00:02 0:00:08 22.0M 35 231M 35 81.7M 0 0 22.4M 0 0:00:10 0:00:03 0:00:07 22.4M 45 231M 45 104M 0 0 22.7M 0 0:00:10 0:00:04 0:00:06 22.7M 55 231M 55 128M 0 0 22.8M 0 0:00:10 0:00:05 0:00:05 23.4M 65 231M 65 152M 0 0 22.9M 0 0:00:10 0:00:06 0:00:04 23.4M 75 231M 75 175M 0 0 23.0M 0 0:00:10 0:00:07 0:00:03 23.5M 85 231M 85 198M 0 0 23.0M 0 0:00:10 0:00:08 0:00:02 23.5M 96 231M 96 222M 0 0 23.1M 0 0:00:10 0:00:09 0:00:01 23.5M 100 231M 100 231M 0 0 23.1M 0 0:00:10 0:00:10 --:--:-- 23.4M +info: extracting RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz for package +gnu-plct-0.20240324.0 +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libm.a: Wrote only 4608 of 10240 bytes +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libmcheck.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libpthread.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libresolv.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/librt.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libutil.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf: Cannot mkdir: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V7_ILP32_OFFBIG: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V7_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/XBS5_ILP32_OFFBIG: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/XBS5_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin/iconvconfig: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin/nscd: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/sbin/zic: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/share: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/share: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/share/i18n: Cannot mkdir: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/share: Cannot mkdir: No space lefThu Mar 28 23:23:39 2024 - ERROR - Check activate ruyi venv PS1 failed +Traceback (most recent call last): + File "/root/ruyi-mugen/libs/locallibs/mugen_log.py", line 54, in + logging(args.level, args.message) + File "/root/ruyi-mugen/libs/locallibs/mugen_log.py", line 39, in logging + sys.stderr.write( +OSError: [Errno 28] No space left on device ++ (( exec_result++ )) ++ LOG_ERROR 'ruyi_test_venv.sh line 39' ++ message='ruyi_test_venv.sh line 39' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'ruyi_test_venv.sh line 39' +Thu Mar 28 23:23:39 2024 - ERROR - ruyi_test_venv.sh line 39 ++ '[' 0 -eq 1 ']' ++ return 0 ++ ruyi-deactivate +ruyi_test_venv.sh: line 40: ruyi-deactivate: command not found ++ '[' '' == '' ']' ++ CHECK_RESULT 0 0 0 'Check deactivate ruyi venv PS1 failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check deactivate ruyi venv PS1 failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ rm -rf test-venv ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:23:39 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z 3 ++ test 3 -gt 0 ++ LOG_ERROR 'failed to execute the case.' ++ message='failed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'failed to execute the case.' +Thu Mar 28 23:23:39 2024 - ERROR - failed to execute the case. ++ exit 3 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:23:40 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:23:40 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:23:42 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xdg/2024-03-28-23_13_32.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xdg/2024-03-28-23_13_32.log new file mode 100644 index 00000000..6999e47b --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xdg/2024-03-28-23_13_32.log @@ -0,0 +1,562 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:13:32 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:13:36 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:13:37 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:13:38 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ rm -f ruyi ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 87 16.8M 87 14.7M 0 0 18.1M 0 --:--:-- --:--:-- --:--:-- 18.1M 100 16.8M 100 16.8M 0 0 18.6M 0 --:--:-- --:--:-- --:--:-- 18.6M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:13:39 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:13:39 2024 - INFO - Start to run test. ++ export XDG_CACHE_HOME=/root/.cache/ruyi_mugen_test ++ XDG_CACHE_HOME=/root/.cache/ruyi_mugen_test ++ export XDG_DATA_HOME=/root/.local/share/ruyi_mugen_test ++ XDG_DATA_HOME=/root/.local/share/ruyi_mugen_test ++ export XDG_STATE_HOME=/root/.local/state/ruyi_mugen_test ++ XDG_STATE_HOME=/root/.local/state/ruyi_mugen_test ++ mkdir -p /root/.cache/ruyi_mugen_test /root/.local/share/ruyi_mugen_test /root/.local/state/ruyi_mugen_test ++ xdg_ruyi_dir=/root/.cache/ruyi_mugen_test/ruyi ++ xdg_ruyi_data_dir=/root/.local/share/ruyi_mugen_test/ruyi ++ xdg_ruyi_state_dir=/root/.local/state/ruyi_mugen_test/ruyi ++ default_ruyi_dir=/root/.cache/ruyi ++ default_ruyi_data_dir=/root/.local/share/ruyi ++ default_ruyi_state_dir=/root/.local/state/ruyi ++ ruyi list +List of available packages: + +Enumerating objects: 714, done. +Counting objects: 0% (1/714)Counting objects: 1% (8/714)Counting objects: 2% (15/714)Counting objects: 3% (22/714)Counting objects: 4% (29/714)Counting objects: 5% (36/714)Counting objects: 6% (43/714)Counting objects: 7% (50/714)Counting objects: 8% (58/714)Counting objects: 9% (65/714)Counting objects: 10% (72/714)Counting objects: 11% (79/714)Counting objects: 12% (86/714)Counting objects: 13% (93/714)Counting objects: 14% (100/714)Counting objects: 15% (108/714)Counting objects: 16% (115/714)Counting objects: 17% (122/714)Counting objects: 18% (129/714)Counting objects: 19% (136/714)Counting objects: 20% (143/714)Counting objects: 21% (150/714)Counting objects: 22% (158/714)Counting objects: 23% (165/714)Counting objects: 24% (172/714)Counting objects: 25% (179/714)Counting objects: 26% (186/714)Counting objects: 27% (193/714)Counting objects: 28% (200/714)Counting objects: 29% (208/714)Counting objects: 30% (215/714)Counting objects: 31% (222/714)Counting objects: 32% (229/714)Counting objects: 33% (236/714)Counting objects: 34% (243/714)Counting objects: 35% (250/714)Counting objects: 36% (258/714)Counting objects: 37% (265/714)Counting objects: 38% (272/714)Counting objects: 39% (279/714)Counting objects: 40% (286/714)Counting objects: 41% (293/714)Counting objects: 42% (300/714)Counting objects: 43% (308/714)Counting objects: 44% (315/714)Counting objects: 45% (322/714)Counting objects: 46% (329/714)Counting objects: 47% (336/714)Counting objects: 48% (343/714)Counting objects: 49% (350/714)Counting objects: 50% (357/714)Counting objects: 51% (365/714)Counting objects: 52% (372/714)Counting objects: 53% (379/714)Counting objects: 54% (386/714)Counting objects: 55% (393/714)Counting objects: 56% (400/714)Counting objects: 57% (407/714)Counting objects: 58% (415/714)Counting objects: 59% (422/714)Counting objects: 60% (429/714)Counting objects: 61% (436/714)Counting objects: 62% (443/714)Counting objects: 63% (450/714)Counting objects: 64% (457/714)Counting objects: 65% (465/714)Counting objects: 66% (472/714)Counting objects: 67% (479/714)Counting objects: 68% (486/714)Counting objects: 69% (493/714)Counting objects: 70% (500/714)Counting objects: 71% (507/714)Counting objects: 72% (515/714)Counting objects: 73% (522/714)Counting objects: 74% (529/714)Counting objects: 75% (536/714)Counting objects: 76% (543/714)Counting objects: 77% (550/714)Counting objects: 78% (557/714)Counting objects: 79% (565/714)Counting objects: 80% (572/714)Counting objects: 81% (579/714)Counting objects: 82% (586/714)Counting objects: 83% (593/714)Counting objects: 84% (600/714)Counting objects: 85% (607/714)Counting objects: 86% (615/714)Counting objects: 87% (622/714)Counting objects: 88% (629/714)Counting objects: 89% (636/714)Counting objects: 90% (643/714)Counting objects: 91% (650/714)Counting objects: 92% (657/714)Counting objects: 93% +(665/714)Counting objects: 94% (672/714)Counting objects: 95% (679/714)Counting objects: 96% (686/714)Counting objects: 97% (693/714)Counting objects: 98% (700/714)Counting objects: 99% (707/714)Counting objects: 100% (714/714)Counting objects: 100% (714/714), done. +Compressing objects: 0% (1/301)Compressing objects: 1% (4/301)Compressing objects: 2% (7/301)Compressing objects: 3% (10/301)Compressing objects: 4% (13/301)Compressing objects: 5% (16/301)Compressing objects: 6% (19/301)Compressing objects: 7% (22/301)Compressing objects: 8% (25/301)Compressing objects: 9% (28/301)Compressing objects: 10% (31/301)Compressing objects: 11% (34/301)Compressing objects: 12% (37/301)Compressing objects: 13% (40/301)Compressing objects: 14% (43/301)Compressing objects: 15% (46/301)Compressing objects: 16% (49/301)Compressing objects: 17% (52/301)Compressing objects: 18% (55/301)Compressing objects: 19% (58/301)Compressing objects: 20% (61/301)Compressing objects: 21% (64/301)Compressing objects: 22% (67/301)Compressing objects: 23% (70/301)Compressing objects: 24% (73/301)Compressing objects: 25% (76/301)Compressing objects: 26% (79/301)Compressing objects: 27% (82/301)Compressing objects: 28% (85/301)Compressing objects: 29% (88/301)Compressing objects: 30% (91/301)Compressing objects: 31% (94/301)Compressing objects: 32% (97/301)Compressing objects: 33% (100/301)Compressing objects: 34% (103/301)Compressing objects: 35% (106/301)Compressing objects: 36% (109/301)Compressing objects: 37% (112/301)Compressing objects: 38% (115/301)Compressing objects: 39% (118/301)Compressing objects: 40% (121/301)Compressing objects: 41% (124/301)Compressing objects: 42% (127/301)Compressing objects: 43% (130/301)Compressing objects: 44% (133/301)Compressing objects: 45% (136/301)Compressing objects: 46% (139/301)Compressing objects: 47% (142/301)Compressing objects: 48% (145/301)Compressing objects: 49% (148/301)Compressing objects: 50% (151/301)Compressing objects: 51% (154/301)Compressing objects: 52% (157/301)Compressing objects: 53% (160/301)Compressing objects: 54% (163/301)Compressing +objects: 55% (166/301)Compressing objects: 56% (169/301)Compressing objects: 57% (172/301)Compressing objects: 58% +(175/301)Compressing objects: 59% (178/301)Compressing objects: 60% (181/301)Compressing objects: 61% (184/301)Compressing objects: 62% (187/301)Compressing objects: 63% (190/301)Compressing objects: 64% (193/301)Compressing objects: 65% (196/301)Compressing objects: 66% (199/301)Compressing objects: 67% (202/301)Compressing objects: 68% (205/301)Compressing objects: 69% (208/301)Compressing objects: 70% (211/301)Compressing objects: 71% (214/301)Compressing objects: 72% (217/301)Compressing objects: 73% (220/301)Compressing objects: 74% (223/301)Compressing objects: 75% (226/301)Compressing objects: 76% (229/301)Compressing objects: 77% (232/301)Compressing objects: 78% (235/301)Compressing objects: 79% (238/301)Compressing objects: 80% (241/301)Compressing objects: 81% (244/301)Compressing objects: 82% (247/301)Compressing objects: 83% (250/301)Compressing objects: 84% (253/301)Compressing objects: 85% (256/301)Compressing objects: 86% (259/301)Compressing objects: 87% (262/301)Compressing objects: 88% (265/301)Compressing objects: 89% (268/301)Compressing objects: 90% (271/301)Compressing objects: 91% (274/301)Compressing objects: 92% (277/301)Compressing objects: 93% (280/301)Compressing objects: 94% (283/301)Compressing objects: 95% (286/301)Compressing objects: 96% (289/301)Compressing objects: 97% (292/301)Compressing objects: 98% (295/301)Compressing objects: 99% (298/301)Compressing objects: 100% (301/301)Compressing objects: 100% (301/301), done. +Total 714 (delta 330), reused 664 (delta 280), pack-reused 0 +transferring objects ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0% -:--:-- +processing deltas ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100% 0:00:00 +* emulator/qemu-user-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) + - 8.1.2-ruyi.20231121 (no binary for current host) +* emulator/qemu-user-riscv-xthead + - 6.1.0-ruyi.20231207+g03813c9fe8 (latest, no binary for current host) +* emulator/qemu-system-riscv-upstream + - 8.2.0-ruyi.20240128 (latest, no binary for current host) +* board-image/buildroot-sdk-milkv-duo + - 1.0.7 (latest) +* board-image/oerv-sg2042-milkv-pioneer-base + - 0.2309.1 (latest) +* board-image/oerv-starfive-visionfive2-base + - 0.2309.1 (latest) +* board-image/ubuntu-server-riscv64-sifive-unmatched + - 0.2310.0 (latest) +* board-image/oerv-starfive-visionfive2-xfce + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo256m-python + - 1.0.7 (latest) +* board-image/oerv-starfive-visionfive-base + - 0.2309.1 (latest) +* board-image/oerv-starfive-visionfive-xfce + - 0.2309.1 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-8g + - 0.2309.1 (latest) +* board-image/buildroot-sdk-milkv-duo256m + - 1.0.7 (latest) +* board-image/openwrt-sifive-unmatched + - 0.2305.2 (latest) +* board-image/openbsd-riscv64-live + - 7.4.0 (latest) +* board-image/uboot-oerv-sipeed-lpi4a-16g + - 0.2309.1 (latest) +* board-image/revyos-sg2042-milkv-pioneer + - 0.20240119.0 (latest) + - 0.20231220.0 () +* board-image/oerv-sifive-unmatched-base + - 0.2309.1 (latest) +* board-image/debian-desktop-sdk-milkv-mars-sd + - 1.0.6+3.6.1 (latest) +* board-image/oerv-sipeed-lpi4a-xfce + - 0.2309.1 (latest) +* board-image/canmv-ubuntu-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/oerv-awol-d1-base + - 0.2303.1 (latest) +* board-image/freebsd-riscv64-mini-live + - 14.0.0 (latest) +* board-image/revyos-sipeed-lpi4a + - 0.20231210.0 (latest) +* board-image/debian-desktop-sdk-milkv-mars-cm-sd + - 1.0.6+3.6.1 (latest) +* board-image/oerv-sg2042-milkv-pioneer-xfce + - 0.2309.1 (latest) +* board-image/canmv-debian-sdk-canaan-k230 + - 1.3.0 (latest) +* board-image/openkylin-riscv64-sifive-unmatched + - 1.0.0 (latest) +* board-image/uboot-revyos-sipeed-lpi4a-8g + - 0.20231210.0 (latest) +* board-image/buildroot-sdk-milkv-duo-python + - 1.0.7 (latest) +* board-image/buildroot-sdk-milkv-duos-sd + - 1.0.9 (latest) +* board-image/oerv-sifive-unmatched-xfce + - 0.2309.1 (latest) +* board-image/oerv-sipeed-lpi4a-headless + - 0.2309.1 (latest) +* board-image/uboot-revyos-sipeed-lpi4a-16g + - 0.20231210.0 (latest) +* board-image/oerv-awol-d1-xfce + - 0.2303.1 (latest) +* source/ruyisdk-demo + - 0.20231114.0 (latest) +* source/coremark + - 1.0.2-pre.20230125 (prerelease, latest-prerelease) + - 1.0.1 (latest) +* analyzer/dynamorio-riscv + - 10.0.19748-ruyi.20240128 (latest) +* toolchain/gnu-plct + - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118 +* toolchain/gnu-plct-xthead + - 2.8.0-ruyi.20240222 (latest) + - 0.20231212.0 () slug: gnu-plct-xthead-20231212 + - 0.20231118.0 () slug: gnu-plct-xthead-20231118 +* toolchain/gnu-upstream + - 0.20231212.0 (latest) slug: gnu-upstream-20231212 + - 0.20231118.0 () slug: gnu-upstream-20231118 +* toolchain/gnu-plct-rv64ilp32-elf + - 0.20240223.0-ruyi.20240224 (latest) +* toolchain/llvm-upstream + - 17.0.5-ruyi.20231121 (latest, no binary for current host) slug: llvm-upstream-20231121 ++ CHECK_RESULT 0 0 0 'Check ruyi empty list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi empty list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi update + + +There are 5 new news item(s): + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 + +You can read them with ruyi news read. ++ CHECK_RESULT 0 0 0 'Check ruyi update failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi update failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* ' +++ wc -l ++ pkgcnt=43 ++ CHECK_RESULT 43 0 1 'Check ruyi list failed' ++ actual_result=43 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi list failed' ++ exit_mode=0 ++ '[' -z 43 ']' ++ '[' 1 -eq 0 ']' ++ test 43x == 0x ++ return 0 ++ ruyi list ++ grep 'Package declares' ++ CHECK_RESULT 1 0 1 'Check ruyi brief list failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi brief list failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Package declares' +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 2 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 1 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 2 distfile(s): +Package declares 3 distfile(s): +Package declares 1 distfile(s): ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose package failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose package failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Binary artifacts' +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts +### Binary artifacts ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose artifacts failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose artifacts failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi list --verbose ++ grep 'Toolchain metadata' +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata +### Toolchain metadata ++ CHECK_RESULT 0 0 0 'Check ruyi list verbose metadata failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi list verbose metadata failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ ruyi news list +News items: + + No. ID Title +─────────────────────────────────────────────────────────────────────────────────── + 1 2024-01-14-ruyi-news RuyiSDK 支持展示新闻了 + 2 2024-01-15-new-board-images 新增板卡支持 (2024-01-15) + 3 2024-01-29-new-board-images 新增板卡支持 (2024-01-29) + 4 2024-01-29-ruyi-0.4 RuyiSDK 0.4 版本更新说明 + 5 2024-02-26-gnu-plct-rv64ilp32-elf RV64ILP32 裸机工具链与 profile 现已可用 ++ CHECK_RESULT 0 0 0 'Check ruyi news list failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi news list failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 +++ ruyi list +++ grep -e '^* toolchain' +++ cut -d/ -f 2 ++ pkgnames='gnu-plct +gnu-plct-xthead +gnu-upstream +gnu-plct-rv64ilp32-elf +llvm-upstream' ++ for p in $pkgnames +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/gnu-plct/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' ++ s=' - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118' ++ '[' '!' -z ' - 0.20240324.0 (latest) + - 0.20231212.0 () slug: gnu-plct-20231212 + - 0.20231118.0 () slug: gnu-plct-20231118' ']' ++ pkgname=gnu-plct ++ break ++ '[' -z gnu-plct ']' ++ ruyi install gnu-plct +info: downloading +https://mirror.iscas.ac.cn/ruyisdk/dist/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar. +xz to +/root/.cache/ruyi_mugen_test/ruyi/distfiles/RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu. +tar.xz + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 3 231M 3 7661k 0 0 15.0M 0 0:00:15 --:--:-- 0:00:15 15.0M 13 231M 13 31.5M 0 0 20.7M 0 0:00:11 0:00:01 0:00:10 20.7M 23 231M 23 54.7M 0 0 21.8M 0 0:00:10 0:00:02 0:00:08 21.8M 34 231M 34 78.9M 0 0 22.3M 0 0:00:10 0:00:03 0:00:07 22.3M 44 231M 44 102M 0 0 22.6M 0 0:00:10 0:00:04 0:00:06 22.6M 54 231M 54 126M 0 0 22.8M 0 0:00:10 0:00:05 0:00:05 23.6M 64 231M 64 149M 0 0 22.9M 0 0:00:10 0:00:06 0:00:04 23.6M 74 231M 74 172M 0 0 23.0M 0 0:00:10 0:00:07 0:00:03 23.6M 85 231M 85 196M 0 0 23.1M 0 0:00:10 0:00:08 0:00:02 23.6M 95 231M 95 219M 0 0 23.1M 0 0:00:09 0:00:09 --:--:-- 23.6M 100 231M 100 231M 0 0 23.1M 0 0:00:09 0:00:09 --:--:-- 23.5M +info: extracting RuyiSDK-20240324-PLCT-Sources-HOST-riscv64-linux-gnu-riscv64-plct-linux-gnu.tar.xz for package +gnu-plct-0.20240324.0 +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libm.a: Wrote only 4608 of 10240 bytes +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libmcheck.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libpthread.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libresolv.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/librt.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/lib64/lp64d/libutil.a: Cannot write: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf: Cannot mkdir: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG: Cannot open: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V7_ILP32_OFFBIG: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V6_ILP32_OFFBIG’: No such file or directory +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec: Cannot mkdir: No space left on device +tar: riscv64-plct-linux-gnu/sysroot/usr/libexec/getconf/POSIX_V7_LP64_OFF64: Cannot hard link to ‘riscv64-plct-linux-gnu/sysroot/usr/bin/getconf’: No such file or directory +tar: riscv64-pinfo: uninstallation consent given over CLI, proceeding +info: removing installed packages +info: removing state data +info: removing cached data +info: removing the ruyi binary +info: ruyi is uninstalled ++ CHECK_RESULT 0 0 0 'Check ruyi xdg self purge failed' ++ actual_result=0 ++ expect_result=0 ++ mode=0 ++ error_log='Check ruyi xdg self purge failed' ++ exit_mode=0 ++ '[' -z 0 ']' ++ '[' 0 -eq 0 ']' ++ test 0x '!=' 0x ++ return 0 ++ '[' -d /root/.cache/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi xdg purge cache dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi xdg purge cache dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /root/.local/share/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi xdg purge data dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi xdg purge data dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ '[' -d /root/.local/state/ruyi_mugen_test/ruyi ']' ++ CHECK_RESULT 1 0 1 'Check ruyi xdg purge state dir exists failed' ++ actual_result=1 ++ expect_result=0 ++ mode=1 ++ error_log='Check ruyi xdg purge state dir exists failed' ++ exit_mode=0 ++ '[' -z 1 ']' ++ '[' 1 -eq 0 ']' ++ test 1x == 0x ++ return 0 ++ rm -rf /root/.cache/ruyi_mugen_test /root/.local/share/ruyi_mugen_test /root/.local/state/ruyi_mugen_test ++ export XDG_CACHE_HOME= ++ XDG_CACHE_HOME= ++ export XDG_DATA_HOME= ++ XDG_DATA_HOME= ++ export XDG_STATE_HOME= ++ XDG_STATE_HOME= ++ LOG_INFO 'End of the test.' ++ message='End of the test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of the test.' +Thu Mar 28 23:15:26 2024 - INFO - End of the test. ++ CASE_RESULT 0 ++ case_re=0 ++ test -z 2 ++ test 2 -gt 0 ++ LOG_ERROR 'failed to execute the case.' ++ message='failed to execute the case.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'failed to execute the case.' +Thu Mar 28 23:15:26 2024 - ERROR - failed to execute the case. ++ exit 2 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:15:26 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:15:26 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:15:26 2024 - INFO - Finish environment cleanup! diff --git a/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xthead_qemu/2024-03-28-23_13_19.log b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xthead_qemu/2024-03-28-23_13_19.log new file mode 100644 index 00000000..b68cd7c3 --- /dev/null +++ b/20240408/logs/fedora38-riscv64-sg2042/ruyi_test_xthead_qemu/2024-03-28-23_13_19.log @@ -0,0 +1,200 @@ ++ source ./common/common_lib.sh +++ source /root/ruyi-mugen/libs/locallibs/common_lib.sh ++++ python3 --version ++++ '[' 0 -eq 0 ']' ++++ source /root/ruyi-mugen/libs/locallibs/common_lib_python.sh ++ main +++ type -t post_test ++ '[' -n function ']' ++ trap post_test EXIT INT HUP TERM +++ type -t config_params ++ '[' -n '' ']' +++ type -t pre_test ++ '[' -n function ']' ++ pre_test ++ LOG_INFO 'Start environmental preparation.' ++ message='Start environmental preparation.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start environmental preparation.' +Thu Mar 28 23:13:19 2024 - INFO - Start environmental preparation. ++ install_ruyi ++ DNF_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/rpm_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:13:23 2024 - INFO - pkgs:(curl git tar bzip2 xz zstd unzip) is already installed ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ APT_INSTALL 'curl git tar bzip2 xz-utils zstd unzip' ++ pkgs='curl git tar bzip2 xz-utils zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/deb_manage.py install --pkgs 'curl git tar bzip2 xz-utils zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:13:24 2024 - INFO - unsupported package manager: apt-get ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ PACMAN_INSTALL 'curl git tar bzip2 xz zstd unzip' ++ pkgs='curl git tar bzip2 xz zstd unzip' ++ node=1 ++ '[' -z '' ']' ++ tmpfile= +++ python3 /root/ruyi-mugen/libs/locallibs/archpkg_manage.py install --pkgs 'curl git tar bzip2 xz zstd unzip' --node 1 --tempfile '' +Thu Mar 28 23:13:25 2024 - INFO - unsupported package manager: pacman ++ tmpfile2= ++ '[' -z '' ']' ++ tmpfile= ++ export_ruyi_link ++ export_release_ruyi_link ++ version=0.7.1 ++ arch=amd64 +++ uname -m ++ local larch=riscv64 ++ '[' riscv64 == riscv64 ']' ++ arch=riscv64 ++ '[' riscv64 == aarch64 ']' ++ ruyi_link=https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ ruyi_curl ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 ++ local trys=0 ++ true ++ '[' 0 -ge 20 ']' ++ '[' -f ruyi ']' ++ curl -L -o ruyi https://mirror.iscas.ac.cn/ruyisdk/ruyi/releases/0.7.1/ruyi.riscv64 + % Total % Received % Xferd Average Speed Time Time Time Current + Dload Upload Total Spent Left Speed + 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 84 16.8M 84 14.2M 0 0 18.8M 0 --:--:-- --:--:-- --:--:-- 18.8M 100 16.8M 100 16.8M 0 0 19.4M 0 --:--:-- --:--:-- --:--:-- 19.4M ++ '[' 0 = 0 ']' ++ break ++ chmod +x ruyi +++ realpath ruyi ++ ln -s /root/ruyi-mugen/testcases/cli-test/ruyi/ruyi /usr/bin/ruyi +ln: failed to create symbolic link '/usr/bin/ruyi': File exists ++ LOG_ERROR 'Install ruyi error' ++ message='Install ruyi error' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level error --message 'Install ruyi error' +Thu Mar 28 23:13:26 2024 - ERROR - Install ruyi error ++ LOG_INFO 'End of environmental preparation!' ++ message='End of environmental preparation!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'End of environmental preparation!' +Thu Mar 28 23:13:26 2024 - INFO - End of environmental preparation! +++ type -t run_test ++ '[' -n function ']' ++ run_test ++ LOG_INFO 'Start to run test.' ++ message='Start to run test.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Start to run test.' +Thu Mar 28 23:13:26 2024 - INFO - Start to run test. ++ mkdir qemu_test +mkdir: cannot create directory ‘qemu_test’: File exists ++ cd qemu_test ++ ruyi update +Traceback (most recent call last): + File "/root/.cache/ruyi/progcache/0.6.0/__main__.py", line 35, in + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/cli/__init__.py", line 283, in main + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/cli/__init__.py", line 26, in init_argparse + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/device/provision_cli.py", line 12, in + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/ruyipkg/atom.py", line 6, in + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/ruyipkg/repo.py", line 6, in + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/__init__.py", line 217, in + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/settings.py", line 57, in __init__ + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/settings.py", line 63, in _initialize_tls_certificate_locations + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/settings.py", line 192, in set_ssl_cert_locations +_pygit2.GitError: OpenSSL error: failed to load certificates: error:00000000:lib(0)::reason(0) +++ ruyi list +++ awk '/\* / {if (f==1) f=2} /./ {if (f==1) {print $0}} /\* toolchain\/gnu-plct-xthead/ {if (f==0) f=1}' +++ grep -e '^ -' +++ grep -v 'no binary for current host' +Traceback (most recent call last): + File "/root/.cache/ruyi/progcache/0.6.0/__main__.py", line 35, in + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/cli/__init__.py", line 283, in main + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/cli/__init__.py", line 26, in init_argparse + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/device/provision_cli.py", line 12, in + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/ruyipkg/atom.py", line 6, in + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/ruyi/ruyipkg/repo.py", line 6, in + File "", line 1176, in _find_and_load + File "", line 1147, in _find_and_load_unlocked + File "", line 690, in _load_unlocked + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/__init__.py", line 217, in + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/settings.py", line 57, in __init__ + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/settings.py", line 63, in _initialize_tls_certificate_locations + File "/root/.cache/ruyi/progcache/0.6.0/pygit2/settings.py", line 192, in set_ssl_cert_locations +_pygit2.GitError: OpenSSL error: failed to load certificates: error:00000000:lib(0)::reason(0) ++ local pe= ++ '[' -z ']' +++ uname -m ++ LOG_INFO 'No gnu-plct-xthead available for current host riscv64, skip' ++ message='No gnu-plct-xthead available for current host riscv64, skip' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'No gnu-plct-xthead available for current host riscv64, skip' +Thu Mar 28 23:13:31 2024 - INFO - No gnu-plct-xthead available for current host riscv64, skip ++ exit 0 ++ post_test ++ LOG_INFO 'start environment cleanup.' ++ message='start environment cleanup.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'start environment cleanup.' +Thu Mar 28 23:13:31 2024 - INFO - start environment cleanup. ++ remove_ruyi ++ PKG_REMOVE ++ node=1 ++ pkg_list= ++ mode=0 ++ [[ -z '' ]] ++ [[ -z '' ]] ++ LOG_WARN 'no thing to do.' ++ message='no thing to do.' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level warn --message 'no thing to do.' +Thu Mar 28 23:13:31 2024 - WARN - no thing to do. ++ return 0 ++ remove_ruyi_data +++ get_ruyi_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.cache/ +++ echo /root/.cache//ruyi +++ get_ruyi_data_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/share +++ echo /root/.local/share/ruyi +++ get_ruyi_state_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.local/state +++ echo /root/.local/state/ruyi +++ get_ruyi_config_dir +++ ruyibase= +++ '[' -z '' ']' +++ ruyibase=/root/.config +++ echo /root/.config/ruyi ++ rm -rf /root/.cache//ruyi /root/.local/share/ruyi /root/.local/state/ruyi /root/.config/ruyi ++ rm -f ruyi ++ rm -f /usr/bin/ruyi ++ export RUYI_DEBUG= ++ RUYI_DEBUG= ++ LOG_INFO 'Finish environment cleanup!' ++ message='Finish environment cleanup!' ++ python3 /root/ruyi-mugen/libs/locallibs/mugen_log.py --level info --message 'Finish environment cleanup!' +Thu Mar 28 23:13:31 2024 - INFO - Finish environment cleanup! -- Gitee