7. Darga-2
● Released on June 30, 2016
● Blog post: http://manageiq.org/blog/2016/06/darga-2-announcementt/
● Download: http://manageiq.org/download/
8. 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
13. 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
14. 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.)
15. Providers - AnsibleTower
Greg 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
16. User Interface
Dan 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
29. Platform
Gregg Tanzillo
Custom Attributes - Reporting output (new way)
● CustomAttribute.value is now reported in the column titled
with the corresponding CustomAttribute.name
32. REST API
Alberto 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
33. REST API
Alberto 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
34. REST API
Alberto 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
35. REST API
Alberto 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
36. REST API
Alberto 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
37. Service Broker
Chris 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
38. Automate
Greg 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
39. ● 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
Automate
Greg McCullough
40. Automate
Greg McCullough
● Service Dialogs
○ Added ‘Visible’ flag to all dialog fields
○ In progress: Setting visible property from Dynamic dialog script
41. 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}
Automate
Madhu Kanoor
43. 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
Automate
Madhu Kanoor
46. 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.
47. 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