Sprint 38 review

48
ManageIQ Sprint 38 Review - Sprint End March 28, 2016 March 30, 2016

Transcript of Sprint 38 review

Page 1: Sprint 38 review

ManageIQSprint 38 Review - Sprint End March 28, 2016

March 30, 2016

Page 2: Sprint 38 review

Overview● Sprint Statistics (O. Barenboim)● Providers (G. Blomquist)● Configuration (J. Frey)● Appliance Core (G. Tanzillo)● Appliance Core - Authentication (A. Bellotti)● REST API (A. Bellotti)● User Interface (D. Clarizio)● SmartState (R. Oliveri)● Automate/Service/Ansible (G. McCullough)● Discussion

Page 3: Sprint 38 review

Sprint Statistics (O. Barenboim)

304 Pull Requests Merged

* Note that some PRs have more than one label.

Page 4: Sprint 38 review

PRs Breakdown by Feature Category (O. Barenboim)

* Note that some PRs have more than one label.

Providers

Page 5: Sprint 38 review

Sprints Graph (O. Barenboim)

Page 6: Sprint 38 review

All Repo Stats (O. Barenboim)

PRs Merged Git Repo

304 manageiq

14 azure-armrest

7 manageiq.org

6 manageiq-appliance-build

5 manageiq-ui-self_service

4 ansible_tower_client

3 miq_bot

1 guides

1 manageiq_docs

1 fog

Data source:

https://github.com/ManageIQthese are listed by most recent activity. go into each one that has been updated in the past 20 days and add up the PRs that have been merged

Order descending by #PRs merged

PRs Merged Git Repo

2 ManageIQ/awesome_spawn

9 ManageIQ/azure-armrest

4 ManageIQ/guides

234 ManageIQ/manageiq

4 ManageIQ/manageiq-appliance

19 ManageIQ/manageiq-appliance-build

1 ManageIQ/manageiq_docs

13 ManageIQ/miq_bot

1 ManageIQ/ovirt

2 ManageIQ/polisher

Page 7: Sprint 38 review

Providers (G. Blomquist)

Pluggable providers● Amazon stragglersAzure● Http proxy supportVmware● Read-only datastores

Page 8: Sprint 38 review

Networking Provider (G. Blomquist)

Page 9: Sprint 38 review

Networking Provider (G. Blomquist)

Page 10: Sprint 38 review

Networking Provider (G. Blomquist)

Page 11: Sprint 38 review

Networking Provider (G. Blomquist)

Page 12: Sprint 38 review

Providers (G. Blomquist)

Middleware Hawkular Demo (video)

Page 13: Sprint 38 review

Configuration (J. Frey)

● Configuration Revamp○ https://github.com/ManageIQ/manageiq/pull/7432○ Relies heavily on the config gem○ New classes Settings and Vmdb::Settings○ VMDB::Config is deprecated○ config/*.tmpl.yml -> config/settings.yml○ Locally override with config/settings.local.yml or

config/settings/development.local.yml

Page 14: Sprint 38 review

Configuration (J. Frey)

Page 15: Sprint 38 review

Appliance Core - Replication(G. Tanzillo)

Work on pglogical replication continues

● New MiqPglogical class○ Provides generic functionality for remote and global regions

● New PglogicalSubscription model○ Provides global region functionality as an ActiveRecord model

● Configuration UI in progress for next sprint

● Hardening for next sprint

Page 16: Sprint 38 review

Appliance Core - Chargeback

Assign rates to tenants

Page 17: Sprint 38 review

Appliance Core - Chargeback

Generate reports by tenant

Page 18: Sprint 38 review

Appliance Core - Chargeback

Added currencies to rates

Page 19: Sprint 38 review

Appliance Core - Tenancy

Splitting MiqGroup...

● … into user groups and entitlements in progress

● New model created for entitlements

● Will enable sharing entitlements across tenants

● Will provide more flexibility for defining groups in LDAP

Page 20: Sprint 38 review

Appliance Core - Appliance Console

Database setup● Added sub-menu under Configure Database

● Simplified database and multi-appliance configuration

● Replaced "Setup Database Region" with an explicit "Reset Configured

Database"

Page 21: Sprint 38 review

Appliance Core - Authentication(A. Bellotti)

Enhancements:

● Appliance Console External Auth updated to also work with 6.x IPA Servers

● SAML Authentication (verified with KeyCloak 1.8)

○ Appliance build now includes SAML apache module

○ Apache template config file provided

○ Web Admin UI Enhancement

■ SAML Configuration options

■ Enhanced Login Screen

Page 22: Sprint 38 review

Appliance Core - Authentication

SAML Authentication

DEMO

Page 23: Sprint 38 review

Appliance Core - Authentication

Upcoming:

● manageiq_docs update for SAML configuration

● Appliance Console enhancement to update External Auth options

● REST API Authentication SAML/ECP

Page 24: Sprint 38 review

REST API (A. Bellotti)

● Enhanced filtering to use MiqExpression

With this enhancement the REST API leverages MiqExpression to handle its filtering, allowing requests to be able to filter on physical, as well as virtual attributes, including attributes of first-level associations.

GET /api/vms?attributes=name,vendor,hardware &filter[]=vendor=vmware &filter[]=hardware.memory_mb>=8192

Page 25: Sprint 38 review

REST API

● Support refresh_dialog_fields on /api/service_dialogs resourcesSimilar to the support of refresh_dialog_fields on service_templates, we needed to add that capability for any dialog that may be definedon custom buttons.

POST /api/service_dialogs/:id

{

“action” : “refresh_dialog_fields”,

“dialog_fields” : {

“my_field1” : “current value 1”,

“my_field2” : “current value 2”,

}

“fields” : [ “my_field1” ]

}

Page 26: Sprint 38 review

REST API

● Showing hrefs for collections in authorization details in entrypointEnhanced API to include Role identifiers for collections and augmented the

authorization hash in the entrypoint to include that correlation:

GET /api?attributes=authorization

...

"authorization": {

"product_features": {

...

"vm": {

"name": "VM Access Rules",

"description": "Access Rules for Virtual Machines",

"href": "http://localhost:3000/api/vms", ...

}

Page 27: Sprint 38 review

User Interface (D. Clarizio)● PRs merged (91)

○ SSUI (7)

○ Bugs (37)

○ Enhancements (32)

○ Refactoring/Technical Debt (20)

● New functionality

○ VM - Devices and Network Adapters

○ Cloud - Key Pairs and Object Stores added

○ More Bootstrap switches

○ C3 Charts (jqPlot replacement)

○ SSUI - Support for Custom Buttons that use Dialogs (Demo)

● Containers

○ New Container Builds tab

○ Chargeback

○ Bug fixes and minor enhancements

Page 28: Sprint 38 review

UI - VM Devices

Page 29: Sprint 38 review

UI - VM Network Adapters

Page 30: Sprint 38 review

UI - Cloud Key Pairs

Page 31: Sprint 38 review

UI - Cloud Key Pairs

Page 32: Sprint 38 review

UI - Cloud Object Stores

Page 33: Sprint 38 review

UI - Cloud Objects

Page 34: Sprint 38 review

UI - Cloud Object Summary

Page 35: Sprint 38 review

UI - Server Role Switches

Page 36: Sprint 38 review

UI - C3 Charts

Page 37: Sprint 38 review

UI - C3 Charts

Page 38: Sprint 38 review

UI - C3 Charts

Page 39: Sprint 38 review

UI - Container Builds Provider Link

Page 40: Sprint 38 review

UI - Container Builds Summary

Page 41: Sprint 38 review

SSUI - Custom Buttons that use Dialogs

Demo (E. Clarizio)

Page 42: Sprint 38 review

SmartState (R. Oliveri)

● SCVMM○ Support for network-mounted HyperV virtual disks○ Performance improvements (HyperDisk caching)

● Azure○ Azure-armrest: added offset/length blob read

support.○ Added AzureBlobDisk module for MiqDisk.○ Implemented MiqAzureVm subclass of MiqVm.○ Needs to be integrated into the SSA path.

Page 43: Sprint 38 review

SmartState (R. Oliveri)

● Testing○ Added TestEnvHelper class for gems/pending.

■ Support for global and per-test parameters.■ Private data filtering.■ Cassette recording support - directory structure

based on test location.■ Re-recording facilitated through environment

variable settings - switch between public and private data.

Page 44: Sprint 38 review

Automate (G. McCullough)

● Automate state-machine fields to contain methods○ Previously

■ State fields only contained relationships■ Methods need to be in separate class■ Users worked around this limitation by using the

on_entry column to reference a method in the current class● Issue: on_entry does not honor state retry

● New Syntax: METHOD::<method_name>○ Benefits

■ State-machine instances and methods can be grouped together in the same class

■ Honors retry logic

Page 45: Sprint 38 review

Automate

● Example METHOD:: usage

● Automate model enhancement:○ Azure Auto-Placement support

Page 46: Sprint 38 review

Services

Back-end changes:● Service Order (Cart) created for each Service Request

based on current user and tenant.○ Next: “Add to Cart” ordering from Self-service UI

● VMware add/remove disk methods for reconfigure○ UI work in progress

Page 47: Sprint 38 review

Ansible Tower

● Modeling for AnsibleTowerJob● Support for launching JobTemplates with a

limit. (Target specific system)

● In progress○ Running JobTemplates from an Automate instance○ Support for Ansible Tower as a Service Type○ Linking Ansible Tower hosts to inventory from other

providers

Page 48: Sprint 38 review

Discussion

Next Sprint Review - April 20