SlideShare a Scribd company logo
ManageIQ
Sprint 46 Review - Sprint End September 12, 2016
September 14, 2016
Overview
● Sprint Statistics (Oleg Barenboim)
● Community Update (Carol Chen)
● Service Broker (Jillian Tullo)
● Providers (Greg Blomquist)
● User Interface (Dan Clarizio)
● Platform (Gregg Tanzillo)
● REST API (Alberto Bellotti)
● Automate (Greg McCullough)
● Performance (Dennis Metzger)
● Quality Engineering (Dave Johnson)
● Discussion
Sprint Statistics
(O. Barenboim)
353 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)
DargaBeta
Darga-2
Darga-3
DargaGA
DargaRC
All Repo Stats
(O. Barenboim) Repository Closed
manageiq 353
integration_tests 91
manageiq-ui-self_service 20
manageiq_docs 15
manageiq-providers-amazon 15
manageiq-api-client 10
wrapanapi 9
manageiq.org 6
ui-components 5
azure-armest 3
guides 3
manageiq-appliance 3
linux_admin 2
manageiq-api-client-python 2
manageiq-appliance-build 2
manageiq_core_extensions 1
ovirt_metrics 1
Total 541
Community Update
(Carol Chen)
● “Last Week in ManageIQ” series
○ 8 posts so far! http://manageiq.org/blog/
○ Tagged #LWIMIQ on Twitter, Facebook, Google+
● manageiq.org redesign
○ New look, improved content (and organization)
○ Sneak peek!
New website homepage
New website docs page
Service UI
● Due to the expanding use cases, the “Self Service” UI will be renamed the
“Service UI”
● Moving tests to a separate area (instead of intermixed with the code)
● Adding in Arbitration Rules UI
Service UI - Service Designer
● Service Designer demo time!
● Given by Serena Doyle, from Red Hat’s UX team
Service Broker
● Blueprint API - 90% complete
○ Making a few tweaks and adding tests
● Continuing to work on the arbitration engine
● Moving the Arbitration Profile section to the Service UI
Providers
(G. Blomquist)
Hawkular
● Upgrade of ruby-client to 2.7.0
● JMS support (entities, topology)
● Reports for Transactions (in App servers)
● Support micro-lifecycle for MW-deployments (enable, disable, ...)
● MW provider now uses restful routes
● Bug fixes and smaller enhancements
Containers
● New Reports
○ Pods for images per project
○ Pods per node
Containers
Deployment Wizard
Google
● Provision Preemptible VMs
Azure
● Handle New Events
○ Create Security Group
○ VM Capture
● Provider-specific Logger
OpenStack
● Inventory cloud volume backups
● Show topology for undercloud
OpenStack
Associate / Disassociate Floating IPs
RHEVM
● Get correct host OS version and type
RHEVM
Disk Management in VM Reconfigure
VMware
Filter Storage by Profile
VCloud
● Orchestration Stack Status
● Network Manager and Inventory
Networking
● Allow port ranges for Load Balancers
○ Thanks Joe@Google!
Networking
Load Balancer UI
Pluggable Providers
● Queryable Features (via Supports Feature Mixin)
User Interface
Dan Clarizio
● PRs merged (130)
○ SSUI (2)
○ Bugs (62)
○ Enhancements (24)
○ Tech Debt / Refactoring (13/11)
○ Backported to Darga (16)
● Tech Debt / Refactoring
○ Middleware provider changed to use restful routes like other providers
○ Toolbars refactored - VM and Host
○ Topology cleanup - De-duplicate and simplify topology code before
adding more topology screens
○ Automate Entry Point tree converted to use a shared tree view
User Interface
● Enhancements
○ Added mandatory Subscription field to Azure Discovery screen
○ Added Notifications Drawer and Toast Notifications List
○ Dynatree replaced with bootstrap-treeview
○ Added UI support for vSphere Distributed Switches
○ Added support to show child/parent relations of Orchestration Stacks
○ Added Middleware Messaging entities to topology graph
User Interface
Added Subscription field to Azure Discovery screen
User Interface
Added Notifications Drawer and Toast Notifications List
User Interface
Dynatree replaced with bootstrap-treeview
User Interface
Added UI support for vSphere Distributed Switches
User Interface
VDS - Summary
User Interface
Show child/parent relations of orchestration stacks
User Interface
Show child/parent relations of orchestration stacks
User Interface
Added Middleware Messaging entities to topology graph
Platform
Gregg Tanzillo
Enhancements - 73 PRs Merged
● Centralized Administration
● Database Maintenance
● Chargeback
● Notification Backend
● Tenancy
● PostgreSQL High Availability
● API
Platform
Gregg Tanzillo
Centralized Administration
● Server to server authentication
● Invoke tasks on a remote regions
● Leverages new API client (WIP)
Platform
Gregg Tanzillo
Database Maintenance
● Hourly reindex
○ High Churn Tables
● Periodic full vacuum
Platform
Gregg Tanzillo
Chargeback
● Support for generating chargeback for services
● To be used in SSUI for showing the cost of a service
Platform
Gregg Tanzillo
Notification Backend
● Model for asynchronous notifications
● Authentication token generation for web sockets
● API for notification drawer
Platform
Gregg Tanzillo
Tenancy
● Mapping Cloud Tenants to ManageIQ Tenants
○ Post refresh hook on OpenStack provider
○ Create provider base tenant under a root tenant
○ Cloud Tenant tree generated under provider base
tenant
○ Create / Update / Delete
● Demo (Libor)
Platform
Nick Carboni
PostgreSQL High Availability
● DB Cluster - Primary, Standby(s)
● repmgr (replication)
● Failover
○ Primary to Standby
○ EVM server to new primary DB
● Demo
API
Alberto Bellotti
● Refactoring
● Changing the namespace (Api)
● Removing custom routing
○ Now simply
■ api
■ api/vms
■ api/groups
● Converting collections to individual controllers
○ All under app/controllers/api/
■ Api::VmsController
■ Api::GroupsController
■ etc.
● Moving the entrypoint to the ApiController
○ In app/controllers/api/api_controller.rb
■ Api::ApiController
API
Alberto Bellotti
● Token manager was enhanced to support web sockets
API Authentication was updated to support the requester_type of ws
GET /api/auth?requester_type=ws
Note: requester_type=ws tokens generated cannot be used for API/SSUI
authentication, only for Web Sockets
API
Alberto Bellotti
● Added support for UI notification drawer
● New /api/notifications collection
● Supporting queries for authenticated user and mark_as_seen action
Querying
○ GET /api/notifications
Marking notifications as seen via the mark_as_seen action:
○ POST /api/notifications/:id action mark_as_seen for single notification
○ POST /api/notifications action mark_as_seen for multiple notifications
API
Alberto Bellotti
● Added querying for cockpit support
Just as supports_console? was being queried by SSUI, supports_cockpit? is
now also queryable.
GET /api/services/:id?expand=vms&decorators=vms.supports_cockpit??
API
Alberto Bellotti
● API entrypoint was enhanced to return details about the appliance via
server_info
This was required for the new SSUI About screen:
GET /api
{
...
"server_info" : {
"version" : "master",
"build" : "20160913085058_91f42e2",
"appliance" : "EVM"
},
...
}
API
Alberto Bellotti
● Added support for Bulk queries
● Current GET interface even with filter[] is limiting if one requires to fetch a large set of
resources.
● Resources currently accessible via id or href.
● Collection specific attributes to follow (i.e. guid for vms, description for groups, etc).
● Implemented via the query POST action:
POST /api/vms
{
“action” : “query”,
“resources” : [
{ “id” : 112 },
{ “id” : 135 },
{ “href” : “http://localhost:3000/api/vms/160” },
{ “href” : “http://localhost:3000/api/vms/172” },
...
]
}
API
Alberto Bellotti
● Blueprint updates now supports removal of the Service Catalog or Service
Dialog from a Blueprint.
POST /api/blueprints/:id
{
“action” : “edit”,
“resource” : {
“bundle” : {
“service_catalog” : nil,
“service_dialog” : nil
}
}
}
Automate
Greg McCullough
● Import Rake task enhancement to support OVERWRITE
argument.
○ Setting the OVERWRITE=true argument removes
the target domain prior to import.
● Retirement extend_retires_on method.
○ New method can be used by Automate methods to
set a retirement date a specified number of days from
today, or from a future date.
○ Method: extend_retires_on(days, date = Time.zone.today)
○ Supported Models: Service, VM/Templates, Orchestration Stacks
Automate
Greg McCullough
● Updated Service model:
MiqAeServiceHardware
expose :partitions, :association => true
● New Service model updates:
MiqAeServicePartition
expose :disk, :association => true
expose :hardware, :association => true
expose :volumes, :association => true
MiqAeServiceVolume
expose :hardware, :association => true
expose :partitions, :association => true
Automate
Greg McCullough
● Azure support added for Cloud Provisioning.
● Schema change in Method class.
Automate
Greg McCullough
● Description for Datastore Reset action now includes
list of target domains.
Previous Text:
Performance
Dennis Metzger
27 PRs merged focused on 2 areas:
● Tree Builder
○ 10 screens e.g.: VM explorer, Services explorer
● Virtual Delegates
○ VM explorer (ldap)
Performance
Tree Builder /vm_infra/explorer
Changed 10 Builders with a common pattern ( ‘to_a’ or ‘+’)
# before
Rbac.filtered(Vm.archived + MiqTemplate.archived).size
# after
Rbac.filtered(Vm.archived).size +
Rbac.filtered(MiqTemplate.archived).size
9% faster, 32% fewer rows (3k active vms, 3k archived vms)
Performance
Tree Builder & ancestry - /services/explorer
Changes Part #1
# before
children =
Rbac.filtered(object.direct_service_children.select(&:display))
children.sort_by(&:name)
# after
descendants = Rbac.filtered(Service.where(:display => true))
Service.arrange_nodes(descendants)
60% faster, 98% fewer queries, 32% fewer db rows returned
Performance
Virtual Delegate - My LDAP @ /vm_infra/explorer
# before
def owned_by_current_user
User.current_userid == evm_owner_userid
End
# after
virtual_attribute :owned_by_current_user, :boolean,
:uses => :evm_owner, :arel => (lambda do |t|
arel_attribute(:evm_owner_userid).eq(User.current_userid)
end)
● 57m -> 0.13m objects, 112 -> 20 queries
● 99.5% faster ( 93.8s -> 0.5s)
Performance
Tree Builder & ancestry - /services/explorer
Changes Part #2
helper.image_path() enhancements
50% additional speed gain
Overall Results (10k services)
● 81% Faster overall change
● Total time: 21.6s down to 4s
Added a) default value and b) delegating to a different name
# before
virtual_attribute :evm_owner_userid, :string, :uses => :evm_owner
def evm_owner_userid
evm_owner.try(:userid)
end
# after
virtual_delegate :userid, :to => :evm_owner,
:prefix => true, :allow_nil => true
Vms. sort by v_total_snapshots (10k VMs)
● 44.3s -> 9.3s 79% faster, 81k -> 51k db rows
Performance
Virtual Delegate
Quality Engineering
Dave Johnson
● Continuing to test features from Sprint 45
○ Opening GH issues where we find problems
○ Beginning to use ‘blocker’ label for major issues
■ This might need to be revisited for better categorization
● Reviewed test cases
○ We want to schedule some calls around reviewing test coverage with
development and really anyone interested
○ Interested in helping out? Contact dajohnso@redhat.com.
● Continuing with bug verification
○ A LOT of good bug fixing going on between Darga and Euwe release
Quality Engineering
Peter Savage
FrameWork 3.0 (FW30) Update
● Appliance object is now registered with Sentaku for UI only
○ Still needs work on converting the other objects so for now not usable
● navmazing merged
○ New navigation library is merged and is ready to be used
○ izapolsk and mshriver are starting work on converting some navigation destinations
○ navmazing + ui_navigate do not conflict and so we will slowly phase cutover
○ Object based
○ More explicit (more verbose)
○ No context passing
○ Version Pick friendly
○ am_i_here support
i. Great for shortcutting
Quality Engineering
Peter Savage
UI_NAVIGATE (OLD)
prov = Provider.from_config(data)
navigate_to(prov, 'Details')
prov = Provider.from_config(data)
sel.force_navigate(“cloud_provider”, context={“provider”: prov})
NAVMAZING (NEW)
Quality Engineering
Milan Falešník
Widgetastic
● A nice way to represent UIs in the testing suite
● Currently building up some basic Patternfly library of items in ManageIQ
○ “If your product uses Patternfly, you should be able to use this to test the
UI interactions”
○ … shhh … they might be interested in using this for testing PF too …
A couple of screens are being modeled in this to get the right feel. Seems good so far …
https://github.com/RedHatQE/widgetastic.core - Contains the core library + some basic widgets like <input>
Quality Engineering
Milan Falešník
class AuthTab(Tab):
ROOT = '//div[@id="auth_tabs"]/ul'
class CloudProviderProperties(View):
provider_type = BootstrapSelect('#ems_type')
name = Input(name='name')
api_version = BootstrapSelect('#ems_api_version')
@WidgetDescriptor
class default(AuthTab): # noqa
TAB_NAME = 'Default'
hostname = Input(name='default_hostname')
api_port = Input(name='default_api_port')
sec_protocol = BootstrapSelect('#default_security_protocol')
@WidgetDescriptor
class events(AuthTab): # noqa
TAB_NAME = 'Events'
hostname = Input(name='amqp_hostname')
api_port = Input(name='amqp_api_port')
sec_protocol = BootstrapSelect('#amqp_security_protocol')
Discussion
Sprint 47 Review - October 5

More Related Content

What's hot

Sprint 68
Sprint 68Sprint 68
Sprint 68
ManageIQ
 
Sprint 70
Sprint 70Sprint 70
Sprint 70
ManageIQ
 
Sprint 51 review
Sprint 51 reviewSprint 51 review
Sprint 51 review
ManageIQ
 
Sprint 39 review
Sprint 39 reviewSprint 39 review
Sprint 39 review
ManageIQ
 
Sprint 67
Sprint 67Sprint 67
Sprint 67
ManageIQ
 
Sprint 50 review
Sprint 50 reviewSprint 50 review
Sprint 50 review
ManageIQ
 
Sprint 43 Review
Sprint 43 ReviewSprint 43 Review
Sprint 43 Review
ManageIQ
 
Sprint 61
Sprint 61Sprint 61
Sprint 61
ManageIQ
 
Sprint 66
Sprint 66Sprint 66
Sprint 66
ManageIQ
 
Sprint 40 review
Sprint 40 reviewSprint 40 review
Sprint 40 review
ManageIQ
 
Sprint 16 report
Sprint 16 reportSprint 16 report
Sprint 16 report
ManageIQ
 
Sprint 63
Sprint 63Sprint 63
Sprint 63
ManageIQ
 
Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016
Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016
Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016
ManageIQ
 
Sprint 65
Sprint 65Sprint 65
Sprint 65
ManageIQ
 
Sprint 159
Sprint 159Sprint 159
Sprint 159
ManageIQ
 
Sprint 38 review
Sprint 38 reviewSprint 38 review
Sprint 38 review
ManageIQ
 
Sprint 42 review
Sprint 42 reviewSprint 42 review
Sprint 42 review
ManageIQ
 
Sprint 77
Sprint 77Sprint 77
Sprint 77
ManageIQ
 
Sprint 92
Sprint 92Sprint 92
Sprint 92
ManageIQ
 
Sprint 116
Sprint 116Sprint 116
Sprint 116
ManageIQ
 

What's hot (20)

Sprint 68
Sprint 68Sprint 68
Sprint 68
 
Sprint 70
Sprint 70Sprint 70
Sprint 70
 
Sprint 51 review
Sprint 51 reviewSprint 51 review
Sprint 51 review
 
Sprint 39 review
Sprint 39 reviewSprint 39 review
Sprint 39 review
 
Sprint 67
Sprint 67Sprint 67
Sprint 67
 
Sprint 50 review
Sprint 50 reviewSprint 50 review
Sprint 50 review
 
Sprint 43 Review
Sprint 43 ReviewSprint 43 Review
Sprint 43 Review
 
Sprint 61
Sprint 61Sprint 61
Sprint 61
 
Sprint 66
Sprint 66Sprint 66
Sprint 66
 
Sprint 40 review
Sprint 40 reviewSprint 40 review
Sprint 40 review
 
Sprint 16 report
Sprint 16 reportSprint 16 report
Sprint 16 report
 
Sprint 63
Sprint 63Sprint 63
Sprint 63
 
Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016
Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016
Investigative Debugging - Peter McGowan - ManageIQ Design Summit 2016
 
Sprint 65
Sprint 65Sprint 65
Sprint 65
 
Sprint 159
Sprint 159Sprint 159
Sprint 159
 
Sprint 38 review
Sprint 38 reviewSprint 38 review
Sprint 38 review
 
Sprint 42 review
Sprint 42 reviewSprint 42 review
Sprint 42 review
 
Sprint 77
Sprint 77Sprint 77
Sprint 77
 
Sprint 92
Sprint 92Sprint 92
Sprint 92
 
Sprint 116
Sprint 116Sprint 116
Sprint 116
 

Similar to Sprint 46 review

Sprint 59
Sprint 59Sprint 59
Sprint 59
ManageIQ
 
Sprint 60
Sprint 60Sprint 60
Sprint 60
ManageIQ
 
Sprint 73
Sprint 73Sprint 73
Sprint 73
ManageIQ
 
Sprint 58
Sprint 58Sprint 58
Sprint 58
ManageIQ
 
Sprint 53
Sprint 53Sprint 53
Sprint 53
ManageIQ
 
Sprint 54
Sprint 54Sprint 54
Sprint 54
ManageIQ
 
Sprint 78
Sprint 78Sprint 78
Sprint 78
ManageIQ
 
Sprint 41 review
Sprint 41 reviewSprint 41 review
Sprint 41 review
ManageIQ
 
Sprint 41 review
Sprint 41 reviewSprint 41 review
Sprint 41 review
Marianne Feifer
 
Sprint 62
Sprint 62Sprint 62
Sprint 62
ManageIQ
 
Sprint 121
Sprint 121Sprint 121
Sprint 121
ManageIQ
 
Sprint 64
Sprint 64Sprint 64
Sprint 64
ManageIQ
 
Sprint 82
Sprint 82Sprint 82
Sprint 82
ManageIQ
 
Sprint 31
Sprint 31Sprint 31
Sprint 31
ManageIQ
 
Sprint 30
Sprint 30Sprint 30
Sprint 30
ManageIQ
 
Sprint 85
Sprint 85Sprint 85
Sprint 85
ManageIQ
 
Sprint 57
Sprint 57Sprint 57
Sprint 57
ManageIQ
 
Sprint 86
Sprint 86Sprint 86
Sprint 86
ManageIQ
 

Similar to Sprint 46 review (18)

Sprint 59
Sprint 59Sprint 59
Sprint 59
 
Sprint 60
Sprint 60Sprint 60
Sprint 60
 
Sprint 73
Sprint 73Sprint 73
Sprint 73
 
Sprint 58
Sprint 58Sprint 58
Sprint 58
 
Sprint 53
Sprint 53Sprint 53
Sprint 53
 
Sprint 54
Sprint 54Sprint 54
Sprint 54
 
Sprint 78
Sprint 78Sprint 78
Sprint 78
 
Sprint 41 review
Sprint 41 reviewSprint 41 review
Sprint 41 review
 
Sprint 41 review
Sprint 41 reviewSprint 41 review
Sprint 41 review
 
Sprint 62
Sprint 62Sprint 62
Sprint 62
 
Sprint 121
Sprint 121Sprint 121
Sprint 121
 
Sprint 64
Sprint 64Sprint 64
Sprint 64
 
Sprint 82
Sprint 82Sprint 82
Sprint 82
 
Sprint 31
Sprint 31Sprint 31
Sprint 31
 
Sprint 30
Sprint 30Sprint 30
Sprint 30
 
Sprint 85
Sprint 85Sprint 85
Sprint 85
 
Sprint 57
Sprint 57Sprint 57
Sprint 57
 
Sprint 86
Sprint 86Sprint 86
Sprint 86
 

More from ManageIQ

ManageIQ - Sprint 239 Review - Slide Deck
ManageIQ - Sprint 239 Review - Slide DeckManageIQ - Sprint 239 Review - Slide Deck
ManageIQ - Sprint 239 Review - Slide Deck
ManageIQ
 
ManaegIQ - Sprint 238 Review - Slide Deck
ManaegIQ - Sprint 238 Review - Slide DeckManaegIQ - Sprint 238 Review - Slide Deck
ManaegIQ - Sprint 238 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 237 Review - Slide Deck
ManageIQ - Sprint 237 Review - Slide DeckManageIQ - Sprint 237 Review - Slide Deck
ManageIQ - Sprint 237 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 235 Review - Slide Deck
ManageIQ - Sprint 235 Review - Slide DeckManageIQ - Sprint 235 Review - Slide Deck
ManageIQ - Sprint 235 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 234 Review - Slide Deck
ManageIQ - Sprint 234 Review - Slide DeckManageIQ - Sprint 234 Review - Slide Deck
ManageIQ - Sprint 234 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 233 Review - Slide Deck
ManageIQ - Sprint 233 Review - Slide DeckManageIQ - Sprint 233 Review - Slide Deck
ManageIQ - Sprint 233 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 232 Review - Slide Deck
ManageIQ - Sprint 232 Review - Slide DeckManageIQ - Sprint 232 Review - Slide Deck
ManageIQ - Sprint 232 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 231 Review - Slide Deck
ManageIQ - Sprint 231 Review - Slide DeckManageIQ - Sprint 231 Review - Slide Deck
ManageIQ - Sprint 231 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 230 Review - Slide Deck
ManageIQ - Sprint 230 Review - Slide DeckManageIQ - Sprint 230 Review - Slide Deck
ManageIQ - Sprint 230 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 229 Review - Slide Deck
ManageIQ - Sprint 229 Review - Slide DeckManageIQ - Sprint 229 Review - Slide Deck
ManageIQ - Sprint 229 Review - Slide Deck
ManageIQ
 
ManageIQ - Sprint 228 Review - Slide Deck
ManageIQ - Sprint 228 Review - Slide DeckManageIQ - Sprint 228 Review - Slide Deck
ManageIQ - Sprint 228 Review - Slide Deck
ManageIQ
 
Sprint 227
Sprint 227Sprint 227
Sprint 227
ManageIQ
 
Sprint 226
Sprint 226Sprint 226
Sprint 226
ManageIQ
 
Sprint 225
Sprint 225Sprint 225
Sprint 225
ManageIQ
 
Sprint 224
Sprint 224Sprint 224
Sprint 224
ManageIQ
 
Sprint 223
Sprint 223Sprint 223
Sprint 223
ManageIQ
 
Sprint 222
Sprint 222Sprint 222
Sprint 222
ManageIQ
 
Sprint 221
Sprint 221Sprint 221
Sprint 221
ManageIQ
 
Sprint 220
Sprint 220Sprint 220
Sprint 220
ManageIQ
 

More from ManageIQ (20)

ManageIQ - Sprint 239 Review - Slide Deck
ManageIQ - Sprint 239 Review - Slide DeckManageIQ - Sprint 239 Review - Slide Deck
ManageIQ - Sprint 239 Review - Slide Deck
 
ManaegIQ - Sprint 238 Review - Slide Deck
ManaegIQ - Sprint 238 Review - Slide DeckManaegIQ - Sprint 238 Review - Slide Deck
ManaegIQ - Sprint 238 Review - Slide Deck
 
ManageIQ - Sprint 237 Review - Slide Deck
ManageIQ - Sprint 237 Review - Slide DeckManageIQ - Sprint 237 Review - Slide Deck
ManageIQ - Sprint 237 Review - Slide Deck
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
ManageIQ - Sprint 235 Review - Slide Deck
ManageIQ - Sprint 235 Review - Slide DeckManageIQ - Sprint 235 Review - Slide Deck
ManageIQ - Sprint 235 Review - Slide Deck
 
ManageIQ - Sprint 234 Review - Slide Deck
ManageIQ - Sprint 234 Review - Slide DeckManageIQ - Sprint 234 Review - Slide Deck
ManageIQ - Sprint 234 Review - Slide Deck
 
ManageIQ - Sprint 233 Review - Slide Deck
ManageIQ - Sprint 233 Review - Slide DeckManageIQ - Sprint 233 Review - Slide Deck
ManageIQ - Sprint 233 Review - Slide Deck
 
ManageIQ - Sprint 232 Review - Slide Deck
ManageIQ - Sprint 232 Review - Slide DeckManageIQ - Sprint 232 Review - Slide Deck
ManageIQ - Sprint 232 Review - Slide Deck
 
ManageIQ - Sprint 231 Review - Slide Deck
ManageIQ - Sprint 231 Review - Slide DeckManageIQ - Sprint 231 Review - Slide Deck
ManageIQ - Sprint 231 Review - Slide Deck
 
ManageIQ - Sprint 230 Review - Slide Deck
ManageIQ - Sprint 230 Review - Slide DeckManageIQ - Sprint 230 Review - Slide Deck
ManageIQ - Sprint 230 Review - Slide Deck
 
ManageIQ - Sprint 229 Review - Slide Deck
ManageIQ - Sprint 229 Review - Slide DeckManageIQ - Sprint 229 Review - Slide Deck
ManageIQ - Sprint 229 Review - Slide Deck
 
ManageIQ - Sprint 228 Review - Slide Deck
ManageIQ - Sprint 228 Review - Slide DeckManageIQ - Sprint 228 Review - Slide Deck
ManageIQ - Sprint 228 Review - Slide Deck
 
Sprint 227
Sprint 227Sprint 227
Sprint 227
 
Sprint 226
Sprint 226Sprint 226
Sprint 226
 
Sprint 225
Sprint 225Sprint 225
Sprint 225
 
Sprint 224
Sprint 224Sprint 224
Sprint 224
 
Sprint 223
Sprint 223Sprint 223
Sprint 223
 
Sprint 222
Sprint 222Sprint 222
Sprint 222
 
Sprint 221
Sprint 221Sprint 221
Sprint 221
 
Sprint 220
Sprint 220Sprint 220
Sprint 220
 

Recently uploaded

welcome to presentation on Google Apps
welcome to   presentation on Google Appswelcome to   presentation on Google Apps
welcome to presentation on Google Apps
AsifKarimJim
 
Girls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in City
Girls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in CityGirls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in City
Girls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in City
neshakor5152
 
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
SimonedeGijt
 
🚂🚘 Premium Girls Call Ranchi 🛵🚡000XX00000 💃 Choose Best And Top Girl Service...
🚂🚘 Premium Girls Call Ranchi  🛵🚡000XX00000 💃 Choose Best And Top Girl Service...🚂🚘 Premium Girls Call Ranchi  🛵🚡000XX00000 💃 Choose Best And Top Girl Service...
🚂🚘 Premium Girls Call Ranchi 🛵🚡000XX00000 💃 Choose Best And Top Girl Service...
bahubalikumar09988
 
AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.
AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.
AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.
Srinivas Dukka
 
Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...
Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...
Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...
OnePlan Solutions
 
How To Fill Timesheet in TaskSprint: Quick Guide 2024
How To Fill Timesheet in TaskSprint: Quick Guide 2024How To Fill Timesheet in TaskSprint: Quick Guide 2024
How To Fill Timesheet in TaskSprint: Quick Guide 2024
TaskSprint | Employee Efficiency Software
 
React Native vs Flutter - SSTech System
React Native vs Flutter  - SSTech SystemReact Native vs Flutter  - SSTech System
React Native vs Flutter - SSTech System
SSTech System
 
To Avoid Mistakes When Using Online Attendance Sheets
To Avoid Mistakes When Using Online Attendance SheetsTo Avoid Mistakes When Using Online Attendance Sheets
To Avoid Mistakes When Using Online Attendance Sheets
Task Tracker
 
Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...
Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...
Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...
revolutionary575
 
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdf
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdfAI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdf
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdf
Daniel Zivkovic
 
Top Chinese Government-backed APT Groups
Top Chinese Government-backed APT GroupsTop Chinese Government-backed APT Groups
Top Chinese Government-backed APT Groups
SOCRadar
 
Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...
Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...
Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...
simran hot girls
 
Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...
Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...
Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...
3610stuck
 
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdf
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdfA Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdf
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdf
kalichargn70th171
 
Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...
Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...
Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...
87tomato
 
ThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and DjangoThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and Django
akshesh doshi
 
Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...
Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...
Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...
bhumivarma35300
 
Odoo E-commerce website development guides
Odoo E-commerce website development guidesOdoo E-commerce website development guides
Odoo E-commerce website development guides
jhkdigitalmarketing
 
Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...
Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...
Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...
902basic
 

Recently uploaded (20)

welcome to presentation on Google Apps
welcome to   presentation on Google Appswelcome to   presentation on Google Apps
welcome to presentation on Google Apps
 
Girls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in City
Girls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in CityGirls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in City
Girls Call Mysore 000XX00000 Provide Best And Top Girl Service And No1 in City
 
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
 
🚂🚘 Premium Girls Call Ranchi 🛵🚡000XX00000 💃 Choose Best And Top Girl Service...
🚂🚘 Premium Girls Call Ranchi  🛵🚡000XX00000 💃 Choose Best And Top Girl Service...🚂🚘 Premium Girls Call Ranchi  🛵🚡000XX00000 💃 Choose Best And Top Girl Service...
🚂🚘 Premium Girls Call Ranchi 🛵🚡000XX00000 💃 Choose Best And Top Girl Service...
 
AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.
AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.
AWS DevOps-Tutorial CHANAKYA SRIYAN DUKKA.
 
Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...
Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...
Maximizing Efficiency and Profitability: Optimizing Data Systems, Enhancing C...
 
How To Fill Timesheet in TaskSprint: Quick Guide 2024
How To Fill Timesheet in TaskSprint: Quick Guide 2024How To Fill Timesheet in TaskSprint: Quick Guide 2024
How To Fill Timesheet in TaskSprint: Quick Guide 2024
 
React Native vs Flutter - SSTech System
React Native vs Flutter  - SSTech SystemReact Native vs Flutter  - SSTech System
React Native vs Flutter - SSTech System
 
To Avoid Mistakes When Using Online Attendance Sheets
To Avoid Mistakes When Using Online Attendance SheetsTo Avoid Mistakes When Using Online Attendance Sheets
To Avoid Mistakes When Using Online Attendance Sheets
 
Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...
Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...
Busty Girls Call Mumbai 9930245274 Unlimited Short Providing Girls Service Av...
 
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdf
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdfAI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdf
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdf
 
Top Chinese Government-backed APT Groups
Top Chinese Government-backed APT GroupsTop Chinese Government-backed APT Groups
Top Chinese Government-backed APT Groups
 
Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...
Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...
Girls Call Jogeshwari 9967584737 Provide Best And Top Girl Service And No1 in...
 
Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...
Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...
Mumbai Girls Call Mumbai 🎈🔥9930687706 🔥💋🎈 Provide Best And Top Girl Service A...
 
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdf
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdfA Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdf
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdf
 
Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...
Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...
Verified Girls Call Mumbai 👀 9820252231 👀 Cash Payment With Room DeliveryDeli...
 
ThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and DjangoThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and Django
 
Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...
Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...
Independent Girls call Service Pune 000XX00000 Provide Best And Top Girl Serv...
 
Odoo E-commerce website development guides
Odoo E-commerce website development guidesOdoo E-commerce website development guides
Odoo E-commerce website development guides
 
Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...
Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...
Private Girls Call Navi Mumbai 🛵🚡9820252231 💃 Choose Best And Top Girl Servic...
 

Sprint 46 review

  • 1. ManageIQ Sprint 46 Review - Sprint End September 12, 2016 September 14, 2016
  • 2. Overview ● Sprint Statistics (Oleg Barenboim) ● Community Update (Carol Chen) ● Service Broker (Jillian Tullo) ● Providers (Greg Blomquist) ● User Interface (Dan Clarizio) ● Platform (Gregg Tanzillo) ● REST API (Alberto Bellotti) ● Automate (Greg McCullough) ● Performance (Dennis Metzger) ● Quality Engineering (Dave Johnson) ● Discussion
  • 3. Sprint Statistics (O. Barenboim) 353 Pull Requests Merged for ManageIQ/manageiq
  • 4. PR Breakdown by Feature Category (O. Barenboim) * Note that some PRs have more than one category. Providers
  • 6. All Repo Stats (O. Barenboim) Repository Closed manageiq 353 integration_tests 91 manageiq-ui-self_service 20 manageiq_docs 15 manageiq-providers-amazon 15 manageiq-api-client 10 wrapanapi 9 manageiq.org 6 ui-components 5 azure-armest 3 guides 3 manageiq-appliance 3 linux_admin 2 manageiq-api-client-python 2 manageiq-appliance-build 2 manageiq_core_extensions 1 ovirt_metrics 1 Total 541
  • 7. Community Update (Carol Chen) ● “Last Week in ManageIQ” series ○ 8 posts so far! http://manageiq.org/blog/ ○ Tagged #LWIMIQ on Twitter, Facebook, Google+ ● manageiq.org redesign ○ New look, improved content (and organization) ○ Sneak peek!
  • 10. Service UI ● Due to the expanding use cases, the “Self Service” UI will be renamed the “Service UI” ● Moving tests to a separate area (instead of intermixed with the code) ● Adding in Arbitration Rules UI
  • 11. Service UI - Service Designer ● Service Designer demo time! ● Given by Serena Doyle, from Red Hat’s UX team
  • 12. Service Broker ● Blueprint API - 90% complete ○ Making a few tweaks and adding tests ● Continuing to work on the arbitration engine ● Moving the Arbitration Profile section to the Service UI
  • 14. Hawkular ● Upgrade of ruby-client to 2.7.0 ● JMS support (entities, topology) ● Reports for Transactions (in App servers) ● Support micro-lifecycle for MW-deployments (enable, disable, ...) ● MW provider now uses restful routes ● Bug fixes and smaller enhancements
  • 15. Containers ● New Reports ○ Pods for images per project ○ Pods per node
  • 18. Azure ● Handle New Events ○ Create Security Group ○ VM Capture ● Provider-specific Logger
  • 19. OpenStack ● Inventory cloud volume backups ● Show topology for undercloud
  • 21. RHEVM ● Get correct host OS version and type
  • 22. RHEVM Disk Management in VM Reconfigure
  • 24. VCloud ● Orchestration Stack Status ● Network Manager and Inventory
  • 25. Networking ● Allow port ranges for Load Balancers ○ Thanks Joe@Google!
  • 27. Pluggable Providers ● Queryable Features (via Supports Feature Mixin)
  • 28. User Interface Dan Clarizio ● PRs merged (130) ○ SSUI (2) ○ Bugs (62) ○ Enhancements (24) ○ Tech Debt / Refactoring (13/11) ○ Backported to Darga (16) ● Tech Debt / Refactoring ○ Middleware provider changed to use restful routes like other providers ○ Toolbars refactored - VM and Host ○ Topology cleanup - De-duplicate and simplify topology code before adding more topology screens ○ Automate Entry Point tree converted to use a shared tree view
  • 29. User Interface ● Enhancements ○ Added mandatory Subscription field to Azure Discovery screen ○ Added Notifications Drawer and Toast Notifications List ○ Dynatree replaced with bootstrap-treeview ○ Added UI support for vSphere Distributed Switches ○ Added support to show child/parent relations of Orchestration Stacks ○ Added Middleware Messaging entities to topology graph
  • 30. User Interface Added Subscription field to Azure Discovery screen
  • 31. User Interface Added Notifications Drawer and Toast Notifications List
  • 32. User Interface Dynatree replaced with bootstrap-treeview
  • 33. User Interface Added UI support for vSphere Distributed Switches
  • 35. User Interface Show child/parent relations of orchestration stacks
  • 36. User Interface Show child/parent relations of orchestration stacks
  • 37. User Interface Added Middleware Messaging entities to topology graph
  • 38. Platform Gregg Tanzillo Enhancements - 73 PRs Merged ● Centralized Administration ● Database Maintenance ● Chargeback ● Notification Backend ● Tenancy ● PostgreSQL High Availability ● API
  • 39. Platform Gregg Tanzillo Centralized Administration ● Server to server authentication ● Invoke tasks on a remote regions ● Leverages new API client (WIP)
  • 40. Platform Gregg Tanzillo Database Maintenance ● Hourly reindex ○ High Churn Tables ● Periodic full vacuum
  • 41. Platform Gregg Tanzillo Chargeback ● Support for generating chargeback for services ● To be used in SSUI for showing the cost of a service
  • 42. Platform Gregg Tanzillo Notification Backend ● Model for asynchronous notifications ● Authentication token generation for web sockets ● API for notification drawer
  • 43. Platform Gregg Tanzillo Tenancy ● Mapping Cloud Tenants to ManageIQ Tenants ○ Post refresh hook on OpenStack provider ○ Create provider base tenant under a root tenant ○ Cloud Tenant tree generated under provider base tenant ○ Create / Update / Delete ● Demo (Libor)
  • 44. Platform Nick Carboni PostgreSQL High Availability ● DB Cluster - Primary, Standby(s) ● repmgr (replication) ● Failover ○ Primary to Standby ○ EVM server to new primary DB ● Demo
  • 45. API Alberto Bellotti ● Refactoring ● Changing the namespace (Api) ● Removing custom routing ○ Now simply ■ api ■ api/vms ■ api/groups ● Converting collections to individual controllers ○ All under app/controllers/api/ ■ Api::VmsController ■ Api::GroupsController ■ etc. ● Moving the entrypoint to the ApiController ○ In app/controllers/api/api_controller.rb ■ Api::ApiController
  • 46. API Alberto Bellotti ● Token manager was enhanced to support web sockets API Authentication was updated to support the requester_type of ws GET /api/auth?requester_type=ws Note: requester_type=ws tokens generated cannot be used for API/SSUI authentication, only for Web Sockets
  • 47. API Alberto Bellotti ● Added support for UI notification drawer ● New /api/notifications collection ● Supporting queries for authenticated user and mark_as_seen action Querying ○ GET /api/notifications Marking notifications as seen via the mark_as_seen action: ○ POST /api/notifications/:id action mark_as_seen for single notification ○ POST /api/notifications action mark_as_seen for multiple notifications
  • 48. API Alberto Bellotti ● Added querying for cockpit support Just as supports_console? was being queried by SSUI, supports_cockpit? is now also queryable. GET /api/services/:id?expand=vms&decorators=vms.supports_cockpit??
  • 49. API Alberto Bellotti ● API entrypoint was enhanced to return details about the appliance via server_info This was required for the new SSUI About screen: GET /api { ... "server_info" : { "version" : "master", "build" : "20160913085058_91f42e2", "appliance" : "EVM" }, ... }
  • 50. API Alberto Bellotti ● Added support for Bulk queries ● Current GET interface even with filter[] is limiting if one requires to fetch a large set of resources. ● Resources currently accessible via id or href. ● Collection specific attributes to follow (i.e. guid for vms, description for groups, etc). ● Implemented via the query POST action: POST /api/vms { “action” : “query”, “resources” : [ { “id” : 112 }, { “id” : 135 }, { “href” : “http://localhost:3000/api/vms/160” }, { “href” : “http://localhost:3000/api/vms/172” }, ... ] }
  • 51. API Alberto Bellotti ● Blueprint updates now supports removal of the Service Catalog or Service Dialog from a Blueprint. POST /api/blueprints/:id { “action” : “edit”, “resource” : { “bundle” : { “service_catalog” : nil, “service_dialog” : nil } } }
  • 52. Automate Greg McCullough ● Import Rake task enhancement to support OVERWRITE argument. ○ Setting the OVERWRITE=true argument removes the target domain prior to import. ● Retirement extend_retires_on method. ○ New method can be used by Automate methods to set a retirement date a specified number of days from today, or from a future date. ○ Method: extend_retires_on(days, date = Time.zone.today) ○ Supported Models: Service, VM/Templates, Orchestration Stacks
  • 53. Automate Greg McCullough ● Updated Service model: MiqAeServiceHardware expose :partitions, :association => true ● New Service model updates: MiqAeServicePartition expose :disk, :association => true expose :hardware, :association => true expose :volumes, :association => true MiqAeServiceVolume expose :hardware, :association => true expose :partitions, :association => true
  • 54. Automate Greg McCullough ● Azure support added for Cloud Provisioning. ● Schema change in Method class.
  • 55. Automate Greg McCullough ● Description for Datastore Reset action now includes list of target domains. Previous Text:
  • 56. Performance Dennis Metzger 27 PRs merged focused on 2 areas: ● Tree Builder ○ 10 screens e.g.: VM explorer, Services explorer ● Virtual Delegates ○ VM explorer (ldap)
  • 57. Performance Tree Builder /vm_infra/explorer Changed 10 Builders with a common pattern ( ‘to_a’ or ‘+’) # before Rbac.filtered(Vm.archived + MiqTemplate.archived).size # after Rbac.filtered(Vm.archived).size + Rbac.filtered(MiqTemplate.archived).size 9% faster, 32% fewer rows (3k active vms, 3k archived vms)
  • 58. Performance Tree Builder & ancestry - /services/explorer Changes Part #1 # before children = Rbac.filtered(object.direct_service_children.select(&:display)) children.sort_by(&:name) # after descendants = Rbac.filtered(Service.where(:display => true)) Service.arrange_nodes(descendants) 60% faster, 98% fewer queries, 32% fewer db rows returned
  • 59. Performance Virtual Delegate - My LDAP @ /vm_infra/explorer # before def owned_by_current_user User.current_userid == evm_owner_userid End # after virtual_attribute :owned_by_current_user, :boolean, :uses => :evm_owner, :arel => (lambda do |t| arel_attribute(:evm_owner_userid).eq(User.current_userid) end) ● 57m -> 0.13m objects, 112 -> 20 queries ● 99.5% faster ( 93.8s -> 0.5s)
  • 60. Performance Tree Builder & ancestry - /services/explorer Changes Part #2 helper.image_path() enhancements 50% additional speed gain Overall Results (10k services) ● 81% Faster overall change ● Total time: 21.6s down to 4s
  • 61. Added a) default value and b) delegating to a different name # before virtual_attribute :evm_owner_userid, :string, :uses => :evm_owner def evm_owner_userid evm_owner.try(:userid) end # after virtual_delegate :userid, :to => :evm_owner, :prefix => true, :allow_nil => true Vms. sort by v_total_snapshots (10k VMs) ● 44.3s -> 9.3s 79% faster, 81k -> 51k db rows Performance Virtual Delegate
  • 62. Quality Engineering Dave Johnson ● Continuing to test features from Sprint 45 ○ Opening GH issues where we find problems ○ Beginning to use ‘blocker’ label for major issues ■ This might need to be revisited for better categorization ● Reviewed test cases ○ We want to schedule some calls around reviewing test coverage with development and really anyone interested ○ Interested in helping out? Contact dajohnso@redhat.com. ● Continuing with bug verification ○ A LOT of good bug fixing going on between Darga and Euwe release
  • 63. Quality Engineering Peter Savage FrameWork 3.0 (FW30) Update ● Appliance object is now registered with Sentaku for UI only ○ Still needs work on converting the other objects so for now not usable ● navmazing merged ○ New navigation library is merged and is ready to be used ○ izapolsk and mshriver are starting work on converting some navigation destinations ○ navmazing + ui_navigate do not conflict and so we will slowly phase cutover ○ Object based ○ More explicit (more verbose) ○ No context passing ○ Version Pick friendly ○ am_i_here support i. Great for shortcutting
  • 64. Quality Engineering Peter Savage UI_NAVIGATE (OLD) prov = Provider.from_config(data) navigate_to(prov, 'Details') prov = Provider.from_config(data) sel.force_navigate(“cloud_provider”, context={“provider”: prov}) NAVMAZING (NEW)
  • 65. Quality Engineering Milan Falešník Widgetastic ● A nice way to represent UIs in the testing suite ● Currently building up some basic Patternfly library of items in ManageIQ ○ “If your product uses Patternfly, you should be able to use this to test the UI interactions” ○ … shhh … they might be interested in using this for testing PF too … A couple of screens are being modeled in this to get the right feel. Seems good so far … https://github.com/RedHatQE/widgetastic.core - Contains the core library + some basic widgets like <input>
  • 66. Quality Engineering Milan Falešník class AuthTab(Tab): ROOT = '//div[@id="auth_tabs"]/ul' class CloudProviderProperties(View): provider_type = BootstrapSelect('#ems_type') name = Input(name='name') api_version = BootstrapSelect('#ems_api_version') @WidgetDescriptor class default(AuthTab): # noqa TAB_NAME = 'Default' hostname = Input(name='default_hostname') api_port = Input(name='default_api_port') sec_protocol = BootstrapSelect('#default_security_protocol') @WidgetDescriptor class events(AuthTab): # noqa TAB_NAME = 'Events' hostname = Input(name='amqp_hostname') api_port = Input(name='amqp_api_port') sec_protocol = BootstrapSelect('#amqp_security_protocol')