Sprint 38 review
-
Upload
manageiq -
Category
Technology
-
view
3.891 -
download
0
Transcript of Sprint 38 review
ManageIQSprint 38 Review - Sprint End March 28, 2016
March 30, 2016
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
Sprint Statistics (O. Barenboim)
304 Pull Requests Merged
* Note that some PRs have more than one label.
PRs Breakdown by Feature Category (O. Barenboim)
* Note that some PRs have more than one label.
Providers
Sprints Graph (O. Barenboim)
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
Providers (G. Blomquist)
Pluggable providers● Amazon stragglersAzure● Http proxy supportVmware● Read-only datastores
Networking Provider (G. Blomquist)
Networking Provider (G. Blomquist)
Networking Provider (G. Blomquist)
Networking Provider (G. Blomquist)
Providers (G. Blomquist)
Middleware Hawkular Demo (video)
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
Configuration (J. Frey)
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
Appliance Core - Chargeback
Assign rates to tenants
Appliance Core - Chargeback
Generate reports by tenant
Appliance Core - Chargeback
Added currencies to rates
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
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"
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
Appliance Core - Authentication
SAML Authentication
DEMO
Appliance Core - Authentication
Upcoming:
● manageiq_docs update for SAML configuration
● Appliance Console enhancement to update External Auth options
● REST API Authentication SAML/ECP
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
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” ]
}
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", ...
}
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
UI - VM Devices
UI - VM Network Adapters
UI - Cloud Key Pairs
UI - Cloud Key Pairs
UI - Cloud Object Stores
UI - Cloud Objects
UI - Cloud Object Summary
UI - Server Role Switches
UI - C3 Charts
UI - C3 Charts
UI - C3 Charts
UI - Container Builds Provider Link
UI - Container Builds Summary
SSUI - Custom Buttons that use Dialogs
Demo (E. Clarizio)
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.
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.
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
Automate
● Example METHOD:: usage
● Automate model enhancement:○ Azure Auto-Placement support
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
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
Discussion
Next Sprint Review - April 20