diff --git a/docs/bms/dev/ALL_META.TXT.json b/docs/bms/dev/ALL_META.TXT.json
new file mode 100644
index 00000000..6fee22b8
--- /dev/null
+++ b/docs/bms/dev/ALL_META.TXT.json
@@ -0,0 +1,92 @@
+[
+ {
+ "uri":"en-us_topic_0113605684.html",
+ "product_code":"bms",
+ "code":"1",
+ "des":"This document describes how to call the APIs of Bare Metal Server (BMS) to use the functions of the service. This chapter describes the concepts related to BMS to help yo",
+ "doc_type":"devg",
+ "kw":"Overview,Developer Guide",
+ "title":"Overview",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113607319.html",
+ "product_code":"bms",
+ "code":"2",
+ "des":"You need to learn how to call BMS APIs. For details about how to call REST APIs, see API Usage Guidelines.",
+ "doc_type":"devg",
+ "kw":"Notes,Developer Guide",
+ "title":"Notes",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113607320.html",
+ "product_code":"bms",
+ "code":"3",
+ "des":"Create a BMS with EVS disks.File injection is not supported.When creating a BMS, you need to perform operations such as querying the flavor, querying the AZ, and creating",
+ "doc_type":"devg",
+ "kw":"Creating a BMS,Developer Guide",
+ "title":"Creating a BMS",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113607321.html",
+ "product_code":"bms",
+ "code":"4",
+ "des":"If the existing disks of a BMS fail to meet service requirements, for example, due to insufficient disk space or poor disk performance, you can attach more available disk",
+ "doc_type":"devg",
+ "kw":"Attaching an EVS Disk to a BMS,Developer Guide",
+ "title":"Attaching an EVS Disk to a BMS",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113607322.html",
+ "product_code":"bms",
+ "code":"5",
+ "des":"A disk attached to a BMS can be detached.A disk mounted to /dev/sda functions as the system disk. You can only detach the system disk from a stopped BMS.Disks mounted to ",
+ "doc_type":"devg",
+ "kw":"Detaching an EVS Disk from a BMS,Developer Guide",
+ "title":"Detaching an EVS Disk from a BMS",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113607323.html",
+ "product_code":"bms",
+ "code":"6",
+ "des":"Call the required API to query the IP address of the BMS you have created.Pagination query is not supported.The following APIs are required:Querying IP addresses of BMSsQ",
+ "doc_type":"devg",
+ "kw":"Querying IP Addresses of BMSs,Developer Guide",
+ "title":"Querying IP Addresses of BMSs",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113983752.html",
+ "product_code":"bms",
+ "code":"7",
+ "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.",
+ "doc_type":"devg",
+ "kw":"Appendix",
+ "title":"Appendix",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0137081413.html",
+ "product_code":"bms",
+ "code":"8",
+ "des":"NormalReturned ValueDescription200 OKThe request has been successfully processed.201 CreatedThe request has been successfully processed and a resource has been created.20",
+ "doc_type":"devg",
+ "kw":"Status Codes,Appendix,Developer Guide",
+ "title":"Status Codes",
+ "githuburl":""
+ },
+ {
+ "uri":"en-us_topic_0113607325.html",
+ "product_code":"bms",
+ "code":"9",
+ "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.",
+ "doc_type":"devg",
+ "kw":"Change History,Developer Guide",
+ "title":"Change History",
+ "githuburl":""
+ }
+]
\ No newline at end of file
diff --git a/docs/bms/dev/CLASS.TXT.json b/docs/bms/dev/CLASS.TXT.json
new file mode 100644
index 00000000..3f0e538c
--- /dev/null
+++ b/docs/bms/dev/CLASS.TXT.json
@@ -0,0 +1,83 @@
+[
+ {
+ "desc":"This document describes how to call the APIs of Bare Metal Server (BMS) to use the functions of the service. This chapter describes the concepts related to BMS to help yo",
+ "product_code":"bms",
+ "title":"Overview",
+ "uri":"en-us_topic_0113605684.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"1"
+ },
+ {
+ "desc":"You need to learn how to call BMS APIs. For details about how to call REST APIs, see API Usage Guidelines.",
+ "product_code":"bms",
+ "title":"Notes",
+ "uri":"en-us_topic_0113607319.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"2"
+ },
+ {
+ "desc":"Create a BMS with EVS disks.File injection is not supported.When creating a BMS, you need to perform operations such as querying the flavor, querying the AZ, and creating",
+ "product_code":"bms",
+ "title":"Creating a BMS",
+ "uri":"en-us_topic_0113607320.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"3"
+ },
+ {
+ "desc":"If the existing disks of a BMS fail to meet service requirements, for example, due to insufficient disk space or poor disk performance, you can attach more available disk",
+ "product_code":"bms",
+ "title":"Attaching an EVS Disk to a BMS",
+ "uri":"en-us_topic_0113607321.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"4"
+ },
+ {
+ "desc":"A disk attached to a BMS can be detached.A disk mounted to /dev/sda functions as the system disk. You can only detach the system disk from a stopped BMS.Disks mounted to ",
+ "product_code":"bms",
+ "title":"Detaching an EVS Disk from a BMS",
+ "uri":"en-us_topic_0113607322.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"5"
+ },
+ {
+ "desc":"Call the required API to query the IP address of the BMS you have created.Pagination query is not supported.The following APIs are required:Querying IP addresses of BMSsQ",
+ "product_code":"bms",
+ "title":"Querying IP Addresses of BMSs",
+ "uri":"en-us_topic_0113607323.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"6"
+ },
+ {
+ "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.",
+ "product_code":"bms",
+ "title":"Appendix",
+ "uri":"en-us_topic_0113983752.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"7"
+ },
+ {
+ "desc":"NormalReturned ValueDescription200 OKThe request has been successfully processed.201 CreatedThe request has been successfully processed and a resource has been created.20",
+ "product_code":"bms",
+ "title":"Status Codes",
+ "uri":"en-us_topic_0137081413.html",
+ "doc_type":"devg",
+ "p_code":"7",
+ "code":"8"
+ },
+ {
+ "desc":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.",
+ "product_code":"bms",
+ "title":"Change History",
+ "uri":"en-us_topic_0113607325.html",
+ "doc_type":"devg",
+ "p_code":"",
+ "code":"9"
+ }
+]
\ No newline at end of file
diff --git a/docs/bms/dev/PARAMETERS.txt b/docs/bms/dev/PARAMETERS.txt
new file mode 100644
index 00000000..6da8d5f0
--- /dev/null
+++ b/docs/bms/dev/PARAMETERS.txt
@@ -0,0 +1,3 @@
+version=""
+language="en-us"
+type=""
\ No newline at end of file
diff --git a/docs/bms/dev/en-us_topic_0113605684.html b/docs/bms/dev/en-us_topic_0113605684.html
new file mode 100644
index 00000000..ea21db62
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113605684.html
@@ -0,0 +1,16 @@
+
+
+
Overview
+This document describes how to call the APIs of Bare Metal Server (BMS) to use the functions of the service. This chapter describes the concepts related to BMS to help you quickly understand the service.
+
BMS
A Bare Metal Server (BMS) is a physical server that is dedicated for you on the cloud. It provides the excellent computing performance and data security needed for core databases, key application systems, high-performance computing (HPC), and Big Data services. With the high scalability offered by cloud resources, you can apply for and use BMSs flexibly.
+
+
Basic Concepts
- Availability zone
An availability zone (AZ) is a physical location where power and networks are physically isolated within a region. Each AZ provides cost-effective and low-latency network connections that are unaffected by faults that may occur in other AZs. A region can contain multiple AZs, which are physically isolated but interconnected through internal networks. This ensures the independence of AZs and provides low-cost and low-latency network connections.
+ - Elastic Volume Service (EVS)
The EVS service offers scalable block storage for BMSs. With high reliability, high performance, and rich specifications, EVS disks can be used for distributed file systems, development and test environments, data warehouse applications, and high-performance computing (HPC) scenarios to meet diverse service requirements.
+ - Virtual Private Cloud (VPC)
A VPC is a logically isolated, configurable, and manageable virtual network. It helps improve the security of cloud resources and simplifies network deployment. You can create security groups and VPNs, configure IP address ranges, and specify bandwidth sizes in your VPC. With a VPC, you can easily manage and configure internal networks and change network configurations. You can also customize access rules to control BMS access within a security group and across different security groups to enhance BMS security.
+ - User-defined VLAN
You can use the 10GE Ethernet NICs that are not being used by the system to configure a user-defined VLAN. The QinQ technology is used to isolate networks and provide additional physical planes and bandwidths. You can create VLANs to isolate network traffic. User-defined VLAN NICs are in pairs. You can configure NIC bonding to achieve high availability. User-defined VLANs in different AZs cannot communicate with each other.
+ - IB network
An IB network features low latency and high bandwidth and is used in a number of High Performance Computing (HPC) projects. It uses the 100 Gbit/s Mellanox IB NIC, dedicated IB switch, and controller software UFM to ensure network communication and management, and uses the Partition Key to isolate IB networks of different tenants (similar to VLANs in an Ethernet).
+ - Image
An image is a template of the BMS running environment. It contains an OS and runtime environment, and some pre-installed applications. An image file is equivalent to a copy file that contains all data in the system disk.
+
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113607319.html b/docs/bms/dev/en-us_topic_0113607319.html
new file mode 100644
index 00000000..12ab1b44
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113607319.html
@@ -0,0 +1,7 @@
+
+
+Notes
+You need to learn how to call BMS APIs. For details about how to call REST APIs, see API Usage Guidelines.
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113607320.html b/docs/bms/dev/en-us_topic_0113607320.html
new file mode 100644
index 00000000..1fafdec3
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113607320.html
@@ -0,0 +1,395 @@
+
+
+Creating a BMS
+Scenario
Create a BMS with EVS disks.
+
+
Restrictions and Limitations
File injection is not supported.
+
+
Involved APIs
When creating a BMS, you need to perform operations such as querying the flavor, querying the AZ, and creating EVS disks. The following APIs are required:
+
- Querying AZs
- Querying BMS flavors
- Querying images
- Creating an EVS disk
- Querying VPCs
- Querying a security group
- Querying subnets
- Creating a BMS
+
+
Procedure
- Query the AZ where the BMS resides.
- API information
URI format: GET /v2/{project_id}/os-availability-zone
+For details, see section "Querying AZs" in the Elastic Cloud Server API Reference.
+ - Example request
GET https://{ECS Endpoint}/v2/9c53a566cb3443ab910cf0daebca90c4/os-availability-zone
+ - Example response
{
+ "availabilityZoneInfo": [
+ {
+ "zoneState": {
+ "available": true
+ },
+ "hosts": null,
+ "zoneName": "az-dc-1"
+ },
+ {
+ "zoneState": {
+ "available": true
+ },
+ "hosts": null,
+ "zoneName": "az-dc-2"
+ }
+ ]
+}
+
+ - Query the BMS flavor.
- API information
URI format: GET /v2/{project_id}/flavors/detail
+For details, see section "Querying BMS Flavors (Native OpenStack API)" in the Bare Metal Server API Reference.
+
BMS flavors have prefix physical.
+
+ - Example request
GET https://{ECS Endpoint}/v2/384627f84f384e9eb4463492be39a950/flavors/detail
+ - Example response
{
+ "flavors": [
+ "name": "physical.o2.medium",
+ "links": [
+ {
+ "href": "https://compute.region.eu-de.otc-tsi.de/v2/c685484a8cc2416b97260938705deb65/flavors/physical.o2.medium",
+ "rel": "self"
+ },
+ {
+ "href": "https://compute.region.eu-de.otc-tsi.de/c685484a8cc2416b97260938705deb65/flavors/physical.o2.medium",
+ "rel": "bookmark"
+ }
+ ],
+ "ram": 321725,
+ "OS-FLV-DISABLED:disabled": false,
+ "vcpus": 56,
+ "swap": "",
+ "os-flavor-access:is_public": true,
+ "rxtx_factor": 1,
+ "OS-FLV-EXT-DATA:ephemeral": 0,
+ "disk": 3725,
+ "id": "physical.o2.medium"
+ ]
+}
+
+ - Query images.
- API information
URI format: GET /v2/images
+For details, see section "Querying Images (Native OpenStack API)" in the Image Management API Reference.
+ - Example request
GET https://{IMS Endpoint}/v2/images
+ - Example response
{
+ "images": [
+ {
+ "status": "queued",
+ "name": "test",
+ "tags": [
+ "test",
+ "image"
+ ],
+ "container_format": "bare",
+ "created_at": "2014-12-16T01:22:05Z",
+ "disk_format": "qcow2",
+ "updated_at": "2014-12-16T01:22:05Z",
+ "visibility": "private",
+ "self": "/v2/images/4ca46bf1-5c61-48ff-b4f3-0ad4e5e3ba90",
+ "min_disk": 1,
+ "protected": false,
+ "id": "4ca46bf1-5c61-48ff-b4f3-0ad4e5e3ba90",
+ "file": "/v2/images/4ca46bf1-5c61-48ff-b4f3-0ad4e5e3ba90/file",
+ "owner": "aed2c611711548a4a9c16fb8fe166af4",
+ "min_ram": 1024,
+ "schema": "/v2/schemas/image"
+ },
+ {
+ "status": "active",
+ "name": "cirros",
+ "tags": [
+ "new"
+ ],
+ "container_format": "bare",
+ "created_at": "2014-12-11T03:53:43Z",
+ "size": 13147648,
+ "disk_format": "qcow2",
+ "updated_at": "2014-12-15T20:02:12Z",
+ "visibility": "private",
+ "self": "/v2/images/5155a22a-834e-4ffe-a95d-ed9665a8ed76",
+ "min_disk": 0,
+ "protected": false,
+ "id": "5155a22a-834e-4ffe-a95d-ed9665a8ed76",
+ "file": "/v2/images/5155a22a-834e-4ffe-a95d-ed9665a8ed76/file",
+ "checksum": "d972013792949d0d3ba628fbe8685bce",
+ "owner": "aed2c611711548a4a9c16fb8fe166af4",
+ "min_ram": 0,
+ "schema": "/v2/schemas/image"
+ }
+ ],
+ "schema": "/v2/schemas/images",
+ "first": "/v2/images"
+}
+
+ - Create an EVS disk.
- API information
URI format: POST /v2/{project_id}/volumes
+For details, see section "Creating an EVS Disk" in the Elastic Volume Service API Reference.
+ - Example request
POST https://{EVS Endpoint}/v2/9c53a566cb3443ab910cf0daebca90c4/volumes
+{
+ "volume": {
+ "name": "openapi_vol01",
+ "imageRef": "027cf713-45a6-45f0-ac1b-0ccc57ac12e2",
+ "availability_zone": "az-dc-1",
+ "description": "create for api test",
+ "volume_type": "SATA",
+ "metadata": {
+ "volume_owner": "openapi"
+ },
+ "consistencygroup_id": null,
+ "OS-SCH-HNT:scheduler_hints": {
+ "dedicated_storage_id": "eddc1a3e-4145-45be-98d7-bf6f65af9767"
+ },
+ "source_volid": null,
+ "snapshot_id": null,
+ "shareable": "false",
+ "multiattach": false,
+ "source_replica": null,
+ "size": 40
+ }
+}
+ - Example response
{
+ "volume": {
+ "attachments": [ ],
+ "availability_zone": "az-dc-1",
+ "bootable": "false",
+ "consistencygroup_id": null,
+ "created_at": "2016-05-25T02:38:40.392463",
+ "description": "create for api test",
+ "encrypted": false,
+ "id": "8dd7c486-8e9f-49fe-bceb-26aa7e312b66",
+ "links": [
+ {
+ "href": "https://volume.localdomain.com:8776/v2/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66",
+ "rel": "self"
+ },
+ {
+ "href": "https://volume.localdomain.com:8776/5dd0b0056f3d47b6ab4121667d35621a/volumes/8dd7c486-8e9f-49fe-bceb-26aa7e312b66",
+ "rel": "bookmark"
+ }
+ ],
+ "metadata": {
+ "volume_owner": "openapi"
+ },
+ "name": "openapi_vol01",
+ "replication_status": "disabled",
+ "shareable": false,
+ "multiattach": false,
+ "size": 40,
+ "snapshot_id": null,
+ "source_volid": null,
+ "status": "creating",
+ "updated_at": null,
+ "user_id": "39f6696ae23740708d0f358a253c2637",
+ "volume_type": "SATA"
+ }
+}
+or
+{
+ "error": {
+ "message": "XXXX",
+ "code": "XXX"
+ }
+}
+In the preceding example, error indicates a general error, for example, badRequest or itemNotFound. An example is provided as follows:
+{
+ "badRequest": {
+ "message": "XXXX",
+ "code": "XXX"
+ }
+}
+
+ - Query VPCs.
- API information
URI format: GET /v1/{project_id}/vpcs
+For details, see section "Querying VPCs" in the Virtual Private Cloud API Reference.
+ - Example request
GET https://{VPC Endpoint}/v1/000efdc5f9064584b718b181df137bd7/vpcs
+ - Example response
{
+ "vpcs": [
+ {
+ "id": "13551d6b-755d-4757-b956-536f674975c0",
+ "name": "default",
+ "cidr": "172.16.0.0/16",
+ "status": "OK",
+ "routes": null
+ },
+ {
+ "id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85",
+ "name": "222",
+ "cidr": "192.168.0.0/16",
+ "status": "OK",
+ "routes": null
+ },
+ {
+ "id": "99d9d709-8478-4b46-9f3f-2206b1023fd3",
+ "name": "vpc",
+ "cidr": "192.168.0.0/16",
+ "status": "OK",
+ "routes": null
+ }
+ ]
+}
+
+ - Query a security group.
- API information
URI format: GET /v2.0/security-groups
+For details, see section "Querying Security Groups" in the Virtual Private Cloud API Reference.
+ - Example request
GET https://{VPC Endpoint}/v2.0/security-groups
+ - Example response
{
+ "security_groups": [
+ {
+ "tenant_id": "84b25ac10ed642cca484aa55c098e3aa",
+ "name": "default",
+ "description": "Default security group",
+ "security_group_rules": [
+ {
+ "remote_group_id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967",
+ "direction": "ingress",
+ "remote_ip_prefix": null,
+ "protocol": null,
+ "ethertype": "IPv6",
+ "tenant_id": "84b25ac10ed642cca484aa55c098e3aa",
+ "port_range_max": null,
+ "port_range_min": null,
+ "id": "07adc044-3f21-4eeb-bd57-5e5eb6024b7f",
+ "description": null,
+ "security_group_id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967"
+ },
+ {
+ "remote_group_id": null,
+ "direction": "egress",
+ "remote_ip_prefix": null,
+ "protocol": null,
+ "ethertype": "IPv6",
+ "tenant_id": "84b25ac10ed642cca484aa55c098e3aa",
+ "port_range_max": null,
+ "port_range_min": null,
+ "id": "47e05c14-1aa2-4355-aaf8-b57e18f98c9a",
+ "description": null,
+ "security_group_id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967"
+ },
+ {
+ "remote_group_id": null,
+ "direction": "egress",
+ "remote_ip_prefix": null,
+ "protocol": null,
+ "ethertype": "IPv4",
+ "tenant_id": "84b25ac10ed642cca484aa55c098e3aa",
+ "port_range_max": null,
+ "port_range_min": null,
+ "id": "8a8a238b-fdb1-4321-b667-26205c7f37d1",
+ "description": null,
+ "security_group_id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967"
+ },
+ {
+ "remote_group_id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967",
+ "direction": "ingress",
+ "remote_ip_prefix": null,
+ "protocol": null,
+ "ethertype": "IPv4",
+ "tenant_id": "84b25ac10ed642cca484aa55c098e3aa",
+ "port_range_max": null,
+ "port_range_min": null,
+ "id": "b5874440-84a0-4382-8e37-3f012b90b71e",
+ "description": null,
+ "security_group_id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967"
+ }
+ ],
+ "id": "1d8b19c7-7c56-48f7-a99b-4b40eb390967"
+ }
+ ]
+}
+
+ - Query subnets.
- API information
URI format: GET /v1/{project_id}/subnets
+For details, see section "Querying Subnets" in the Virtual Private Cloud API Reference.
+ - Example request
GET https://{VPC Endpoint}/v1/000efdc5f9064584b718b181df137bd7/subnets
+ - Example response
{
+ "subnets": [
+ {
+ "id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d",
+ "name": "subnet",
+ "cidr": "192.168.20.0/24",
+ "dnsList": [
+ "114.114.114.114",
+ "114.114.115.115"
+ ],
+ "status": "ACTIVE",
+ "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85",
+ "gateway_ip": "192.168.20.1",
+ "dhcp_enable": true,
+ "primary_dns": "114.114.114.114",
+ "secondary_dns": "114.114.115.115",
+ "availability_zone": "az-dc-1" //Assume that the AZ name is az-dc-1.
+ "neutron_network_id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d",
+ "neutron_subnet_id": "213cb9d-3122-2ac1-1a29-91ffc1231a12"
+ },
+ {
+ "id": "531dec0f-3116-411b-a21b-e612e42349fd",
+ "name": "Subnet1",
+ "cidr": "192.168.1.0/24",
+ "dnsList": [
+ "114.114.114.114",
+ "114.114.115.115"
+ ],
+ "status": "ACTIVE",
+ "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85",
+ "gateway_ip": "192.168.1.1",
+ "dhcp_enable": true,
+ "primary_dns": "114.114.114.114",
+ "secondary_dns": "114.114.115.115",
+ "availability_zone": "az-dc-1" //Assume that the AZ name is az-dc-1.
+ "neutron_network_id": "531dec0f-3116-411b-a21b-e612e42349fd",
+ "neutron_subnet_id": "1aac193-a2ad-f153-d122-12d64c2c1d78"
+ }
+ ]
+}
+
+ - Create a BMS.
- Prerequisites
Mandatory parameters: name, imageRef, flavorRef, networks, and availability_zone
+Optional parameters: root_volume, data_volumes, and security_groups
+ - API information
URI format: POST /v2.1/{project_id}/servers
+For details, see section "Creating a BMS (Native OpenStack API)" in the Bare Metal Server API Reference.
+ - Example request
POST /v2.1/000efdc5f9064584b718b181df137bd7/servers
+{
+ "server": {
+ "imageRef": "1a6635d8-afea-4f2b-abb6-27a202bad319",
+ "flavorRef": "physical.o2.medium",
+ "data_volumes": [
+ {
+ "volumetype": "SATA",
+ "size": 40,
+ "shareable": false,
+ "extendparam": {
+ "resourceSpecCode": "",
+ "resourceType": ""
+ }
+ }
+ ],
+ "name": "bms_name01",
+ "availability_zone": "az-dc-1",
+ "networks": [
+ {
+ "uuid": "8470310b-bfa2-4edf-8f64-d15196b2b2c9"
+ }
+ ]
+ }
+}
+ - Example response
{
+ "server": {
+ "security_groups": [
+ {
+ "name": "default"
+ }
+ ],
+ "OS-DCF:diskConfig": "MANUAL",
+ "os-extended-volumes:volumes_attached": [
+ {
+ "id": "dc5b02ea-bece-4ec8-b194-f39db96406c8",
+ "delete_on_termination": false
+ }
+ ],
+ "links": [
+ {
+ "rel": "self",
+ "href": "https://ecs-api.eu-de.otc-tsi.de/v2/c685484a8cc2416b97260938705deb65/servers/9ab74d89-61e7-4259-8546-465fdebe4944"
+ },
+ {
+ "rel": "bookmark",
+ "href": "https://ecs-api.eu-de.otc-tsi.de/c685484a8cc2416b97260938705deb65/servers/9ab74d89-61e7-4259-8546-465fdebe4944"
+ }
+ ],
+ "id": "9ab74d89-61e7-4259-8546-465fdebe4944",
+ "adminPass": "RjdD3h8U2DBe"
+ }
+}
+
+
+
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113607321.html b/docs/bms/dev/en-us_topic_0113607321.html
new file mode 100644
index 00000000..f47f5729
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113607321.html
@@ -0,0 +1,103 @@
+
+
+Attaching an EVS Disk to a BMS
+Scenario
If the existing disks of a BMS fail to meet service requirements, for example, due to insufficient disk space or poor disk performance, you can attach more available disks to the BMS, or call the EVS disk creation API to create disks and attach them to the BMS. To attach an EVS disk to a BMS, you need to call the required API.
+
+
Restrictions and Limitations
- EVS disks cannot be attached to a BMS in a batch.
- A maximum of EVS disks can be attached to a BMS.
- A bootable disk cannot be attached to a BMS.
- A disk cannot be attached to a BMS in the SUSPENDED or PAUSED state, which is specified using the OS-EXT-STS:vm_state parameter.
- Only a shared disk or a disk in the available state can be attached to a BMS.
- Only EVS disks whose device type is SCSI can be attached to a BMS.
+
+
Involved APIs
The following APIs are required:
+
- Querying EVS disks
- Attaching an EVS disk
+
+
Procedure
- Query EVS disks.
- API information
URI format: GET /v2/{project_id}/volumes
+For details, see section "Querying EVS Disks" in the Elastic Volume Service API Reference.
+ - Example request
GET https://{EVS Endpoint}/v2/000efdc5f9064584b718b181df137bd7/volumes
+ - Example response
{
+ "volumes": [
+ {
+ "id": "6b604cef-9bd8-4f5a-ae56-45839e6e1f0a",
+ "links": [
+ {
+ "href": "https://volume.localdomain.com:8776/v2/dd14c6ac581f40059e27f5320b60bf2f/volumes/6b604cef-9bd8-4f5a-ae56-45839e6e1f0a",
+ "rel": "self"
+ },
+ {
+ "href": "https://volume.localdomain.com:8776/dd14c6ac581f40059e27f5320b60bf2f/volumes/6b604cef-9bd8-4f5a-ae56-45839e6e1f0a",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "zjb_u25_test"
+ },
+ {
+ "id": "2bce4552-9a7d-48fa-8484-abbbf64b206e",
+ "links": [
+ {
+ "href": "https://volume.localdomain.com:8776/v2/dd14c6ac581f40059e27f5320b60bf2f/volumes/2bce4552-9a7d-48fa-8484-abbbf64b206e",
+ "rel": "self"
+ },
+ {
+ "href": "https://volume.localdomain.com:8776/dd14c6ac581f40059e27f5320b60bf2f/volumes/2bce4552-9a7d-48fa-8484-abbbf64b206e",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "zjb_u25_test"
+ },
+ {
+ "id": "3f1b98ec-a8b5-4e92-a727-88def62d5ad3",
+ "links": [
+ {
+ "href": "https://volume.localdomain.com:8776/v2/dd14c6ac581f40059e27f5320b60bf2f/volumes/3f1b98ec-a8b5-4e92-a727-88def62d5ad3",
+ "rel": "self"
+ },
+ {
+ "href": "https://volume.localdomain.com:8776/dd14c6ac581f40059e27f5320b60bf2f/volumes/3f1b98ec-a8b5-4e92-a727-88def62d5ad3",
+ "rel": "bookmark"
+ }
+ ],
+ "name": "zjb_u25_test"
+ }
+ ],
+ "volumes_links": [
+ {
+ "href": "https://volume.localdomain.com:8776/v2/dd14c6ac581f40059e27f5320b60bf2f/volumes?limit=3&marker=3f1b98ec-a8b5-4e92-a727-88def62d5ad3",
+ "rel": "next"
+ }
+ ]
+}
+or
+{
+ "error": {
+ "message": "XXXX",
+ "code": "XXX"
+ }
+}
+In the preceding example, error indicates a general error, for example, badRequest or itemNotFound. An example is provided as follows:
+{
+ "badRequest": {
+ "message": "XXXX",
+ "code": "XXX"
+ }
+}
+
+ - Attach an EVS disk to a BMS.
- API information
URI format: POST /v2.1/{project_id}/servers/{server_id}/os-volume_attachments
+For details, see section "Attaching an EVS Disk to a BMS (Native OpenStack API)" in the Bare Metal Server API Reference.
+ - Example request
POST https://{ECS Endpoint}/v2.1/000efdc5f9064584b718b181df137bd7/servers/9ab74d89-61e7-4259-8546-465fdebe4944/os-volume_attachments
+{
+ "volumeAttachment": {
+ "volumeId": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
+ "device": "/dev/sdb"
+ }
+}
+ - Example response
{
+ "volumeAttachment": {
+ "id": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
+ "volumeId": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
+ "serverId": "9ab74d89-61e7-4259-8546-465fdebe4944",
+ "device": "/dev/vdb"
+ }
+}
+
+
+
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113607322.html b/docs/bms/dev/en-us_topic_0113607322.html
new file mode 100644
index 00000000..2cc257ff
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113607322.html
@@ -0,0 +1,33 @@
+
+
+Detaching an EVS Disk from a BMS
+Scenario
A disk attached to a BMS can be detached.
+
- A disk mounted to /dev/sda functions as the system disk. You can only detach the system disk from a stopped BMS.
- Disks mounted to a mount point other than /dev/sda function as data disks and can be detached from a running or stopped BMS.
+
+
Restrictions and Limitations
If a BMS is stopped, disks can be detached from it without any limitation on the OS. If a BMS is running, the constraints are as follows:
+
- Before detaching an EVS disk from a Linux BMS, log in to the BMS, run the unmount command to disassociate the disk to be detached from the file system, and ensure that no program is reading data from or writing data to the disk. Otherwise, the disk will fail to be detached.
- Before detaching an EVS disk from a Windows BMS, ensure that no program is reading data from or writing data to the disk. Otherwise, data will be lost.
+
+
Involved APIs
The following APIs are required:
+
- Querying EVS disks attached to a BMS
- Detaching an EVS disk from a BMS
+
+
Procedure
- Query EVS disks attached to a BMS.
- API information
URI format: GET /v2/{project_id}/servers/{server_id}/os-volume_attachments
+For details, see section "Querying Information About the Disks Attached to a BMS (Native OpenStack API)" in the Bare Metal Server API Reference.
+ - Example request
GET https://{ECS Endpoint}/v2/000efdc5f9064584b718b181df137bd7servers/9ab74d89-61e7-4259-8546-465fdebe4944/os-volume_attachments
+ - Example response
{
+ "volumeAttachment": {
+ "device": "/dev/vdb",
+ "serverId": "9ab74d89-61e7-4259-8546-465fdebe4944",
+ "id": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6",
+ "volumeId": "b53f23bd-ee8f-49ec-9420-d1acfeaf91d6"
+ }
+}
+
+ - Detach an EVS disk from a BMS.
- API information
URI format: DELETE /v2.1/{project_id}/servers/{server_id}/os-volume_attachments/{volume_id}
+For details, see section "Detaching an EVS Disk from a BMS (Native OpenStack API)" in the Bare Metal Server API Reference.
+ - Example request
DELETE https://{ECS Endpoint}/v2.1/000efdc5f9064584b718b181df137bd7/servers/9ab74d89-61e7-4259-8546-465fdebe4944/os-volume_attachments/b53f23bd-ee8f-49ec-9420-d1acfeaf91d6
+ - Example response
None
+
+
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113607323.html b/docs/bms/dev/en-us_topic_0113607323.html
new file mode 100644
index 00000000..9278da65
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113607323.html
@@ -0,0 +1,29 @@
+
+
+Querying IP Addresses of BMSs
+Scenario
Call the required API to query the IP address of the BMS you have created.
+
+
Restrictions and Limitations
Pagination query is not supported.
+
+
Involved APIs
The following APIs are required:
+
Querying IP addresses of BMSs
+
+
Procedure
- Query IP addresses of BMSs.
- API information
URI format: GET /v2/{project_id}/servers/{server_id}/ips
+For details, see section "Querying IP Addresses of BMSs (Native OpenStack API)" in the Bare Metal Server API Reference.
+ - Example request
GET https://{ECS Endpoint}/v2/000efdc5f9064584b718b181df137bd7/servers/5850a7e7-88dd-4d99-8439-347de8cc0dd7/ips
+ - Example response
{
+ "addresses": {
+ "ddd56db4-e084-42d1-b0ff-fba1ed82abd0": [
+ {
+ "version": 4,
+ "addr": "192.168.215.62"
+ }
+ ]
+ }
+}
+
+
+
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113607325.html b/docs/bms/dev/en-us_topic_0113607325.html
new file mode 100644
index 00000000..76f3d9f6
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113607325.html
@@ -0,0 +1,32 @@
+
+
+Change History
+
+
Released On
+ |
+Description
+ |
+
+
+2021-10-30
+ |
+Modified the following content:
+Optimized the descriptions of error codes.
+ |
+
+2019-05-30
+ |
+Modified the following content:
+Optimized example requests and responses.
+ |
+
+2018-11-08
+ |
+This issue is the first official release.
+ |
+
+
+
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0113983752.html b/docs/bms/dev/en-us_topic_0113983752.html
new file mode 100644
index 00000000..3f9d8362
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0113983752.html
@@ -0,0 +1,11 @@
+
+
+Appendix
+
+
+
diff --git a/docs/bms/dev/en-us_topic_0137081413.html b/docs/bms/dev/en-us_topic_0137081413.html
new file mode 100644
index 00000000..c063a2e3
--- /dev/null
+++ b/docs/bms/dev/en-us_topic_0137081413.html
@@ -0,0 +1,121 @@
+
+
+Status Codes
+- Normal
+
Returned Value
+ |
+Description
+ |
+
+
+200 OK
+ |
+The request has been successfully processed.
+ |
+
+201 Created
+ |
+The request has been successfully processed and a resource has been created.
+ |
+
+202 Accepted
+ |
+The request has been accepted but may not be processed immediately.
+ |
+
+204 No Content
+ |
+The request has been successfully processed, but there is no need to send any data back.
+ |
+
+
+
+
+ - Abnormal
+
Returned Value
+ |
+Description
+ |
+
+
+400 Bad Request
+ |
+The request failed to be processed due to bad syntax.
+ |
+
+401 Unauthorized
+ |
+A username and a password are required to access a page.
+ |
+
+403 Forbidden
+ |
+The requested page cannot be accessed.
+ |
+
+404 Not Found
+ |
+The requested page cannot be found.
+ |
+
+405 Method Not Allowed
+ |
+A method in the request is not allowed.
+ |
+
+406 Not Acceptable
+ |
+The response cannot be accepted by the client.
+ |
+
+407 Proxy Authentication Required
+ |
+The client must be authorised by the proxy before the request can proceed.
+ |
+
+408 Request Timeout
+ |
+The request timed out.
+ |
+
+409 Conflict
+ |
+Failed to complete the request due to a conflict.
+ |
+
+500 Internal Server Error
+ |
+Failed to complete the request due to a system error.
+ |
+
+501 Not Implemented
+ |
+Failed to complete the request because the server does not support all that is needed for the request to be completed.
+ |
+
+502 Bad Gateway
+ |
+Failed to complete the request because the server has received an invalid response from an upstream server.
+ |
+
+503 Service Unavailable
+ |
+Failed to complete the request because the server is unavailable.
+ |
+
+504 Gateway Timeout
+ |
+The server has waited too long for a response from an upstream server.
+ |
+
+
+
+
+
+
+
+
diff --git a/docs/bms/dev/public_sys-resources/ExpandCollapse.js b/docs/bms/dev/public_sys-resources/ExpandCollapse.js
new file mode 100644
index 00000000..116ddaab
--- /dev/null
+++ b/docs/bms/dev/public_sys-resources/ExpandCollapse.js
@@ -0,0 +1 @@
+var expandClassName="dropdownexpand";var collapseClassName="dropdowncollapse";var collapseTableClassName="dropdowncollapsetable";function ExpandorCollapseNode(a){a=a.parentNode;if(a.className==expandClassName){a.className=collapseClassName}else{a.className=expandClassName}}function ExpandorCollapseTableNode(a){a=a.parentNode;if(a.className==expandClassName){a.className=collapseTableClassName}else{a.className=expandClassName}}function ExpandorCollapseAllNodes(g,h,c){var a=g.getAttribute("title");var b=g.parentNode;if(a=="collapse"){g.setAttribute("title","expand");g.className="dropdownAllButtonexpand";g.innerHTML=h}else{g.setAttribute("title","collapse");g.className="dropdownAllButtoncollapse";g.innerHTML=c}var f=b.getElementsByTagName("*");for(var d=0;d-1){ExpandForHref(a.substring(a.lastIndexOf("#")+1))}}catch(c){}};
\ No newline at end of file
diff --git a/docs/bms/dev/public_sys-resources/caution_3.0-en-us.png b/docs/bms/dev/public_sys-resources/caution_3.0-en-us.png
new file mode 100644
index 00000000..60f60762
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/caution_3.0-en-us.png differ
diff --git a/docs/bms/dev/public_sys-resources/commonltr.css b/docs/bms/dev/public_sys-resources/commonltr.css
new file mode 100644
index 00000000..c5480b0a
--- /dev/null
+++ b/docs/bms/dev/public_sys-resources/commonltr.css
@@ -0,0 +1 @@
+body{font-size:10pt;font-family:Arial;margin:1.5em;border-top:2pt;padding-top:1em;padding-bottom:2em}.msgph{font-family:Courier New}.rowlinecopyright{color:red;margin-top:10pt}.unresolved{background-color:skyblue}.noTemplate{background-color:yellow}.base{background-color:#fff}.nested0{margin-top:1em}.p{margin-top:.6em;margin-bottom:.6em}p{margin-top:.5em;margin-bottom:.5em}.note p{margin-top:.5em;margin-bottom:.5em}.tip p{margin-top:.5em;margin-bottom:.5em}.danger p{margin-top:.5em;margin-bottom:.5em}.notice p{margin-top:.5em;margin-bottom:.5em}.warning p{margin-top:.5em;margin-bottom:.5em}.caution p{margin-top:.5em;margin-bottom:.5em}.attention p{margin-top:.5em;margin-bottom:.5em}table p{margin-top:.2em;margin-bottom:.2em}table .p{margin-top:.4em;margin-bottom:.2em}.figcap{font-size:10pt}img{margin-top:.3em}.figdesc{font-style:normal}.figborder{border-style:solid;padding-left:3px;border-width:2px;padding-right:3px;margin-top:1em;border-color:Silver}.figsides{border-left:2px solid;padding-left:3px;border-right:2px solid;padding-right:3px;margin-top:1em;border-color:Silver}.figtop{border-top:2px solid;margin-top:1em;border-color:Silver}.figbottom{border-bottom:2px solid;border-color:Silver}.figtopbot{border-top:2px solid;border-bottom:2px solid;margin-top:1em;border-color:Silver}.fignone{font-size:10pt;margin-top:8pt;margin-bottom:8pt}.familylinks{margin-top:1.5em;margin-bottom:1em}.ullinks{list-style-type:none}.linklist{margin-bottom:1em}.linklistwithchild{margin-left:1.5em;margin-bottom:1em}.sublinklist{margin-left:1.5em;margin-bottom:1em}.relconcepts{margin-top:.6em;margin-bottom:.6em}.reltasks{margin-top:.6em;margin-bottom:.6em}.relref{margin-top:.6em;margin-bottom:.6em}.relinfo{margin-top:.6em;margin-bottom:.6em}.breadcrumb{font-size:smaller;margin-bottom:.6em}.prereq{margin-left:20px}.parentlink{margin-top:.6em;margin-bottom:.6em}.nextlink{margin-top:.6em;margin-bottom:.6em}.previouslink{margin-top:.6em;margin-bottom:.6em}.topictitle1{margin-top:0;margin-bottom:1em;font-size:14pt;color:#007af4}.topictitle2{margin-top:1pc;margin-bottom:.45em;font-size:1.17em;color:#007af4}.topictitle3{margin-top:1pc;margin-bottom:.17em;font-size:1.17em;font-weight:bold;color:#007af4}.topictitle4{margin-top:.83em;font-size:1.17em;font-weight:bold}.topictitle5{font-size:1.17em;font-weight:bold}.topictitle6{font-size:1.17em;font-style:italic}.sectiontitle{margin-top:1em;margin-bottom:1em;color:black;font-size:10.5pt;font-weight:bold;color:#007af4;overflow:auto}.section{margin-top:1em;margin-bottom:1em}.example{margin-top:1em;margin-bottom:1em}.sectiontitle2contents:link{color:#007af4}.sectiontitle2contents:visited{color:#800080}.note{margin-top:1em;margin-bottom:1em;background-color:#ffc}.notetitle{font-weight:bold}.notelisttitle{font-weight:bold}.tip{margin-top:1em;margin-bottom:1em;background-color:#ffc}.tiptitle{font-weight:bold}.fastpath{margin-top:1em;margin-bottom:1em;background-color:#ffc}.fastpathtitle{font-weight:bold}.important{margin-top:1em;margin-bottom:1em;background-color:#ffc}.importanttitle{font-weight:bold}.remember{margin-top:1em;margin-bottom:1em;background-color:#ffc}.remembertitle{font-weight:bold}.restriction{margin-top:1em;margin-bottom:1em;background-color:#ffc}.restrictiontitle{font-weight:bold}.attention{margin-top:1em;margin-bottom:1em;background-color:#ffc}.attentiontitle{font-weight:bold}.dangertitle{font-weight:bold}.danger{margin-top:1em;margin-bottom:1em;background-color:#ffc}.noticetitle{font-weight:bold}.notice{margin-top:1em;margin-bottom:1em;background-color:#ffc}.warningtitle{font-weight:bold}.warning{margin-top:1em;margin-bottom:1em;background-color:#ffc}.cautiontitle{font-weight:bold}.caution{margin-top:1em;margin-bottom:1em;background-color:#ffc}ul.simple{list-style-type:none}li ul{margin-top:.6em}li{margin-top:.6em;margin-bottom:.6em}.note li{margin-top:.2em;margin-bottom:.2em}.tip li{margin-top:.2em;margin-bottom:.2em}.danger li{margin-top:.2em;margin-bottom:.2em}.warning li{margin-top:.2em;margin-bottom:.2em}.notice li{margin-top:.2em;margin-bottom:.2em}.caution li{margin-top:.2em;margin-bottom:.2em}.attention li{margin-top:.2em;margin-bottom:.2em}table li{margin-top:.2em;margin-bottom:.2em}ol{margin-top:1em;margin-bottom:1em;margin-left:2.4em;padding-left:0}ul{margin-top:1em;margin-bottom:1em;margin-left:2.0em;padding-left:0}ol ul{list-style:disc}ul ul{list-style:square}ol ul ul{list-style:square}ol ul{list-style-type:disc}table ol{margin-top:.4em;margin-bottom:.4em;list-style:decimal}table ul{margin-top:.4em;margin-bottom:.4em;list-style:disc}table ul ul{margin-top:.4em;margin-bottom:.4em;list-style:square}table ol ol{margin-top:.4em;margin-bottom:.4em;list-style:lower-alpha}table ol ul{margin-top:.4em;margin-bottom:.4em;list-style:disc}table ul ol{margin-top:.4em;margin-bottom:.4em;list-style:decimal}.substepthirdol{list-style-type:lower-roman}.firstcol{font-weight:bold}th{background-color:#cfcfcf}table{margin-top:8pt;margin-bottom:12pt;width:100%}table caption{margin-top:8pt;text-align:left}.bold{font-weight:bold}.boldItalic{font-weight:bold;font-style:italic}.italic{font-style:italic}.underlined{text-decoration:underline}.var{font-style:italic}.shortcut{text-decoration:underline}.dlterm{font-weight:bold}dd{margin-top:.5em;margin-bottom:.5em}.dltermexpand{font-weight:bold;margin-top:1em}*[compact="yes"]>li{margin-top:0}*[compact="no"]>li{margin-top:.53em}.liexpand{margin-top:1em;margin-bottom:1em}.sliexpand{margin-top:1em;margin-bottom:1em}.dlexpand{margin-top:1em;margin-bottom:1em}.ddexpand{margin-top:1em;margin-bottom:1em}.stepexpand{margin-top:.3em;margin-bottom:.3em}.substepexpand{margin-top:.3em;margin-bottom:.3em}div.imageleft{text-align:left}div.imagecenter{text-align:center}div.imageright{text-align:right}div.imagejustify{text-align:justify}div.noblankline{text-align:center}div.noblankline img{margin-top:0}pre.screen{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;background-color:#ddd;white-space:pre}pre.codeblock{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;background-color:#ddd;white-space:pre}.hrcopyright{color:#3f4e5d;margin-top:18pt}.hwcopyright{text-align:center}.comment{margin:2px 2px 2px 2px;font-family:Arial;font-size:10pt;background-color:#bfb;color:#000}.dropdownAllButtonexpand{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}.dropdownAllButtoncollapse{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;text-decoration:underline;color:#007af4}.dropdowntitle{background-repeat:no-repeat;background-position:0 4px;padding-left:15px;cursor:pointer;text-decoration:underline;color:#007af4}.dropdownexpand .dropdowntitle{background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.dropdowncollapse .dropdowncontext{display:none}.dropdowncollapse .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}.dropdowncollapsetable{border:0}.dropdowncollapsetable .dropdowncontext{display:none}.dropdowncollapsetable .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}pre{font-size:10pt;font-weight:normal;margin-left:9;margin-top:2;margin-bottom:2}.termcolor{color:blue;cursor:pointer}#dhtmlgoodies_tooltip{background-color:#f0f0d2;border:1px solid #000;position:absolute;display:none;z-index:20000;padding:2px;font-size:.9em;-moz-border-radius:6px;font-family:"Trebuchet MS","Lucida Sans Unicode",Arial,sans-serif}#dhtmlgoodies_tooltipShadow{position:absolute;background-color:#555;display:none;z-index:10000;opacity:.7;filter:alpha(opacity=70);-khtml-opacity:.7;-moz-opacity:.7;-moz-border-radius:6px}.freeze{position:fixed;_position:absolute;_top:expression(eval(document.documentElement.scrollTop));left:10;top:0}
\ No newline at end of file
diff --git a/docs/bms/dev/public_sys-resources/commonltr_print.css b/docs/bms/dev/public_sys-resources/commonltr_print.css
new file mode 100644
index 00000000..a5982314
--- /dev/null
+++ b/docs/bms/dev/public_sys-resources/commonltr_print.css
@@ -0,0 +1 @@
+body{font-size:12.0pt;margin:1.5em;margin-left:1.6cm}.msgph{font-family:Courier New}.rowlinecopyright{color:red;margin-top:10pt}.unresolved{background-color:skyblue}.noTemplate{background-color:yellow}.base{background-color:#fff}.nested0{margin-top:1em}.p{margin-top:1em}p{margin-top:.5em;margin-bottom:.5em}.note p{margin-top:.5em;margin-bottom:.5em}.tip p{margin-top:.5em;margin-bottom:.5em}.danger p{margin-top:.5em;margin-bottom:.5em}.warning p{margin-top:.5em;margin-bottom:.5em}.notice p{margin-top:.5em;margin-bottom:.5em}.caution p{margin-top:.5em;margin-bottom:.5em}.attention p{margin-top:.5em;margin-bottom:.5em}table p{margin-top:.2em;margin-bottom:.2em}table .p{margin-top:.4em;margin-bottom:.2em}.covertable{border:0;width:100% cellpadding:8pt;cellspacing:8pt}.cover_productname{font-size:15.0pt;font-family:"Arial"}.cover_manualtitle{font-size:24.0pt;font-weight:bold;font-family:"Arial"}.cover_manualsubtitle{font-size:18.0pt;font-weight:bold;font-family:"Arial"}.cover_heading{font-size:12.0pt;font-weight:bold;font-family:"Arial"}.cover_text{font-size:9.0pt;font-family:"Arial"}.tocheading,.heading1,.topictitle1{margin-top:40.0pt;margin-right:0;margin-bottom:20.0pt;margin-left:-1cm;text-align:left;border:0;border-bottom:solid windowtext .5pt;font-size:22.0pt;font-family:"Arial";font-weight:bold}.topictitlenumber1{font-size:72.0pt;font-family:"Book Antiqua";font-weight:bold}.topictitle2{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:-1cm;text-indent:0;font-size:18.0pt;font-family:"Arial";font-weight:bold}.topictitle3{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:0;text-indent:0;font-size:16.0pt;font-family:"Book Antiqua";font-weight:bold}.topictitle4{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:0;text-indent:0;font-size:14.0pt;font-family:"Book Antiqua";font-weight:bold}.topictitle5{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:0;text-indent:0;font-size:13.0pt;font-family:"Book Antiqua";font-weight:bold}.blocklabel,.topictitle6{margin-top:15.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;text-indent:0;font-size:13.0pt;font-family:"Book Antiqua";font-weight:bold}.sectiontitle{margin-top:15.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:-1cm;text-indent:0;font-size:13.0pt;font-family:"Arial";font-weight:bold}.tocentry1{margin-top:8.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:12.0pt;font-family:"Book Antiqua";font-weight:bold}.tocentry2{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tocentry3{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tocentry4{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tocentry5{margin-top:4.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman"}.tofentry1{margin-top:8.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman";font-weight:normal}.totentry1{margin-top:8.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;line-height:12.0pt;font-size:11.0pt;font-family:"Times New Roman";font-weight:normal}.indexheading{margin-top:15.0pt;margin-right:0;margin-bottom:4.0pt;margin-left:0;text-indent:0;font-size:13.0pt;font-family:"Book Antiqua";font-weight:bold}.indexentry1{margin-top:4pt;margin-right:0;margin-bottom:0;margin-left:0;line-height:12.0pt;font-size:12.0pt;font-family:"Times New Roman"}.indexentry2{margin-top:0;margin-right:0;margin-bottom:0;margin-left:24.0pt;line-height:12.0pt;font-size:12.0pt}.indexentry3{margin-top:0;margin-right:0;margin-bottom:0;margin-left:48pt;line-height:12.0pt;font-size:12.0pt}.figurenumber{font-weight:bold}.tablenumber{font-weight:bold}.familylinks{margin-top:1.5em;margin-bottom:1em}.figcap{font-size:11.0pt}.tablecap{font-size:11.0pt}.figdesc{font-style:normal}.fignone{margin-top:8.0pt}.figborder{border-style:solid;padding-left:3px;border-width:2px;padding-right:3px;margin-top:1em;border-color:Silver}.figsides{border-left:2px solid;padding-left:3px;border-right:2px solid;padding-right:3px;margin-top:1em;border-color:Silver}.figtop{border-top:2px solid;margin-top:1em;border-color:Silver}.figbottom{border-bottom:2px solid;border-color:Silver}.figtopbot{border-top:2px solid;border-bottom:2px solid;margin-top:1em;border-color:Silver}.ullinks{margin-left:0;list-style-type:none}.ulchildlink{margin-top:1em;margin-bottom:1em}.olchildlink{margin-top:1em;margin-bottom:1em;margin-left:1em}.linklist{margin-bottom:1em}.linklistwithchild{margin-left:1.5em;margin-bottom:1em}.sublinklist{margin-left:1.5em;margin-bottom:1em}.relconcepts{margin-left:1cm;margin-top:1em;margin-bottom:1em}.reltasks{margin-left:1cm;margin-top:1em;margin-bottom:1em}.relref{margin-left:1cm;margin-top:1em;margin-bottom:1em}.relinfo{margin-top:1em;margin-bottom:1em}.breadcrumb{font-size:smaller;margin-bottom:1em}.prereq{margin-left:0}.parentlink{margin-top:.6em;margin-bottom:.6em}.nextlink{margin-top:.6em;margin-bottom:.6em}.previouslink{margin-top:.6em;margin-bottom:.6em}.section{margin-top:1em;margin-bottom:1em}.example{margin-top:1em;margin-bottom:1em}table .note{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.note{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.notetitle{font-weight:bold;font-size:11.0pt}.notelisttitle{font-weight:bold}table .tip{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.tip{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.tiptitle{font-weight:bold;font-size:11.0pt}table .fastpath{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.fastpath{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.fastpathtitle{font-weight:bold;font-size:11.0pt}table .important{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman";font-style:italic}.important{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.importanttitle{font-weight:bold;font-size:11.0pt}table .remember{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman";font-style:italic}.remember{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.remembertitle{font-weight:bold;font-size:11.0pt}table .restriction{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman";font-style:italic}.restriction{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;border-top:solid .5pt;border-bottom:solid .5pt}.restrictiontitle{font-weight:bold;font-size:11.0pt}table .attention{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.attention{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}.attentiontitle{font-weight:bold}table .danger{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.dangertitle{font-weight:bold}.danger{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}table .notice{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.noticetitle{font-weight:bold}.notice{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}table .warning{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}.warningtitle{font-weight:bold}.warning{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}table .caution{margin-top:1em;margin-bottom:1em;border:0;font-size:10.0pt;font-family:"Times New Roman"}table caption{margin-top:8pt;text-align:left;font-weight:bold}.tablenoborder{margin-top:8pt}.cautiontitle{font-weight:bold}.caution{margin-top:1em;margin-bottom:1em;border:0;border-top:solid .5pt;border-bottom:solid .5pt}ul.simple{list-style-type:none}li ul{margin-top:.6em}li{margin-top:.6em;margin-bottom:.6em}.note li{margin-top:.2em;margin-bottom:.2em}.tip li{margin-top:.2em;margin-bottom:.2em}.danger li{margin-top:.2em;margin-bottom:.2em}.warning li{margin-top:.2em;margin-bottom:.2em}.notice li{margin-top:.2em;margin-bottom:.2em}.caution li{margin-top:.2em;margin-bottom:.2em}.attention li{margin-top:.2em;margin-bottom:.2em}table li{margin-top:.2em;margin-bottom:.2em}.firstcol{font-weight:bold}th{background-color:#cfcfcf}.bold{font-weight:bold}.boldItalic{font-weight:bold;font-style:italic}.italic{font-style:italic}.underlined{text-decoration:underline}.var{font-style:italic}.shortcut{text-decoration:underline}.dlterm{font-weight:bold}dd{margin-top:.5em;margin-bottom:.5em}.dltermexpand{font-weight:bold;margin-top:1em}*[compact="yes"]>li{margin-top:0}*[compact="no"]>li{margin-top:.53em}.liexpand{margin-top:1em;margin-bottom:1em}.sliexpand{margin-top:1em;margin-bottom:1em}.dlexpand{margin-top:1em;margin-bottom:1em}.ddexpand{margin-top:1em;margin-bottom:1em}.stepexpand{margin-top:1em;margin-bottom:1em}.substepexpand{margin-top:1em;margin-bottom:1em}table{margin-top:8pt;margin-bottom:10.0pt;width:100%}thead{font-size:10.0pt;font-family:"Book Antiqua";font-weight:bold}tbody{font-size:11.0pt}ol{margin-top:1em;margin-bottom:1em;margin-left:1.7em;-webkit-padding-start:0}ul{margin-top:1em;margin-bottom:1em;margin-left:1.2em;-webkit-padding-start:0}ol ul{list-style:disc}ul ul{list-style:square}ol ol{list-style-type:lower-alpha}table ol{margin-top:.4em;margin-bottom:.4em;list-style:decimal}table ul{margin-top:.4em;margin-bottom:.4em;list-style:disc}table ul ul{margin-top:.4em;margin-bottom:.4em;list-style:square}table ol ol{margin-top:.4em;margin-bottom:.4em;list-style:lower-alpha}table ol ul{margin-top:.4em;margin-bottom:.4em;list-style:disc}table ul ol{margin-top:.4em;margin-bottom:.4em;list-style:decimal}.substepthirdol{list-style-type:lower-roman}div.imageleft{text-align:left}div.imagecenter{text-align:center}div.imageright{text-align:right}div.imagejustify{text-align:justify}div.noblankline{text-align:center}div.noblankline img{margin-top:0}pre{font-size:10.0pt;border-width:2px;padding:2px;margin-top:5px;margin-bottom:5px;white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}pre.screen{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;white-space:pre}pre.codeblock{margin-top:2px;margin-bottom:2px;padding:1.5px 1.5px 0 1.5px;border:0;white-space:pre}.dropdownAllButtonexpand{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4}.dropdownAllButtoncollapse{cursor:pointer;background-repeat:no-repeat;background-position:0 4px;padding-left:15px;background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;text-decoration:underline;color:#007af4}.dropdowntitle{background-repeat:no-repeat;background-position:0 4px;padding-left:15px;cursor:pointer;text-decoration:underline;color:#007af4}.dropdownexpand .dropdowntitle{background-image:url(icon-arrowdn.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.dropdowncollapse .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.dropdowncollapsetable .dropdowntitle{background-image:url(icon-arrowrt.gif);text-decoration:underline;color:#007af4;margin:0 0 8px 0}.prefacesectiontitle1{margin-top:10.0pt;margin-right:0;margin-bottom:8.0pt;margin-left:-1cm;text-indent:0;font-size:18.0pt;font-family:"Book Antiqua";font-weight:bold;overflow:auto}.termcolor{color:blue;cursor:pointer}#dhtmlgoodies_tooltip{background-color:#f0f0d2;border:1px solid #000;position:absolute;display:none;z-index:20000;padding:2px;font-size:.9em;-moz-border-radius:6px;font-family:"Trebuchet MS","Lucida Sans Unicode",Arial,sans-serif}#dhtmlgoodies_tooltipShadow{position:absolute;background-color:#555;display:none;z-index:10000;opacity:.7;filter:alpha(opacity=70);-khtml-opacity:.7;-moz-opacity:.7;-moz-border-radius:6px}.freeze{position:fixed;_position:absolute;_top:expression(eval(document.documentElement.scrollTop));left:10;top:0}.hrcopyright{color:#3f4e5d;margin-top:18pt;margin-left:-1cm}.hwcopyright{text-align:center;font-family:Arial;margin-left:-1cm}
\ No newline at end of file
diff --git a/docs/bms/dev/public_sys-resources/commonrtl.css b/docs/bms/dev/public_sys-resources/commonrtl.css
new file mode 100644
index 00000000..f261da75
--- /dev/null
+++ b/docs/bms/dev/public_sys-resources/commonrtl.css
@@ -0,0 +1,2 @@
+/*! Copyright (c) Huawei Technologies Co., Ltd. 2020-2022. All rights reserved. */.msgph{font-family:Courier New}.unresolved{background-color:#87ceeb}.noTemplate{background-color:#ff0}.base{background-color:#fff}/*! Add space for top level topics */.nested0,.p{margin-top:1em}/*! div with class=p is used for paragraphs that contain blocks, to keep the XHTML valid *//*! Default of italics to set apart figure captions */.figcap,.italic,.var{font-style:italic}.figdesc{font-style:normal}/*! Use @frame to create frames on figures */.figborder{padding-left:3px;padding-right:3px;margin-top:1em;border:2px solid Silver}.figsides{margin-top:1em;padding-left:3px;padding-right:3px;border-left:2px solid Silver;border-right:2px solid Silver}.figtop{border-top:2px solid Silver;margin-top:1em}.figbottom{border-bottom:2px solid Silver}.figtopbot{border-top:2px solid Silver;border-bottom:2px solid Silver;margin-top:1em}/*! Most link groups are created with . Ensure they have space before and after. */.ullinks,ul.simple{list-style-type:none}.attention,.danger,.ddexpand,.dlexpand,.example,.fastpath,.important,.liexpand,.linklist,.note,.notice,.olchildlink,.relconcepts,.relinfo,.relref,.reltasks,.remember,.restriction,.section,.sliexpand,.stepexpand,.substepexpand,.tip,.ulchildlink,.warning{margin-top:1em;margin-bottom:1em}.linklistwithchild,.sublinklist{margin-top:1em;margin-right:1.5em;margin-bottom:1em}.breadcrumb{font-size:smaller;margin-bottom:1em}.prereq{margin-right:20px}/*! Set heading sizes, getting smaller for deeper nesting */.topictitle1{font-size:1.34em;margin-top:0;margin-bottom:.1em}.topictitle2,.topictitle3,.topictitle4,.topictitle5,.topictitle6,.sectiontitle{font-size:1.17em}.topictitle2{margin-top:1pc;margin-bottom:.45em}.topictitle3{margin-top:1pc;margin-bottom:.17em;font-weight:700}.topictitle4{margin-top:.83em;font-weight:700}.topictitle5{font-weight:700}.topictitle6{font-style:italic}.sectiontitle{margin-top:1em;margin-bottom:0;color:#000;font-weight:700}/*! All note formats have the same default presentation */.attentiontitle,.bold,.cautiontitle,.dangertitle,.dlterm,.fastpathtitle,.firstcol,.importanttitle,.notelisttitle,.notetitle,.noticetitle,.parmname,.remembertitle,.restrictiontitle,.tiptitle,.uicontrol,.warningtitle{font-weight:700}.caution{font-weight:700;margin-bottom:1em}/*! Simple lists do not get a bullet *//*! Used on the first column of a table, when rowheader="firstcol" is used *//*! Various basic phrase styles */.boldItalic{font-weight:700;font-style:italic}.shortcut,.underlined{text-decoration:underline}/*! 2008-10-27 keyword采用跟随上下文的样式
+*//*! Default of bold for definition list terms *//*! Use CSS to expand lists with @compact="no" */.dltermexpand{font-weight:700;margin-top:1em}[compact="yes"]>li{margin-top:0}[compact="no"]>li{margin-top:.53em}/*! Align images based on @align on topic/image */div.imageleft,.text-align-left{text-align:left}div.imagecenter,.text-align-center{text-align:center}div.imageright,.text-align-right{text-align:right}div.imagejustify,.text-align-justify{text-align:justify}.cellrowborder{border-right:0;border-top:0;border-left:1px solid;border-bottom:1px solid}.row-nocellborder{border-left:hidden;border-right:0;border-top:0;border-bottom:1px solid}.cell-norowborder{border-top:0;border-bottom:hidden;border-right:0;border-left:1px solid}.nocellnorowborder{border:0;border-left:hidden;border-bottom:hidden}pre.codeblock,pre.screen{padding:5px;border:outset;background-color:#ccc;margin-top:2px;margin-bottom:2px;white-space:pre}
\ No newline at end of file
diff --git a/docs/bms/dev/public_sys-resources/danger_3.0-en-us.png b/docs/bms/dev/public_sys-resources/danger_3.0-en-us.png
new file mode 100644
index 00000000..47a9c723
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/danger_3.0-en-us.png differ
diff --git a/docs/bms/dev/public_sys-resources/delta.gif b/docs/bms/dev/public_sys-resources/delta.gif
new file mode 100644
index 00000000..0d1b1f67
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/delta.gif differ
diff --git a/docs/bms/dev/public_sys-resources/deltaend.gif b/docs/bms/dev/public_sys-resources/deltaend.gif
new file mode 100644
index 00000000..cc7da0fc
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/deltaend.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-arrowdn.gif b/docs/bms/dev/public_sys-resources/icon-arrowdn.gif
new file mode 100644
index 00000000..84eec9be
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-arrowdn.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-arrowrt.gif b/docs/bms/dev/public_sys-resources/icon-arrowrt.gif
new file mode 100644
index 00000000..39583d16
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-arrowrt.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-caution.gif b/docs/bms/dev/public_sys-resources/icon-caution.gif
new file mode 100644
index 00000000..079c79b2
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-caution.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-danger.gif b/docs/bms/dev/public_sys-resources/icon-danger.gif
new file mode 100644
index 00000000..079c79b2
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-danger.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-huawei.gif b/docs/bms/dev/public_sys-resources/icon-huawei.gif
new file mode 100644
index 00000000..a31d60f8
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-huawei.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-note.gif b/docs/bms/dev/public_sys-resources/icon-note.gif
new file mode 100644
index 00000000..31be2b03
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-note.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-notice.gif b/docs/bms/dev/public_sys-resources/icon-notice.gif
new file mode 100644
index 00000000..40907065
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-notice.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-tip.gif b/docs/bms/dev/public_sys-resources/icon-tip.gif
new file mode 100644
index 00000000..c47bae05
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-tip.gif differ
diff --git a/docs/bms/dev/public_sys-resources/icon-warning.gif b/docs/bms/dev/public_sys-resources/icon-warning.gif
new file mode 100644
index 00000000..079c79b2
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/icon-warning.gif differ
diff --git a/docs/bms/dev/public_sys-resources/note_3.0-en-us.png b/docs/bms/dev/public_sys-resources/note_3.0-en-us.png
new file mode 100644
index 00000000..57a0e1f5
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/note_3.0-en-us.png differ
diff --git a/docs/bms/dev/public_sys-resources/notice_3.0-en-us.png b/docs/bms/dev/public_sys-resources/notice_3.0-en-us.png
new file mode 100644
index 00000000..fa4b6499
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/notice_3.0-en-us.png differ
diff --git a/docs/bms/dev/public_sys-resources/popup.js b/docs/bms/dev/public_sys-resources/popup.js
new file mode 100644
index 00000000..a550862e
--- /dev/null
+++ b/docs/bms/dev/public_sys-resources/popup.js
@@ -0,0 +1 @@
+var i=0;var dhtmlgoodies_tooltipFlag=false;var dhtmlgoodies_tooltip="";var dhtmlgoodies_tooltipShadow="";var dhtmlgoodies_shadowSize=3;var dhtmlgoodies_tooltipMaxWidth=500;var dhtmlgoodies_tooltipMinWidth=100;var dhtmlgoodies_iframe=false;var timeId;var clickFlag=false;var tooltip_is_msie=(navigator.userAgent.indexOf("MSIE")>=0&&navigator.userAgent.indexOf("opera")==-1&&document.all)?true:false;var xPos;var yPos;window.document.onmousemove=function(a){a=a||window.event;if(a.pageX){xPos=a.pageX;yPos=a.pageY}else{if(document.body!==null&&typeof document.body!=="undefined"){xPos=a.clientX+document.body.scrollLeft-document.body.clientLeft;yPos=a.clientY+document.body.scrollTop-document.body.clientTop}}};function showTooltip(e){if(document.body===null||typeof document.body==="undefined"){return}if(i==0){return}clickFlag=true;var f=Json.parse("jsonData."+e);var a=Math.max(document.body.clientWidth,document.documentElement.clientWidth)-20;if(!dhtmlgoodies_tooltipFlag){dhtmlgoodies_tooltip=document.createElement("DIV");dhtmlgoodies_tooltip.id="dhtmlgoodies_tooltip";dhtmlgoodies_tooltipShadow=document.createElement("DIV");dhtmlgoodies_tooltipShadow.id="dhtmlgoodies_tooltipShadow";document.body.appendChild(dhtmlgoodies_tooltip);document.body.appendChild(dhtmlgoodies_tooltipShadow);if(tooltip_is_msie){dhtmlgoodies_iframe=document.createElement("IFRAME");dhtmlgoodies_iframe.frameborder="5";dhtmlgoodies_iframe.style.backgroundColor="#FFFFFF";dhtmlgoodies_iframe.src="#";dhtmlgoodies_iframe.style.zIndex=100;dhtmlgoodies_iframe.style.position="absolute";document.body.appendChild(dhtmlgoodies_iframe)}}dhtmlgoodies_tooltip.style.display="block";dhtmlgoodies_tooltipShadow.style.display="block";if(tooltip_is_msie){dhtmlgoodies_iframe.style.display="block"}var b=Math.max(document.body.scrollTop,document.documentElement.scrollTop);if(navigator.userAgent.toLowerCase().indexOf("safari")>=0){b=0}var c=xPos+10;dhtmlgoodies_tooltip.style.width=null;dhtmlgoodies_tooltip.innerHTML=f;dhtmlgoodies_tooltip.style.left=c+"px";if(tooltip_is_msie){dhtmlgoodies_tooltip.style.top=yPos+20+b+"px"}else{dhtmlgoodies_tooltip.style.top=yPos+20+"px"}dhtmlgoodies_tooltipShadow.style.left=c+dhtmlgoodies_shadowSize+"px";if(tooltip_is_msie){dhtmlgoodies_tooltipShadow.style.top=yPos+20+b+dhtmlgoodies_shadowSize+"px"}else{dhtmlgoodies_tooltipShadow.style.top=yPos+20+dhtmlgoodies_shadowSize+"px"}if(dhtmlgoodies_tooltip.offsetWidth>dhtmlgoodies_tooltipMaxWidth){dhtmlgoodies_tooltip.style.width=dhtmlgoodies_tooltipMaxWidth+"px"}var d=dhtmlgoodies_tooltip.offsetWidth;if(da){dhtmlgoodies_tooltip.style.left=(dhtmlgoodies_tooltipShadow.style.left.replace("px","")-((c+d)-a))+"px";dhtmlgoodies_tooltipShadow.style.left=(dhtmlgoodies_tooltipShadow.style.left.replace("px","")-((c+d)-a)+dhtmlgoodies_shadowSize)+"px"}if(tooltip_is_msie){dhtmlgoodies_iframe.style.left=dhtmlgoodies_tooltip.style.left;dhtmlgoodies_iframe.style.top=dhtmlgoodies_tooltip.style.top;dhtmlgoodies_iframe.style.width=dhtmlgoodies_tooltip.offsetWidth+"px";dhtmlgoodies_iframe.style.height=dhtmlgoodies_tooltip.offsetHeight+"px"}}function hideTooltip(){i=0;clickFlag=false;if((dhtmlgoodies_tooltip!==null&&typeof dhtmlgoodies_tooltip!=="undefined")&&+(dhtmlgoodies_tooltip.style!==null&&typeof dhtmlgoodies_tooltip.style!=="undefined")){dhtmlgoodies_tooltip.style.display="none";dhtmlgoodies_tooltipShadow.style.display="none";if(tooltip_is_msie){dhtmlgoodies_iframe.style.display="none"}}if(timeId!==null&&typeof timeId!=="undefined"&&timeId!=""){clearTimeout(timeId)}}function showText(a){i=1;timeId=setTimeout(function(){showTooltip(a)},500)}function showText2(a){if(!clickFlag){i=1;showTooltip(a);i=0;if(timeId!==null&&typeof timeId!=="undefined"&&timeId!=""){clearTimeout(timeId)}}}function anchorScroll(b){var d=document.getElementsByName(b);if(d!=null&&d.length>0){var c=d[0];var a=c.getBoundingClientRect().left+(document.body.scrollLeft||(document.documentElement&&document.documentElement.scrollLeft));var e=c.getBoundingClientRect().top+(document.body.scrollTop||(document.documentElement&&document.documentElement.scrollTop));window.scrollTo(a,e-30)}};
\ No newline at end of file
diff --git a/docs/bms/dev/public_sys-resources/warning_3.0-en-us.png b/docs/bms/dev/public_sys-resources/warning_3.0-en-us.png
new file mode 100644
index 00000000..def5c356
Binary files /dev/null and b/docs/bms/dev/public_sys-resources/warning_3.0-en-us.png differ