Commit bdb36473 authored by Ryo Yamashita's avatar Ryo Yamashita Committed by Yas Naoi
Browse files

Issue #3283736 by Ryo Yamashita, yas: Add the function to edit OpenStack Key Pair in the SPA

parent 033f6b5d
Loading
Loading
Loading
Loading
+17 −0
Changes for modules/cloud_dashboard/cloud_dashboard/src/constant/form_template/openstack/key_pair.ts: 17 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -14,6 +14,23 @@ const OPENSTACK_KEY_PAIR_TEMPLATE: EntityFormTemplate[] = [
        ]
      }
    ]
  },
  {
    cloudServiceProvider: 'openstack',
    entityName: 'key_pair',
    actionType: 'edit',
    entityRecords: [
      {
        type: 'panel',
        panelName: 'Key pair',
        keyValueRecords: [
          { type: 'default', labelName: 'Key pair name', name: 'key_pair_name', defaultValue: '', readOnly: true },
          { type: 'default', labelName: 'Key pair ID', name: 'key_pair_id', defaultValue: '', readOnly: true },
          { type: 'default', labelName: 'Fingerprint', name: 'key_fingerprint', defaultValue: '', readOnly: true },
          { type: 'datetime', labelName: 'Created', name: 'created' },
        ]
      }
    ]
  }
]

+1 −1
Changes for modules/cloud_dashboard/cloud_dashboard/src/molecules/LabelBlock.tsx: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@ import { Form } from 'react-bootstrap';

const LabelBlock = ({name, value} : {name: string, value: string}) => {
  return <Form.Group>
    <Form.Label>{name}: </Form.Label>
    <Form.Label className="control-label">{name}: </Form.Label>
    {value === null ? '' : ` ${value}`}
  </Form.Group>;
}
+1 −1
Changes for modules/cloud_dashboard/cloud_dashboard/src/molecules/SelectBlock.tsx: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ const SelectBlock = ({
  // If the contents of the select box are not yet available.
  if (recordList.length === 0) {
    return <Form.Group className="form-item js-form-item">
      <Form.Label className={required ? 'form-required' : ''}>{label}</Form.Label>
      <Form.Label className={'control-label' + (required ? ' form-required' : '')}>{label}</Form.Label>
      <div className="select-wrapper">
        <Form.Select className="form-control">
          <option value="">{'- Select -'}</option>
+1 −1
Changes for modules/cloud_dashboard/cloud_dashboard/src/molecules/TextareaBlock.tsx: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@ const TextareaBlock = ({ label, value, setValue, required, readOnly }: {

  return <Form.Group>
    <div className="form-item js-form-item">
      <Form.Label className={required ? 'form-required' : ''}>{label}</Form.Label>
      <Form.Label className={'control-label' + (required ? ' form-required' : '')}>{label}</Form.Label>
      <div className="form-textarea-wrapper">
        <textarea className={'resize-vertical form-textarea form-control' + (required ? ' required' : '')}
          rows={20} cols={60} value={value} onChange={(e) => {
+46 −0
Changes for modules/cloud_service_providers/openstack/openstack.routing.yml: 46 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -445,6 +445,8 @@ entity.openstack_floating_ip.disassociate_form:
  requirements:
    _entity_access: 'openstack_floating_ip.disassociate'

# OpenStack Entity's count.

entity.openstack_entity.count:
  path: '/cloud_dashboard/openstack/{cloud_context}/{entity_type_id}/count'
  defaults:
@@ -466,6 +468,8 @@ entity.openstack_entity.count_all:
  options:
    perm: 'list {entity_type_id}'

# OpenStack CxUD REST API.

entity.openstack_image.create:
  path: '/cloud_dashboard/openstack/{cloud_context}/openstack_image/create'
  defaults:
@@ -481,6 +485,34 @@ entity.openstack_image.create:
  options:
      perm: 'add openstack image'

entity.openstack_image.edit:
  path: '/cloud_dashboard/openstack/{cloud_context}/openstack_image/{entity_id}/edit'
  defaults:
    _controller: '\Drupal\openstack\Controller\ApiController::operateEntity'
    entity_type_id: openstack_image
    command: edit
  methods: [POST]
  requirements:
    # Use custom access that will check for cloud_context and the desired permission.
    # Desired permission is passed as an option in the "perm" variable
    _custom_access: '\Drupal\cloud\Controller\CloudConfigController::access'
  options:
      perm: 'edit any openstack image+edit own openstack image'

entity.openstack_image.delete:
  path: '/cloud_dashboard/openstack/{cloud_context}/openstack_image/{entity_id}/delete'
  defaults:
    _controller: '\Drupal\openstack\Controller\ApiController::operateEntity'
    entity_type_id: openstack_image
    command: delete
  methods: [POST]
  requirements:
    # Use custom access that will check for cloud_context and the desired permission.
    # Desired permission is passed as an option in the "perm" variable
    _custom_access: '\Drupal\cloud\Controller\CloudConfigController::access'
  options:
      perm: 'delete any openstack image+delete own openstack image'

entity.openstack_key_pair.create:
  path: '/cloud_dashboard/openstack/{cloud_context}/openstack_key_pair/create'
  defaults:
@@ -495,3 +527,17 @@ entity.openstack_key_pair.create:
    _custom_access: '\Drupal\cloud\Controller\CloudConfigController::access'
  options:
      perm: 'add openstack key pair'

entity.openstack_key_pair.edit:
  path: '/cloud_dashboard/openstack/{cloud_context}/openstack_key_pair/{entity_id}/edit'
  defaults:
    _controller: '\Drupal\openstack\Controller\ApiController::operateEntity'
    entity_type_id: openstack_key_pair
    command: edit
  methods: [POST]
  requirements:
    # Use custom access that will check for cloud_context and the desired permission.
    # Desired permission is passed as an option in the "perm" variable
    _custom_access: '\Drupal\cloud\Controller\CloudConfigController::access'
  options:
      perm: 'edit any openstack key pair+edit own openstack key pair'
Loading