Files
acrn-hypervisor/misc/config_tools/configurator
Junjie Mao df68c7ad2e config_tools: support dynamic enum names in XML schema
The dynamic enum mechanism today only allows specifying the enum values
using XPATH. While this is sufficient from functionality point of view, it
may not provide the best experience as users have to understand the raw
data used internally. The typical way to present more informational labels
of enum values to users is enum names which cannot be supported by the
current XML schema to JSONSchema converter.

This patch allows the XML schema to specify dynamic enum names by adding an
`acrn:option-names` attribute to an element. The attribute is interpreted
as an XPATH which evaluates to a sequence of the same length of
`acrn-options`. The element at index i in that sequence is considered the
enum name of the enum value at index i of the results of `acrn:options`.

This mechanism is first applied to the `pcpu_id` element to indicate
whether a physical CPU is P-core or E-core.

Tracked-On: #8050
Signed-off-by: Junjie Mao <junjie.mao@intel.com>
2022-08-26 12:01:12 +08:00
..
2022-05-22 20:10:24 +08:00

ACRN Configurator

This version is based on Tauri, WIP.

Features

Support Platforms

  • Linux (.deb, AppImage)
  • Windows 7,8,10 (.exe, .msi)

Setting Up

1. Install System Dependencies

  1. Please follow this guide to install system dependencies.
  2. Download and install Nodejs.
  3. Please follow this guide to install yarn.

Linux

In Linux, make sure your already install git, python3(version>=3.6) and python3-venv library,

$ sudo apt install git python3 python3-venv
# check python3 version
$ python3 --version
Python 3.8.10

Windows

Chocolatey is a package manager tool for windows, you can use choco install xsltproc to install xsltproc package, which provide xmllint command.

Make sure your system have python which version>3.6, you can check it by following command line:

$ python --version
Python 3.8.10

If your system doesn't have git and python, you can install it by choco install git python3.

2. Clone Project And Install Project Dependencies.

Linux

git clone https://github.com/projectacrn/acrn-hypervisor
cd acrn-hypervisor/misc/config_tools/configurator
python3 -m pip install -r requirements.txt
yarn

Windows

Similar to Linux, in the Windows environment, you need replace the command line python3 with python.

3. How To Build

Linux

Run this command in the acrn-hypervisor directory.

make configurator

Windows

Run following command in the 'acrn-hypervisor' directory.

cd misc\config_tools
python scenario_config\schema_slicer.py
python scenario_config\jsonschema\converter.py
xmllint --xinclude schema\datachecks.xsd > schema\allchecks.xsd

python -m build
del configurator\packages\configurator\thirdLib\acrn_config_tools-3.0-py3-none-any.whl

cd configurator
python packages\configurator\thirdLib\manager.py install
yarn
yarn build

4. How To Run

Linux

Run this command in the acrn-hypervisor directory.

sudo apt install ./build/acrn-configurator_*.deb
acrn-configurator

Windows

You can find installer under the misc\config_tools\configurator\src-tauri\target\release\bundle\msi directory, the installer in the folder.