Hi all,

I'm glad to introduce you an advanced configuration of OpenStack settngs in
Fuel UI. An appropriate
blueprint<https://blueprints.launchpad.net/fuel/+spec/ui-settings-tab-validation>
was
implemented and the code merged.

Now we support the following cases:

   - validation of simple text settings using *regular expressions*. It can
   be email, password setting, etc.
   To take advantage of this feature a new *regex* attribute should be
   added into setting structure in
openstack.yaml<https://github.com/stackforge/fuel-web/blob/master/nailgun/nailgun/fixtures/openstack.yaml#L144>
    file:
   regex:
   source: "^[a-z]+$", // RegExp object source
            error: "Invalid username" // Warning message to be displayed on
   UI

   - configuration of setting *dependencies*:
      - setting can depend on some environment attribute. For example,
      *Murano* component can't be installed on environment with Neutron
      networking.
      To set such dependency the following property should be added to
      setting structure:
      depends:
            - "cluster:net_provider": "neutron"
      - setting can depend on other settings. For example, in Storage
      section *Ceph RadosGW for objects (Swift API)* can not be activated
      without active *Ceph RBD for images (Glance)* setting.
      To configure such dependency the following change should be made into
      setting structure:
      depends:
            - "settings:storage.images_ceph": true


   - configuration of setting *conflicts:*
   - setting can conflict with other settings. For example, in Storage
      section *Cinder LVM over iSCSI for volumes *and* Ceph RBD for volumes
      (Cinder) *settings can not be activated at the same time.
      To configure such conflict the following change should be made into
      setting structure:
      conflicts:
      - "settings:storage.volumes_ceph": true

So, *depends* and *conflicts* setting attributes are the lists of
declarative conditions of the following format:
"<model_name>:<model_attribute_path>":
<model_attribute_value>. I want to notice that there are no separate fields
with warning messages. Such warnings should be reflected in setting
*description *attribute.

Please see a design
document<https://docs.google.com/document/d/1f_FKdzZdFh3KrUUrtAjTVScV7rn00pyxPeWwxb3jQ8k/edit?usp=sharing>
for
more detailed information and UI screenshots.

Feel free for comments and asking questions.

Best Regards,
Julia Aranovich

-- 
Kind Regards,
Julia Aranovich,
Software Engineer,
Mirantis, Inc
+7 (905) 388-82-61 (cell)
Skype: juliakirnosova
www.mirantis.ru
[email protected] <[email protected]>
-- 
Mailing list: https://launchpad.net/~fuel-dev
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~fuel-dev
More help   : https://help.launchpad.net/ListHelp

Reply via email to