ManageIQ
Sprint 50 Review - Sprint End December 5, 2016
December 7, 2016
Overview
● Sprint Statistics (Oleg Barenboim)
● Community Update (Carol Chen)
● Classic UI (Harpreet Kataria)
● Service UI (Chris Kacerguis)
● Providers (Greg Blomquist)
● Automate (Greg McCullough)
● Platform (Gregg Tanzillo)
● API (Alberto Bellotti)
● Storage (Rich Oliveri)
● Quality Engineering (Dave Johnson)
● Discussion
Sprint Statistics
(O. Barenboim)
311 Pull Requests Merged for ManageIQ/manageiq
PR Breakdown by Feature Category
(O. Barenboim)
* Note that some PRs
have more than one
category.
Providers
Sprint Comparison
(O. Barenboim)
Darga-2
Darga-3
DargaGA
DargaRC
Darga-4
EuweBeta
EuweRC1
EuweRC2
Darga-5
All Repo Stats
(O. Barenboim)
Repo PRs Closed
manageiq 311
integration_tests 47
manageiq-ui-service 29
manageiq-gems-pending 20
manageiq.org 12
manageiq-providers-amazon 8
manageiq_docs 7
manageiq-providers-azure 7
ui-components 6
manageiq-pods 4
manageiq-api-client 3
manageiq-appliance 3
manageiq-providers-lenovo 3
manageiq-release 3
ovirt 3
manageiq-api-client-python 2
manageiq-appliance-build 2
more_core_extensions 2
ovirt_metrics 2
wrapanapi 2
azure-armest 1
guides 1
query_relation 1
Total 470
Community Update
(Carol Chen)
● Recent meetups
○ NLUUG fall conference (Nov 17, Utrecht) - Mike Hulsman talked about ManageIQ
https://twitter.com/mhulsman66/status/802244307298045952
○ GDG DevFest (Dec 2-3, Madrid) - Sergio Ocón presented “Collaborating in ManageIQ”
● Upcoming events
○ DevConf.CZ (Jan 27-29, 2017, Brno) - 5 ManageIQ-related proposals submitted
○ FOSDEM (Feb 4-5, 2017, Brussels) - 5 ManageIQ-related proposals submitted
● F-release
○ 45 votes for Reuben Fine (out of 98 total votes)
○ The next release will be a Fine release!
● D and E-releases
○ Euwe RC2 released Nov 21:
http://manageiq.org/blog/2016/11/Announcing-Euwe-Release-Candidate-2/
○ Darga 5 released Dec 5: http://manageiq.org/blog/2016/12/Announcing-Darga-5/
● LWIMIQ
○ http://manageiq.org/blog/tags/LWIMIQ/
Community Update
(Carol Chen)
● Website traffic
● Note: pageviews for talk.manageiq.org before Nov 2016 are extrapolated, as
previously top-level stats (for both manageiq.org and talk.manageiq.org) were
grouped together in Google Analytics.
Manageiq.org
# pageviews
MoM
change
% pageviews
to /docs/
Talk.manageiq.org
# pageviews
MoM
change
Sept 2016 16090 31% 6887
Oct 2016 28796 79% ⬆ 52% 8796 28% ⬆
Nov 2016 30919 7.4% ⬆ 53% 8177 7% ⬇
Classic UI
(Harpreet Kataria)
● PRs merged (170)
○ Bugs (102)
○ Enhancements (14)
○ Tech Debt / Refactoring (31/13)
○ Backported to EUWE (29)
● Bug Fixes
○ Several issues fixed around new patternfly timelines and rendering
timelines in IE
○ Regressions from VM tree changes
○ Some fixes/changes around console buttons
○ I18n updates
○ Lots of EUWE fixes
Classic UI
(Harpreet Kataria)
● Tech Debt / Refactoring
○ Several controllers were updated to use Generic Mixins such as
GenericSessionMixin, GenericListMixin, GenericShowMixin,
GenericButtonMixin etc. This is a Work in Progress.
○ Removed calls to get_vmdb_config() and use Settings class directly thru
out the controllers & helpers
○ Change menu roles editor to use TreeBuilderMenuRoles class
○ Toolbar refactoring in PXE, Ansible, Foreman related screens
○ Refactored Start page url related code, moved it into mixins.
Classic UI
(Harpreet Kataria)
● Enhancements
○ Power operations in Service Detail view (in SUI)
○ Launch an URL returned by an automate button
○ Ad hoc metrics for Container Providers
○ “Custom Logos" screen updated to use bootstrap-switch
Classic UI
(Harpreet Kataria)
Power operations in Service Detail view (in SUI)
Classic UI
(Harpreet Kataria)
Launch a URL returned by an automate button
Example usage from automate:
create a custom button with the check box "Open URL" checked
attach a method to it with the text below:
$evm.root['vm'].remote_console_url = 'http://www.redhat.com'
Classic UI
(Harpreet Kataria)
Ad hoc metrics for Container Providers
Service UI
(Chris Kacerguis)
● Several bugs fixes
● Moved many Angular directives to components
● Increased test coverage to 59%
● Code Quality to 4.0
● Completed many designs for the F release
Service UI
(Chris Kacerguis)
● Added support for viewing information about a VM
Service UI
(Chris Kacerguis)
● Added support for pagination (faster page loads)
Providers
(Greg Blomquist)
Providers - Containers
(Greg Blomquist)
Custom Attributes Table
Providers - Bug Fixes
(Greg Blomquist)
Providers - Other Updates
(Greg Blomquist)
Fix Targeted Refresh for VM Delete
Expanding Inventory Refresh
Delete Resources associated to VMs
Providers - General
(Greg Blomquist)
Researching new inventory refresh strategies
Data Warehouse Management
Containers and Hawkular teams
CloudSubnet SupportsFeatureMixin
OpenStack team
Automate
(Greg McCullough)
AnsibleTower
● Support provider name & template name to uniquely
identify a template
● Logging improvements
○ Implemented debug logging
○ Improved logging on errors
Automate
(Greg McCullough)
● Use CatalogItemInitialization as the default entry point
for Orchestration and AnsibleTower provisioning
● Notification for Service and VM Retirement starting
● Refactoring Automate methods
○ Improved testability
○ Cloud / Orchestration / Operations
Automate
(Greg McCullough)
Service Models
● Move snapshot code to Vm model to support RHV
features
● Expose custom_attribute methods on
ext_management_system
○ custom_keys
○ custom_get
○ custom_set
● Expose miq_groups relationship from User model
○ expose :miq_groups, :association => true
Automate
(Greg McCullough)
Engine
● Add transaction around the automate import_domain
method
● RBAC support for Automate Service Models
Automate
(Greg McCullough)
RBAC Feature
● Filters access to objects based on current automate
user.
● Set at the workspace level, setting persists across
methods.
● Disabled by default
○ Automate Methods can call
■ $evm.enable_rbac
■ $evm.disable_rbac
■ $evm.rbac_enabled?
Platform
(Gregg Tanzillo)
Platform
(Gregg Tanzillo)
Enhancements / Bug Fixes
● External Authentication
○ Addressed bugs introduced by CentOS 7.3
○ Fix for One Time Password support
● Chargeback
○ More refactoring
○ Calculations - rounding, averages
Platform
(Gregg Tanzillo)
Enhancements / Bug Fixes
● Appliance Console
○ Fixed wording and default around option for running as
a standalone database server
● Settings technical debt -
○ Replaced deprecated calls with new class#method
○ Controllers and models
VMDB::Config.new("vmdb").config => ::Settings
API
(Alberto Bellotti)
● API bumped to the “Fine” 2.4.0-pre version
GET /api
{
"name": "API",
"description": "REST API",
"version": "2.4.0-pre",
"versions": [
{
"name": "2.4.0-pre",
"href": "http://localhost:3000/api/v2.4.0-pre"
}
],
…
}
API
(Alberto Bellotti)
● Added support for DateTime filtering
Implemented via the filter[]= parameter.
■ filter[]=attr operator value
■ For <, > and = operators
■ Works on DateTime attributes for the collection being queried
■ Value formats support the following subset of ISO-8601
● YYYY-MM-DD
● YYYY-MM-DDTHH:MM:SSZ
GET /api/vms?vendor=’redhat’&filter[]=retires_on<2016-12-31
API
(Alberto Bellotti)
● Added option to hide resources in responses
Needed for Service-UI where simply a count and subcount is needed for a query without needing
the resources themselves.
● Provided via the hide parameter, similar syntax as expand, and supporting the resources
value as follows:
GET /api/services?filter[]=service_id=nil&hide=resources
API
(Alberto Bellotti)
● Policies creation now require the mode attribute
POST /api/policies
{
“name” : “sample policy”,
“description” : “sample policy”,
“mode” : “compliance”,
“towhat” : “ManageIQ::Providers::Redhat::InfraManager”,
“conditions_ids” : [ 1, 2 ]
}
Storage
(Rich Oliveri)
● In the UI, categorize storage by type.
○ Storage exports categorized by type: block, object, file share, etc.
○ Storage managers categorized by type of storage they export.
■ A given storage manager can export multiple types, thus appearing
in multiple categories.
○ Demo (Jerry Keselman)
Quality Engineering
(Dave Johnson)
○ Seeing a 10% reduction in total open issues
■ ~20% reduction of high impacting issues
○ Bug re-triage effort identified next top (~75) issues for
developer to begin to chase over the next sprint
○ Prototyped new defect weighting metric to help with
the prioritization of issues, rolling out this next sprint
○ Stability of overall release looking much better!
Quality Engineering
(Dave Johnson)
Continual decrease in the incoming rate over this last sprint
Quality Engineering
(Dave Johnson)
Automation
○ Progress made towards tracking down and fixing the infinite spinners / ui
quirks introduced from tree re-factor
■ Kudos to Pete for being tenacious enough to stick with it and find it.
■ Still a few more to chase but should be easier now to debug
Discussion
Sprint 51 Review - January 4
Sprint 51 will be 4 weeks instead of 3

Sprint 50 review

  • 1.
    ManageIQ Sprint 50 Review- Sprint End December 5, 2016 December 7, 2016
  • 2.
    Overview ● Sprint Statistics(Oleg Barenboim) ● Community Update (Carol Chen) ● Classic UI (Harpreet Kataria) ● Service UI (Chris Kacerguis) ● Providers (Greg Blomquist) ● Automate (Greg McCullough) ● Platform (Gregg Tanzillo) ● API (Alberto Bellotti) ● Storage (Rich Oliveri) ● Quality Engineering (Dave Johnson) ● Discussion
  • 3.
    Sprint Statistics (O. Barenboim) 311Pull Requests Merged for ManageIQ/manageiq
  • 4.
    PR Breakdown byFeature Category (O. Barenboim) * Note that some PRs have more than one category. Providers
  • 5.
  • 6.
    All Repo Stats (O.Barenboim) Repo PRs Closed manageiq 311 integration_tests 47 manageiq-ui-service 29 manageiq-gems-pending 20 manageiq.org 12 manageiq-providers-amazon 8 manageiq_docs 7 manageiq-providers-azure 7 ui-components 6 manageiq-pods 4 manageiq-api-client 3 manageiq-appliance 3 manageiq-providers-lenovo 3 manageiq-release 3 ovirt 3 manageiq-api-client-python 2 manageiq-appliance-build 2 more_core_extensions 2 ovirt_metrics 2 wrapanapi 2 azure-armest 1 guides 1 query_relation 1 Total 470
  • 7.
    Community Update (Carol Chen) ●Recent meetups ○ NLUUG fall conference (Nov 17, Utrecht) - Mike Hulsman talked about ManageIQ https://twitter.com/mhulsman66/status/802244307298045952 ○ GDG DevFest (Dec 2-3, Madrid) - Sergio Ocón presented “Collaborating in ManageIQ” ● Upcoming events ○ DevConf.CZ (Jan 27-29, 2017, Brno) - 5 ManageIQ-related proposals submitted ○ FOSDEM (Feb 4-5, 2017, Brussels) - 5 ManageIQ-related proposals submitted ● F-release ○ 45 votes for Reuben Fine (out of 98 total votes) ○ The next release will be a Fine release! ● D and E-releases ○ Euwe RC2 released Nov 21: http://manageiq.org/blog/2016/11/Announcing-Euwe-Release-Candidate-2/ ○ Darga 5 released Dec 5: http://manageiq.org/blog/2016/12/Announcing-Darga-5/ ● LWIMIQ ○ http://manageiq.org/blog/tags/LWIMIQ/
  • 8.
    Community Update (Carol Chen) ●Website traffic ● Note: pageviews for talk.manageiq.org before Nov 2016 are extrapolated, as previously top-level stats (for both manageiq.org and talk.manageiq.org) were grouped together in Google Analytics. Manageiq.org # pageviews MoM change % pageviews to /docs/ Talk.manageiq.org # pageviews MoM change Sept 2016 16090 31% 6887 Oct 2016 28796 79% ⬆ 52% 8796 28% ⬆ Nov 2016 30919 7.4% ⬆ 53% 8177 7% ⬇
  • 9.
    Classic UI (Harpreet Kataria) ●PRs merged (170) ○ Bugs (102) ○ Enhancements (14) ○ Tech Debt / Refactoring (31/13) ○ Backported to EUWE (29) ● Bug Fixes ○ Several issues fixed around new patternfly timelines and rendering timelines in IE ○ Regressions from VM tree changes ○ Some fixes/changes around console buttons ○ I18n updates ○ Lots of EUWE fixes
  • 10.
    Classic UI (Harpreet Kataria) ●Tech Debt / Refactoring ○ Several controllers were updated to use Generic Mixins such as GenericSessionMixin, GenericListMixin, GenericShowMixin, GenericButtonMixin etc. This is a Work in Progress. ○ Removed calls to get_vmdb_config() and use Settings class directly thru out the controllers & helpers ○ Change menu roles editor to use TreeBuilderMenuRoles class ○ Toolbar refactoring in PXE, Ansible, Foreman related screens ○ Refactored Start page url related code, moved it into mixins.
  • 11.
    Classic UI (Harpreet Kataria) ●Enhancements ○ Power operations in Service Detail view (in SUI) ○ Launch an URL returned by an automate button ○ Ad hoc metrics for Container Providers ○ “Custom Logos" screen updated to use bootstrap-switch
  • 12.
    Classic UI (Harpreet Kataria) Poweroperations in Service Detail view (in SUI)
  • 13.
    Classic UI (Harpreet Kataria) Launcha URL returned by an automate button Example usage from automate: create a custom button with the check box "Open URL" checked attach a method to it with the text below: $evm.root['vm'].remote_console_url = 'http://www.redhat.com'
  • 14.
    Classic UI (Harpreet Kataria) Adhoc metrics for Container Providers
  • 15.
    Service UI (Chris Kacerguis) ●Several bugs fixes ● Moved many Angular directives to components ● Increased test coverage to 59% ● Code Quality to 4.0 ● Completed many designs for the F release
  • 16.
    Service UI (Chris Kacerguis) ●Added support for viewing information about a VM
  • 17.
    Service UI (Chris Kacerguis) ●Added support for pagination (faster page loads)
  • 18.
  • 19.
    Providers - Containers (GregBlomquist) Custom Attributes Table
  • 20.
    Providers - BugFixes (Greg Blomquist)
  • 21.
    Providers - OtherUpdates (Greg Blomquist) Fix Targeted Refresh for VM Delete Expanding Inventory Refresh Delete Resources associated to VMs
  • 22.
    Providers - General (GregBlomquist) Researching new inventory refresh strategies Data Warehouse Management Containers and Hawkular teams CloudSubnet SupportsFeatureMixin OpenStack team
  • 23.
    Automate (Greg McCullough) AnsibleTower ● Supportprovider name & template name to uniquely identify a template ● Logging improvements ○ Implemented debug logging ○ Improved logging on errors
  • 24.
    Automate (Greg McCullough) ● UseCatalogItemInitialization as the default entry point for Orchestration and AnsibleTower provisioning ● Notification for Service and VM Retirement starting ● Refactoring Automate methods ○ Improved testability ○ Cloud / Orchestration / Operations
  • 25.
    Automate (Greg McCullough) Service Models ●Move snapshot code to Vm model to support RHV features ● Expose custom_attribute methods on ext_management_system ○ custom_keys ○ custom_get ○ custom_set ● Expose miq_groups relationship from User model ○ expose :miq_groups, :association => true
  • 26.
    Automate (Greg McCullough) Engine ● Addtransaction around the automate import_domain method ● RBAC support for Automate Service Models
  • 27.
    Automate (Greg McCullough) RBAC Feature ●Filters access to objects based on current automate user. ● Set at the workspace level, setting persists across methods. ● Disabled by default ○ Automate Methods can call ■ $evm.enable_rbac ■ $evm.disable_rbac ■ $evm.rbac_enabled?
  • 28.
  • 29.
    Platform (Gregg Tanzillo) Enhancements /Bug Fixes ● External Authentication ○ Addressed bugs introduced by CentOS 7.3 ○ Fix for One Time Password support ● Chargeback ○ More refactoring ○ Calculations - rounding, averages
  • 30.
    Platform (Gregg Tanzillo) Enhancements /Bug Fixes ● Appliance Console ○ Fixed wording and default around option for running as a standalone database server ● Settings technical debt - ○ Replaced deprecated calls with new class#method ○ Controllers and models VMDB::Config.new("vmdb").config => ::Settings
  • 31.
    API (Alberto Bellotti) ● APIbumped to the “Fine” 2.4.0-pre version GET /api { "name": "API", "description": "REST API", "version": "2.4.0-pre", "versions": [ { "name": "2.4.0-pre", "href": "http://localhost:3000/api/v2.4.0-pre" } ], … }
  • 32.
    API (Alberto Bellotti) ● Addedsupport for DateTime filtering Implemented via the filter[]= parameter. ■ filter[]=attr operator value ■ For <, > and = operators ■ Works on DateTime attributes for the collection being queried ■ Value formats support the following subset of ISO-8601 ● YYYY-MM-DD ● YYYY-MM-DDTHH:MM:SSZ GET /api/vms?vendor=’redhat’&filter[]=retires_on<2016-12-31
  • 33.
    API (Alberto Bellotti) ● Addedoption to hide resources in responses Needed for Service-UI where simply a count and subcount is needed for a query without needing the resources themselves. ● Provided via the hide parameter, similar syntax as expand, and supporting the resources value as follows: GET /api/services?filter[]=service_id=nil&hide=resources
  • 34.
    API (Alberto Bellotti) ● Policiescreation now require the mode attribute POST /api/policies { “name” : “sample policy”, “description” : “sample policy”, “mode” : “compliance”, “towhat” : “ManageIQ::Providers::Redhat::InfraManager”, “conditions_ids” : [ 1, 2 ] }
  • 35.
    Storage (Rich Oliveri) ● Inthe UI, categorize storage by type. ○ Storage exports categorized by type: block, object, file share, etc. ○ Storage managers categorized by type of storage they export. ■ A given storage manager can export multiple types, thus appearing in multiple categories. ○ Demo (Jerry Keselman)
  • 36.
    Quality Engineering (Dave Johnson) ○Seeing a 10% reduction in total open issues ■ ~20% reduction of high impacting issues ○ Bug re-triage effort identified next top (~75) issues for developer to begin to chase over the next sprint ○ Prototyped new defect weighting metric to help with the prioritization of issues, rolling out this next sprint ○ Stability of overall release looking much better!
  • 37.
    Quality Engineering (Dave Johnson) Continualdecrease in the incoming rate over this last sprint
  • 38.
    Quality Engineering (Dave Johnson) Automation ○Progress made towards tracking down and fixing the infinite spinners / ui quirks introduced from tree re-factor ■ Kudos to Pete for being tenacious enough to stick with it and find it. ■ Still a few more to chase but should be easier now to debug
  • 39.
    Discussion Sprint 51 Review- January 4 Sprint 51 will be 4 weeks instead of 3