Commit Graph

57 Commits

Author SHA1 Message Date
OpenStack Release Bot cba0b0c344 Update master for stable/2023.2
Add file to the reno documentation build to show release notes for
stable/2023.2.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.2.

Sem-Ver: feature
Change-Id: If1b9814394c9f7e4e5fc3c52dbc488b5ba166a0f
2023-09-14 01:23:34 +00:00
leiyuehui b4ca84cd90 improve doc format
Change-Id: I27923697051573da738d98a8040529d230555f8f
2023-05-17 15:51:50 +08:00
songwenping 49e4614bcc Add release note of fixing doc
Change-Id: Ib56c0f8fb1f0c1399630a9c1b9bd8bbe149d6142
2023-03-11 16:08:02 +08:00
songwenping 082a5171fa Add releasenot of vgpu managment support
Change-Id: Ie96b39c77d7ac1c03dcbc18f4198695504e7285d
2023-03-11 15:28:14 +08:00
OpenStack Release Bot 0583adebf1 Update master for stable/2023.1
Add file to the reno documentation build to show release notes for
stable/2023.1.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.1.

Sem-Ver: feature
Change-Id: I714f69caa8922afba98c2d9b24927bd41fdfcb60
2023-02-28 13:31:13 +00:00
OpenStack Release Bot 548c5f8f09 Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.

Sem-Ver: feature
Change-Id: I95ac4f617462fa52695280fbfda639aca3622f86
2022-09-14 07:46:02 +00:00
Zuul 106f023573 Merge "Add xilinx fpga driver" 2022-08-23 08:20:28 +00:00
songwenping 14ae896e16 doc: Comment out language option
... because explicit language=None causes the below warning since
Sphinx 5.0.0.

Invalid configuration value found: 'language = None'. Update your
configuration to a valid language code. Falling back to 'en' (English).

Change-Id: I5752d1d760aaf16feada69b92c73b9e2551b6b05
2022-08-19 09:51:33 +08:00
zhangbailin 68c558645c Drop py3.6 and py3.7 from Cyborg
In zed cycle, OpenStack projects and oslo lib
has dropped the py3.6 and py3.7 support

- https://governance.openstack.org/tc/reference/runtimes/zed.html

With oslo not supporting the py3.6 and py3.7, we disscussed in cyborg
team, and we will remove the py3.6 and py3.7 support too.

Closes-Bug: #1977636
Change-Id: Ib934e50ee6e89cb1e2b4cbf8390eee2baa30effd
2022-06-04 14:52:44 +08:00
Zuul aae62d42da Merge "Update master for stable/yoga" 2022-03-15 03:12:37 +00:00
Zuul 3ba15aa1c2 Merge "Add ARQ_UNBIND_FAILED status for ARQ" 2022-03-15 01:07:32 +00:00
songwenping 82255a0e09 Add ARQ_UNBIND_FAILED status for ARQ
When we unbind ARQ faild, we should set ARQ status to ARQ_UNBIND_FAILED.
Add try except for unbind ARQ operation.

Depends-On: https://review.opendev.org/c/openstack/cyborg/+/833529
Change-Id: I9a04b63a8ac7f20a0265f604eabc4107a40010b2
2022-03-14 06:57:32 +00:00
OpenStack Release Bot aa13eea5f6 Update master for stable/yoga
Add file to the reno documentation build to show release notes for
stable/yoga.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/yoga.

Sem-Ver: feature
Change-Id: Ief9a3501dd7051e5da3309222acb25b49f513758
2022-03-04 09:20:04 +00:00
ericxiett 2c2ab34ee3 Add xilinx fpga driver
This patch implemented Xilinx FPGA driver in cyborg. Currently can
 bind xilinx card to guest, and support programming.

Implements: blueprint add-xilinx-fpga-driver
Change-Id: I8cf48f64a0754ff13da2dddc4fabc601087b14b1
2022-02-17 10:46:08 +00:00
ericxiett cde7b78e22 Get device profile by name
Nowadays showing device_profile is supported only by uuid,
this patch supports to getting device profile by name.

Implements: blueprint show-device-profile-with-name
Change-Id: Ib9aff3312676923fc7478f2bcef79333e10496bf
2021-11-16 10:57:19 +00:00
OpenStack Release Bot 52227ace60 Update master for stable/xena
Add file to the reno documentation build to show release notes for
stable/xena.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/xena.

Sem-Ver: feature
Change-Id: I15beba6805dbb3b3a33c72576f8743f80258a8dc
2021-09-15 02:10:22 +00:00
songwenping 05f88530a3 Delete trait from placement
If no rp uses the old device trait, we need clean it, else placement
will raise 409 exception.

Closes-Bug: #1928174

Change-Id: I0b1a6ba0b8a9934afe243d53bc0eb7f78e97de1d
2021-07-23 16:11:54 +08:00
zhangbailin d9233bc429 Switch using Launchpad instead of Storyboard
In Xena release, we will using launchpad to trace Cyborg feature and
bugs, this patch changes the docs and releasenote config to launchpad.

Xena-PTG Etherpad: https://etherpad.opendev.org/p/cyborg-xena-ptg

Change-Id: I29c134420d341977a68ab11ba7dcb425caea44ff
2021-04-08 02:35:09 +00:00
OpenStack Release Bot 851dcfc79e Update master for stable/wallaby
Add file to the reno documentation build to show release notes for
stable/wallaby.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/wallaby.

Sem-Ver: feature
Change-Id: I3f7bfc90217a7a66f86a5b8cf65c4de5291b9eb1
2021-03-19 12:14:12 +00:00
Zuul d667954344 Merge "Add NVMe SSD driver" 2021-03-02 11:22:52 +00:00
zhangbailin 19b7d147ea Add NVMe SSD driver
This patch implemented NVMe SSD driver in Cyborg.
The Inspur NVMe SSD driver provides the discover and report proposal of
Inspur NVMe SSD disks, then we can use these disks binding and unbinding
with VM like PGPU to accelerator the io rate for the VM. The Inspur NVMe
SSD doesnot support virtualization, one disk can be only bind to one VM.

The spec is already commit. Please see:
https://specs.openstack.org/openstack/cyborg-specs/specs/wallaby/approved/nvme-ssd-driver-proposal.html

Please check the test report in the following link:
https://wiki.openstack.org/wiki/Cyborg/TestReport/InspurNVMeSSD

Co-Authored-By: Wenping Song <songwenping@inspur.com>

Change-Id: Ic474814b780e9beca6f19df50c9ce4c5553850a1
2021-03-02 08:36:40 +08:00
Yumeng Bao 0605fe39fd support configuring multiple vgpu types in cyborg
This patch defines the group and options for vgpu types configuration.

Co-Authored-By: Wenping Song <songwenping@inspur.com>

Change-Id: Ifbdf7f8fee663ddd28eeef9d7a804d29c0354c5f
Story: 2008265
Task: 41326
2021-02-26 16:02:09 +08:00
Zuul 82d1ed968b Merge "Add intel NIC driver" 2021-02-07 08:45:36 +00:00
Xinran Wang e3caf5cb0a Add intel NIC driver
This patch implements a new driver for Intel Nic Card. It
can discover the device and report it to Placement service with
CUSTOM_NIC resource class and specific traits.

Operator should specify the device and correspond profile in a
config file so that nic's driver can read the info from this
file.

Please check the test report in the following link:
https://wiki.openstack.org/wiki/Cyborg/TestReport/IntelNic

Change-Id: Ida0ba8f24b9e226da7f3d7a85fc372247e5281a5
Implements: blueprint sriov-smartnic-support
2021-02-04 08:40:23 +00:00
yangyawei 39d51a0a86 remove unicode from code
Change-Id: I5407d29ba5dcc8647426091b0df51840c3272ba9
2021-01-03 15:50:56 +08:00
Yumeng Bao bdc1aab530 Add releasenote for policy refresh base and device profile policies
Change-Id: I08f9d9043a488c8bb55c57f14f8eac860d47eb1f
2020-10-10 06:55:13 +00:00
OpenStack Release Bot 8966c5796d Update master for stable/victoria
Add file to the reno documentation build to show release notes for
stable/victoria.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/victoria.

Change-Id: I36c6b695f16653b000e22fc0c9ea94ad00eb37f7
Sem-Ver: feature
2020-09-22 14:12:19 +00:00
Zuul ef87b28898 Merge "Change default policy file from JSON to YAML" 2020-09-22 08:40:35 +00:00
Ghanshyam Mann af49d0b30a Change default policy file from JSON to YAML
As Cyborg is switching to new policy, this is required
to avoid breaking the existing deployment using policy
file in json format and relying on default value of
'CONF.oslo_policy.policy_file'.

Default value of 'CONF.oslo_policy.policy_file' config option
has been changed from 'policy.json' to 'policy.yaml'. If new default
file 'policy.yaml' does not exist but old default 'policy.json' exist
then fallback to use old default file.

An upgrade checks is added to check the policy_file format and
fail upgrade checks if it is JSON formatted.

Added a warning in policy doc about JSON formatted file is deprecated,
also removed all the reference to policy.json file in doc as well as
in tests.

Related Blueprint: https://blueprints.launchpad.net/oslo.policy/+spec/policy-json-to-yaml

Change-Id: I865227e516dc7505c463ac279309169d95ea6a22
2020-09-18 14:16:31 +00:00
Shogo Saito 5435d293c9 Add releasenote for programming method
Change-Id: I97046e9539f0bd6eaef2f632f1b3bbe62e2e9d52
2020-09-17 11:26:05 +09:00
Zuul a31d202d6c Merge "Add releasenote for Intel QAT driver." 2020-09-16 03:30:00 +00:00
Xinran Wang c39d18041a Add releasenote for Intel QAT driver.
Change-Id: I37118f69c2836eadb17c56a186a8442905037299
2020-09-14 00:01:19 +00:00
songwenping 05f762b8f9 Add Inspur FPGA driver releasenote
Change-Id: I4c80faa56f97dd1f839a78fe26a2cfb26089709d
2020-09-11 09:42:00 +08:00
songwenping fd18064c11 Add releasenote for add project_id for arq patch api
This is follow up https://review.opendev.org/#/c/738427/6/cyborg/api/rest_api_version_history.rst@18,
and add releasenote for adding `project_id` field to accelerator request
PATCH api.

Change-Id: I4df6a7e91c0a2a06fbf260c6c6790d6160345acd
2020-09-05 16:11:49 +08:00
Monty Taylor 9b99e56c67 Remove deprecated cyborg.image.download.modules
This was deprecated from Queens. Remove it before we clean up the
image download code.

Change-Id: Ic765a2958f7a00f7b2bb6fb580dda064094817b4
2020-06-20 10:49:34 -05:00
Zuul 8cf0310a75 Merge "Remove OPAE dependency in devstack" 2020-06-17 06:24:00 +00:00
Yumeng Bao 7ee7de1ec9 Remove OPAE dependency in devstack
This patch removes OPAE driver package from cyborg-agent dependencies due to
the following reasons:

1. In the kolla cyborg-agent image we install OPAE, but OPAE is not
available for CentOS 8 for the moment. This will make the cyborg-agent image
unbuildable in Ussuri[0].

2. In devstack, due to the fact that OPAE packages depend on libjson0, which
is not available after Ubuntu 16.04, so cyborg can't be installed on Ubuntu
higher than 16.04 now(unless disable dependency manually). Moreover,from
cyborg's perspective, it does not need to contain any hardware driver
dependency, we can assume the admin should know about it and install the
correct version.

3. We had an agreement at Victoria PTG that we should remove.[1]

[0]http://lists.openstack.org/pipermail/openstack-discuss/2020-June/015428.html
[1]https://etherpad.opendev.org/p/cyborg-victoria-goals L261

Change-Id: If0c92ea6ed98f195f5645ae0260855ed50f4f2a8
Story: 2007810
Task: 40078
2020-06-15 19:56:36 +08:00
zhangbailin 981d37cfc7 Enable openstackdocs config to storyboard
https://review.opendev.org/#/c/729944 renamed some config related to
launchpad, but Cyborg does not enable launchpad, using storyboard.
If the configuration is incorrect, they will add the bug icon to allow
reporting from a page.

Using openstackdocs_use_storyboard = True in the docs config file.

Talked in Ussuri PTG in Cyborg, whether launchpad is enabled for Cyborg,
we have not reached a consensus agreement.

See line 291: https://etherpad.opendev.org/p/cyborg-victoria-goals

Change-Id: Icfea14b07c3d87c28dcd05b2822f0c5fe0c12a60
2020-06-09 06:28:59 +00:00
Andreas Jaeger eef6ddd62d Switch to newer openstackdocstheme and reno versions
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems

Update Sphinx version as well.

Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.

Disable openstackdocs_auto_name to use 'project' variable as name.

Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.

openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.

See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html

Change-Id: I49a5a5876b0b995df0c3ce55fd517fa81bd79fd2
2020-05-21 14:35:22 +02:00
OpenStack Release Bot dae645bbf2 Update master for stable/ussuri
Add file to the reno documentation build to show release notes for
stable/ussuri.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.

Change-Id: I0bf5ae92263789c898b8025f87f6b8bc1d41e3d2
Sem-Ver: feature
2020-04-24 08:47:32 +00:00
Xinran WANG 07a8e30f76 Introduce microversion
This patch aims at support microversion in Cyborg API.
The work items is the following:
1. remove old api_version_request.py to avoid the redundancy.
2. add a header in every API request and support to parse it and
route to the correct API method.
3. depracate v1 API.
4. add related UT.

For testing:

CTYPE="Content-Type: application/json"
AUTH="X-Auth-Token: $(openstack token issue -c id -f value)"

curl -s -H "$CTYPE" -H "$AUTH" -H "OpenStack-API-Version: accelerator
2.0" http://localhost/accelerator/devices

This will execute sucessfully because 2.0 microversion is supported.

curl -s -H "$CTYPE" -H "$AUTH" -H "OpenStack-API-Version: accelerator
latest" http://localhost/accelerator/devices

This will execute sucessfully because "latest" will be parsed to 2.0.

curl -s -H "$CTYPE" -H "$AUTH" -H "OpenStack-API-Version: accelerator
2.99" http://localhost/accelerator/devices

This will failed because we don't support 2.99 microversion.

Change-Id: Id9c34dc134d59b2332cefbcae5bbd7e6632e970d
2020-04-07 06:18:50 +00:00
zhangbailin 002e31a129 Add 'description' field to the device profile object
Add the DeviceProfile objects version 1.1, and add 'description'
field to the DeviceProfile's fields.
And 'description' also will expose to end users from
the GET/POST response body.

Story: 2007397
Partial-Implements: blueprint add-description-field-to-device-profiles

Change-Id: I15fd9a430d09b20b55375b374fd7fd96542c6358
2020-03-19 03:59:36 +00:00
Zuul a03e6527b9 Merge "Introduce bandit security linter" 2020-01-14 03:58:49 +00:00
Zuul 0c72b024fd Merge "Bump the openstackdocstheme extension to 1.20" 2020-01-11 19:39:42 +00:00
Yumeng Bao d765a344ee Introduce bandit security linter
Cyborg now does not have a code security check, which may connive at
possible security issues. For example, shell-related operations for drivers
may be insecure. Current "sudo lspci -nnn -D" in huawei ascend driver code[0]
is insecure, but there is no any job/test that can check the potential security
issues. So this patch introduces bandit as a code security check.

[0]:https://github.com/openstack/cyborg/blob/master/cyborg/accelerator/drivers/aichip/huawei/ascend.py#L69

Change-Id: Ia1f9acbbd176180cb5fe97b1a2eee5f98a95dea6
2020-01-05 19:49:22 -08:00
Arthur Dayne 6b9ab023e1 Stop testing python2.7
Python 2.7 support has been dropped. Last release of Cyborg to support
py2.7 is OpenStack Train. The minimum version of Python now
supported by Cyborg is Python 3.6.

Depends-On: https://review.opendev.org/#/c/691766/
Change-Id: Ie87ef7727b50d8d5ca43f0283c5688199c35412e
2019-11-19 02:09:08 -05:00
pengyuesheng e8b3051254 Bump the openstackdocstheme extension to 1.20
Some options are now automatically configured by the version 1.20:
- project
- html_last_updated_fmt
- latex_engine
- latex_elements
- version
- release.

Change-Id: I7407d8dd6261c18db9dd0f7ea8b5963738cfd7da
2019-10-09 09:42:52 +08:00
OpenStack Release Bot eea67513c2 Update master for stable/train
Add file to the reno documentation build to show release notes for
stable/train.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.

Change-Id: I4dc98dee7881090ca60359379d5bc76e99847256
Sem-Ver: feature
2019-09-27 09:02:52 +00:00
Yumeng Bao 45ade8a10b Implement privsep boilerplate in cyborg.
This includes implementing a first trivial example of how to use
privsep to run something as root, specifically the gpu driver. FPGA
and other drivers should implement as well in the future.

For reference:
https://review.opendev.org/#/c/566479/4
https://docs.openstack.org/oslo.privsep/latest/user/index.html#converting-from-rootwrap-to-privsep

Change-Id: Ibff356d9a7f57bc99cc26de90d81ff92948f37c4
2019-09-25 19:22:12 -07:00
ljhuang b8103b4394 Sync Sphinx requirement
1. Sync sphinx dependency with global requirements. It caps python 2 since
sphinx 2.0 no longer supports Python 2.7.
2. Update some URLs to latest

Change-Id: I2ab509a8430cb3e7d297bd4303a492c21d59a7f3
2019-06-11 10:04:34 +00:00