]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
mgr/dashboard: support multiple DriveGroups when creating OSDs
authorKiefer Chang <kiefer.chang@suse.com>
Thu, 16 Jan 2020 09:44:27 +0000 (17:44 +0800)
committerKiefer Chang <kiefer.chang@suse.com>
Fri, 6 Mar 2020 03:15:18 +0000 (11:15 +0800)
commit320bbeec1129d56e7501e1df501af91fd55d4fe5
tree06a708a7fbf7d2451156e0358c52508aa820e865
parent77425b3c4abb4e663dae59c3b72684200f4eb77c
mgr/dashboard: support multiple DriveGroups when creating OSDs

The `create_osds` call in orchestrator uses multiple named DriveGroups as
the parameter. Adapt the change in Dashboard.

Some minor polishes:
- Use task manager to wrap the operation.
- The submit button in Preview modal is changed from `Add` to `Create`.
- POST `/api/osd` to create OSDs:
  - Bare OSDs for OSD service container
    {
        "method": "bare",
        "data": {
            "uuid": "xxxx",
            "svc_id": 5
        }
    }

  - OSDs with devices (DriveGroups)

    {
        "method": "drive_groups",
        "data": {
            < drive group spec here>
        }
    }
- `/orchestrator/osd` endpoint is removed.

Fixes: https://tracker.ceph.com/issues/43615
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
17 files changed:
qa/tasks/mgr/dashboard/test_orchestrator.py
qa/tasks/mgr/dashboard/test_osd.py
src/pybind/mgr/dashboard/controllers/orchestrator.py
src/pybind/mgr/dashboard/controllers/osd.py
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-creation-preview-modal/osd-creation-preview-modal.component.html
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-creation-preview-modal/osd-creation-preview-modal.component.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-creation-preview-modal/osd-creation-preview-modal.component.ts
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-form/drive-groups.interface.ts [new file with mode: 0644]
src/pybind/mgr/dashboard/frontend/src/app/ceph/cluster/osd/osd-form/osd-form.component.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/orchestrator.service.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/orchestrator.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/osd.service.spec.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/api/osd.service.ts
src/pybind/mgr/dashboard/frontend/src/app/shared/services/task-message.service.ts
src/pybind/mgr/dashboard/services/orchestrator.py
src/pybind/mgr/dashboard/tests/test_orchestrator.py
src/pybind/mgr/dashboard/tests/test_osd.py