Upload
manageiq
View
1.808
Download
0
Embed Size (px)
Citation preview
ManageIQ
Sprint 43 Review - Sprint End July 11, 2016
July 13, 2016
Overview
● Sprint Statistics (Oleg Barenboim)● Community Update (Carol Chen)● Providers (Bronagh Sorota, Alissa Bonas, Greg
McCullough)● User Interface (Dan Clarizio)● Platform (Gregg Tanzillo)● REST API (Alberto Bellotti)● Service Broker (Chris Kacerguis)● Automate (Greg McCullough, Madhu Kanoor)● SmartState (Rich Oliveri)● Performance (Dennis Metzger)● Discussion
Sprint Statistics (O. Barenboim)
329 Pull Requests Merged
PR Breakdown by Feature Category (O. Barenboim)
* Note that some PRs have more than one category.
Providers
Sprint Comparison (O. Barenboim)
All Repo Stats (O. Barenboim)
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
Repository Mergedmanageiq 329integration_tests 46manageiq-providers-amazon 11miq_bot 11manageiq-ui-self_service 7manageiq.org 5guides 4manageiq-appliance 3manageiq-appliance-build 3ovirt 3ansible_tower_client 2mangeiq-api-client 2handsoap 1linux_admin 1manageiq_core_extensions 1rubyrep 1wrapapi 1Total 430
Darga-2
● Released on June 30, 2016
● Blog post: http://manageiq.org/blog/2016/06/darga-2-announcementt/
● Download: http://manageiq.org/download/
Community Update(Carol Chen)
● ManageIQ Design Summit 2016○ Video recordings of the sessions are being uploaded to the playlist this week○ https://www.youtube.com/playlist?list=PLQAAGwo9CYO-4tQsnC6oWgzhPNOykOOMd ○ Thanks for all your feedback! They are extremely helpful in our plans for future events
● Red Hat Summit 2016○ ManageIQ booth in the Community Central○ Received lots of interest from users, developers, partners, Red Hat customers, etc.
○ Check out some highlights on twitter: https://twitter.com/search?q=manageiq%20rhsummit&src=typd
● Manageiq.org website○ Redesign of the web site, planning started - initial messaging, wireframes○ Improved user experience, updated info and documentation, and more○ Next steps: gather content, requirements, decide on implementation tools
○ Will be integrated with github, so everyone can contribute easily by submitting PRs with content in markdown
Providers(B. Sorota)
Providers - Amazon(B. Sorota)
● Public Images Filter
Providers - Networking(B. Sorota)
● Separate Google Network Manager● NFV: VNFD Templates and VNF Stacks
Providers - Pluggability(B. Sorota)
● SupportsFeatureMixin○ supports :provisioning○ supports :discovery
● Amazon Provider Repository!
Providers - Hawkular(A. Bonas)
● New operations on servers and deployments
○ Undeploy/redeploy a deployment entity○ Reload/suspend/resume servers
● Live metrics
○ Added for datasources and transactions○ Refactor infrastructure for easier configuration
● Performance reports for middleware servers
● Alerts - added support for alert profile and alert
automated expressions for middleware server
Providers - Hawkular(A. Bonas)
● Crosslink middleware servers with RHEV VMs● Collect and display deployment status● Add datasources to topology view● Icons
○ Resolve missing icons in several views○ Add new icons (jms) and enhance existing icons
● Upgraded hawkular gem version to 2.2.1● Solve misc bugs (UI, refresher, etc.)
Providers - AnsibleTowerGreg McCullough
● Automate Method updated to pass JobTemplate “Extra Variables” defined in the Provision Task○ Any keys in the options hash starting with ‘dialog_param_’ are passed to
AnsibleTower when launching the JobTemplate
User InterfaceDan Clarizio
● PRs merged (147)○ SSUI (10)○ Bugs (68)○ Enhancements (25)○ Backported to Darga (55)
● Refactoring○ Default Filters tree converted to TreeBuilder - more on the way○ Cloud Key Pair form converted to AngularJS (Dana - UX team)○ Toolbars - Cleaned up partials, YAML -> classes
● Enhancements○ Settings moved to top right navigation header○ C3 Charts fully implemented - chart interaction coming soon!○ Tagging for Ansible job templates○ Live Search added to bootstrap selects○ Self Service UI Order History○ Provider forms - Credentials Validation improvements
User InterfaceSettings moved to top right header
New
Old
User InterfaceC3 Charts fully implemented
User InterfaceLive Search added to bootstrap selects
User InterfaceSSUI Order History - My Orders Tab
User InterfaceSSUI Order History - Order Detail
User InterfaceSSUI Order History - Request Detail
User InterfaceProvider Credentials Validation and Recheck Authentication
Demos
PlatformGregg Tanzillo
Enhancements and Bug Fixes
● PostgreSQL upgrade
● Custom Attributes - reporting, expressions
● Rest API
PlatformGregg Tanzillo
PostgreSQL
● PostgreSQL upgraded to 9.5
● Necessary for in progress HA feature
● Included in nightly build
PlatformGregg Tanzillo
Custom Attributes - Reporting editor (old way)● Name and Value were listed as separate columns
PlatformGregg Tanzillo
Custom Attributes - Reporting output (old way)● Name and Value were reported on separate columns
PlatformGregg Tanzillo
Custom Attributes - Reporting editor (new way)● CustomAttribute.name is now selectable as a column
PlatformGregg Tanzillo
Custom Attributes - Reporting output (new way)● CustomAttribute.value is now reported in the column titled
with the corresponding CustomAttribute.name
PlatformGregg Tanzillo
Custom Attributes - Supported in report filters...
PlatformGregg Tanzillo
Custom Attributes - and in charts
REST APIAlberto Bellotti
Refactoring
Goal - moving monolithic ApiController to OO model with collection specific classes and inheriting generic methods.
● Api::Settings for accessing api.yml● @req encapsulated as RequestAdapter● Rails routing for API now driven by api.yml● Clarifying rspecs
REST APIAlberto Bellotti
Added support for Report schedules
● Adding a schedule to a report:POST /api/reports/:id{ “action” : “schedule”, “resource” : { … }}
Schedule can include: name, enabled, description, start_date, interval, …
● GET /api/reports/:id/schedules● GET /api/reports/:id/schedules/:schedule_id
REST APIAlberto Bellotti
Added support for approving or denying service requests:
POST /api/service_requests/:id - Approving a service request{
“action” : “approve”,“resource” : { “reason” : “approve reason” }
}POST /api/service_requests/:id - Denying a service request
{“action” : “deny”,“resource” : { “reason” : “deny reason” }
}POST /api/service_requests - Approving or Denying multiple service requests
REST APIAlberto Bellotti
Added support for Openshift Container Deployments:
Provided via a new collection /api/container_deployments:
Fetching data used for container deployments:● GET /api/container_deployments/container_deployment_data
Creating and Querying container deployments:● POST /api/container_deployments - Creating a new container deployment● GET /api/container_deployments/:id - Get a specific container deployment● GET /api/container_deployments - Querying all container deployments
REST APIAlberto Bellotti
Added support for Virtual Templates:
Capability provided via a new /api/virtual_templates collection
● Full CRUD on /api/virtual_templates○ GET /api/virtual_templates - Query all virtual templates○ GET /api/virtual_templates/:id - Query single virtual template○ POST /api/virtual_templates - Create a new virtual template○ POST /api/virtual_templates/:id - action “edit” to edit a virtual template○ DELETE /api/virtual_templates/:id - Delete a virtual template○ POST /api/virtual_templates/:id - action “delete” to delete a virtual template
● Also adding support for provision action○ POST /api/virtual_templates/:id - action “provision” to provision a virtual template
Service BrokerChris Kacerguis
● Started work on Server Broker - Allow ManageIQ to select VM for you based on criteria (cloud, cost, or performance)
● Added API backend for Resourceless Servers (api/virtual_templates)
● Added datastore for the default settings for resourceless servers
AutomateGreg McCullough
● Generic Object○ Model refactoring / Cleanup○ Change to use PostgreSQL jsonb column○ In progress: Relationships
● Service resolution based on Provision Order○ Added ‘sequencer’ state to Service state machines○ New state runs existing ‘GroupSequenceCheck’ method
■ CatalogItemInitialization, provision_from_bundle○ Updated Namespaces:
■ ManageIQ / Cloud / Orchestration / Provisioning / StateMachine■ ManageIQ / ConfigurationManagement / AnsibleTower / Service / Provisioning / StateMachines■ ManageIQ / Service / Provisioning / StateMachines
● Add /System/Process/MiqEvent instance○ Problem: After Event-Switchboard refactoring the
/System/Process/Event instance requires an event object (not just an event name) to resolve the instance path.
○ Solution: The new MiqEvent instance enables a user to create custom buttons or Simulate to run and use simulate for MiqEvents.
○ Example: VM retirement warn from custom button on VM
● Added Provider refresh call to Amazon retire state machine in Pre-Retirement state.○ Avoids retry timeouts waiting for updated Provider inventory data
AutomateGreg McCullough
AutomateGreg McCullough
● Service Dialogs○ Added ‘Visible’ flag to all dialog fields○ In progress: Setting visible property from Dynamic dialog script
Null Coalescing Operator
● Multiple String values separated by “||”● Evaluated on new attribute data type “Null Coalescing”● Order dependent, left to right evaluation ● First non-blank value is used● Skip and warn about missing objects
e.g.
${/#owner.email} || ${/#miq_request.get_option(:owner_email)} || ${/#miq_request.requester.email} || ${/#config.to_email_address}
AutomateMadhu Kanoor
AutomateMadhu Kanoor
Accessing VMDB objects● Class Schema allows for the following new data types
○ EMS (Provider)○ Host○ Policy○ Provision○ Request○ Server○ Storage○ User○ VM (or Template)
● The value contains the id of the object○ e.g. ${/#vm.evm_owner_id}
● If the object is not found the attribute is not defined
AutomateMadhu Kanoor
AutomateMadhu Kanoor
Sample Instance
AutomateMadhu Kanoor
SmartState(Rich Oliveri)
● Added generalized disk LRU caching module.○ Currently, caching implemented in disk modules that
require it.○ Caching module can be used by any disk module -
eliminating duplication.○ Can be inserted “higher” in the IO path.○ Configurable caching parameters (memory vs
performance)○ Will be employed to address Azure performance and
throttling issues.○ Other disk modules converted over time.
Performance(Dennis Metzger)
● 12 Performance PRs Merged● Cap & U Improvements
○ Driven by the need to reduce collection scheduling time○ Reduced number of SQL queries○ Reduced number of objects
● Improved tag processing related to Alert Profiles○ Reduced memory consumption by 50%
● UI Performance○ Specific pages targeted based on customer feedback○ Up to a 98% reduction in rendering times
■ e.g. Services to Request from 11.6 seconds to 0.25 seconds
Discussion
Sprint 44 Review - August 3