SlideShare a Scribd company logo
ManageIQ
Sprint 71 Review - Sprint End October 16, 2017
October 18, 2017
Meeting Start: 10:30am EST
Overview
● Sprint Statistics (Oleg Barenboim)
● Community Update (Carol Chen)
● Classic UI (Dan Clarizio)
● Providers (Bronagh Sorota, Adam Grare, Rich Oliveri)
● Automate (Tina Fitzgerald)
● Platform (Gregg Tanzillo)
● API (Alberto Bellotti)
● Documentation (Chris Budzilowicz)
● Discussion
All Repo Stats - Top 10
Top Repositories # Closed
ManageIQ/manageiq-ui-classic 109
ManageIQ/integration_tests 105
ManageIQ/manageiq 87
ManageIQ/manageiq-ui-service 35
ManageIQ/manageiq-api 29
ManageIQ/manageiq-schema 12
ManageIQ/manageiq-automation-engine 11
ManageIQ/manageiq-providers-amazon 11
ManageIQ/manageiq_docs 11
ManageIQ/manageiq-gems-pending 9
Total of 537 merged PRs across 87 ManageIQ Repos
Pull Requests from: 2017-10-03 00:00:00 UTC to: 2017-10-16 00:00:00 UTC
Distribution and Types of Merged PRs across ManageIQ
Repositories
PRs Merged per Sprint across ManageIQ Repositories
Repository Health Report
October 16, 2017
Community Update
(Carol Chen)
● Last Week in ManageIQ
○ http://manageiq.org/blog/2017/10/yep/ by Drew Bomhof
○ http://manageiq.org/blog/2017/10/how-was-your-last-week/ by Libor Pichler
● Blog Posts
○ "MiqLdap To SSSD Conversion Tool" by Joe VLcek
http://manageiq.org/blog/2017/09/miqldap-to-sssd/
○ "H-release Rearchitecture" by Jason Frey
http://manageiq.org/blog/2017/10/h-release-rearchitecture/
● Events
○ Open Source Summit EU, Oct 23 - 26 in Prague
http://events.linuxfoundation.org/events/open-source-summit-europe
○ USENIX LISA, Oct 29 - Nov 3 in San Francisco
https://www.usenix.org/conference/lisa17
Classic UI
(Dan Clarizio)
PRs merged - 109
● UI Repo: Enhancements - 26, Bugs - 37, Technical Debt/Refactoring - 28/9
● UI Components Repo - 8
Refactoring/Technical Debt:
● Toolbars refactored to pass in send_checked params explicitly when sending transactions from the
list views (on-going)
● Moved SubstMixin used in the expression editor to the core repo
● Merged similar Ansible Tower and Foreman provider form controllers
● Replaced ui_lookup calls with gettext calls in many controllers
● Background PNG images in quadicons replaced with SVGs
● Deduplicated/unified tree building code in controllers
Classic UI
(Dan Clarizio)
Enhancements:
● Generic Objects
○ Custom image support for Generic Object classes
○ Tagging support for Generic Object instances
○ Support to delete Generic Object Classes (last CRUD piece)
● New delay based retirement support
● Alerts - Added required field ‘severity’ to editor and list/summary screens
● Tag expression support was added to the Group editor
● Automate
○ Support for embedded methods
○ Support for Playbook type methods
● Physical Servers support added (physical servers team)
○ Refresh & delete
○ Manage Policies, Policy simulation, Tagging
● Infrastructure Provider dashboard converted to Angular & Patternfly components.
Classic UI
Custom Image support in Generic Object Class editor
Classic UI
Custom Image support in Generic Object Class editor
Classic UI
Delay based Retirement
Classic UI
Tag expressions in Group editor
Classic UI
Embedded methods in Automate
Classic UI
Playbook type Automate Methods
Providers
(Bronagh Sorota, Adam Grare, Rich Oliveri)
Merged Provider PRs
Provider PRs Provider PRs
amazon 11 scvmm 4
openstack 9 vmware 4
ovirt 8 kubernetes 3
hawkular 7 lenovo 3
vmware 6 openshift 3
azure 6 ansible_tower 2
nuage 5 google 1
Cloud Providers
Amazon
● CloudVolumeSnapshot delete operation
● OrchestrationStack event support
● Network router inventory
Cloud Providers cont.
Azure
● Drastic performance improvements to private
image gathering
● Azure-armrest 0.9.1
● Combined with improvements from Sprint 70:
○ Memory consumption reduced by 50%
○ Real time reduced by 25%
Cloud Providers cont.
Providers
RHV/oVirt
● Async requests in the provider inventory refresh
● Integrating OVN management (to manage RHV network provider)
Middleware
● Enhancement - when server or domain operation are requested, an event in
the timeline is logged (success/failure)
● Fixed handling of downloading attempt of an already removed JDR report
● Fixed - Events don't show on Middleware Provider Timeline
Container Providers
● Image Inspector OpenSCAP CVE URL is now globally configurable in the
Advanced Settings
○ This allows disconnected cluster to define a locally-hosted copy of the CVE definition to be
used for the Container Images SSA
● Following an update from OpenShift the Component Status inventory
collection has been removed
ems:
ems_kubernetes:
image_inspector_cve_url: https://my-specific/cve-base-url/
Container Providers
● Following up the Projects Quotas addition to reports; a new Out-Of-The-Box
example was added:
Container Providers
● Group by docker label in chargeback for container images
Container Providers
● Prometheus Alerts Collection Manager were added to the Container Providers
OpenStack
● Orchestration Stack related updates
○ Updated Infra provider refresher for OSP12
○ Enhanced orchestration template parameter type
support
● Finished model actions for OpenStack Image (Template in
MIQ)
OpenStack
● Fixed empty timelines on Hosts
● Fixed attach/detach disks automate methods
● Fixed error messages for Cloud Tenant operations
● Fixed Use Floating IP address creation messages
Lenovo
● Added support to collect Config Patterns
● Will be used in the future to support provisioning to physical
servers
SmartState Analysis
(Rich Oliveri)
Accommodate new Azure features.
(Total of 22 PRs across 5 repositories)
○ Added support for Managed Images.
○ Added support for Managed Instances.
○ Verified support for encrypted managed disks.
○ Added support for locked disks - through snapshots.
SmartState Analysis
(Rich Oliveri)
SmartState Analysis for Amazon - Work in progress
○ Added amazon_ssa_support GEM
■ Agent SSA code and communication.
○ PR pending for amazon_agent_coordinator worker.
○ Asynchronous response handler in development.
○ New Agent deployment scheme:
■ Instances based on Atomic OS
■ Code deployed and executed through Docker
containers.
Automate
(Tina Fitzgerald)
PRs Merged: 37
15 - Enhancements, 11 - Bugs, 6 - Refactoring, 5 - Technical Debt
● Ansible Playbook Method
○ Can be used as a State Machine or regular method
○ Input parameters as extra vars, substitution enabled
● Service Resource Linking
○ Links VMs to Service via API
● Generic Object
○ Added support for calling Generic Object methods via API
Automate
(Tina Fitzgerald)
● Automate Workspace
○ Method lifetime
○ Persists through retries
○ Only accessible to Ansible Methods today
● Orchestration Templates
○ OpenStack - Enhanced non-string parameter type support
○ Amazon - Added necessary constraint for text area
● Service Models
○ Exposed hardware disks/volumes
Automate
(Greg McCullough)
Embedded Methods - UI Changes Merged
Automate
(Greg McCullough)
Embedded Methods - UI Changes
Automate
(Greg McCullough)
Embedded Methods
dump_root_objects
logging
InspectMe
Automate
(Greg McCullough)
Embedded Methods - All together
Automate
(Greg McCullough)
Embedded Methods - Logging
[09:16] INFO -- : Invoking [inline] method [/Demo/System/Request/InspectMe] with inputs [{}]
[09:16] INFO -- : Updated namespace [Shared/Methods/dump_root_objects Demo/Shared]
[09:16] INFO -- : Loading embedded method Demo/Shared/Methods/dump_root_objects
[09:16] INFO -- : Loading embedded method Demo/Shared/Methods/logging
[09:16] INFO -- : <AEMethod [/Demo/System/Request/InspectMe]> Starting
[09:17] INFO -- : <AEMethod inspectme> <main> - Inspect is running
[09:17] INFO -- : <AEMethod inspectme> Root:<$evm.root> Attributes - Begin
[09:17] INFO -- : <AEMethod inspectme> Attribute - message: create
[09:17] INFO -- : <AEMethod inspectme> Attribute - miq_server: #<MiqAeMethodService::MiqAeServ...
[09:17] INFO -- : <AEMethod inspectme> Attribute - miq_server_id: 14
[09:17] INFO -- : <AEMethod inspectme> Attribute - object_name: Request
[09:17] INFO -- : <AEMethod inspectme> Attribute - request: inspectme
[09:17] INFO -- : <AEMethod inspectme> Root:<$evm.root> Attributes - End
[09:17] INFO -- : <AEMethod [/Demo/System/Request/InspectMe]> Ending
[09:17] INFO -- : Method exited with rc=MIQ_OK
[09:17] INFO -- : Followed Relationship [miqaedb:/System/Request/inspectme#create]
Automate
(Greg McCullough)
Embedded Methods - Errors
Add error into
Embedded method:
INFO -- : <AEMethod [/Demo/System/Request/InspectMe]> Starting
INFO -- : <AEMethod inspectme> <main> - Inspect is running
INFO -- : <AEMethod inspectme> Root:<$evm.root> Attributes - Begin
ERROR -- : <AEMethod inspectme> The following error occurred during method evaluation:
ERROR -- : <AEMethod inspectme> RuntimeError: fake error on line 100]
ERROR -- : <AEMethod inspectme> Demo/Shared/Methods/dump_root_objects:5:in `dump_root'
ERROR -- : Method STDERR: Demo/Shared/Methods/dump_root_objects:5:in `dump_root': fake error on line 100]
(RuntimeError)
Automate
(Greg McCullough)
Embedded Methods - Notes
● Embedded methods support domains lookup at runtime
○ Specifying the full path, including the domain, will prevent it from getting
overridden at runtime from a different domain
● No support for nested embedded methods
● We recommend that embedded methods contain classes or a collection of
methods.
○ Code will execute in the order it was listed in the Embedded Methods list.
Platform
(Gregg Tanzillo)
PRs Merged: 52
11 - Enh, 13 - Bugs, 14 - Tech Debt, 6 - Refactoring, 8 - Other
Enhancements
● Replication - Updated pglogical to version 2.1
● Restrict PostgreSQL to currently supported versions 9.4, 9.5
● Added severity to alert definitions (info, warning, error)
● Added Metering Used Hours to chargeback
● New Report: Projects by Quota Items (zakiva)
Platform
(Gregg Tanzillo)
PRs Merged: 73
29 - Enh, 16 - Bugs, 12 - Tech Debt, 4 - Refactoring, 8 - Other
Bug Fixes
● RBAC -
○ Add network models to Hosts & Clusters (belongsto) filter
■ CloudNetwork, CloudSubnet, FloatingIp, LoadBalancer, NetworkPort, NetworkRouter,
SecurityGroup
○ Fixed missing providers in ‘Optimize > Utilization’ tree
■ Properly scope provider classes (STI)
● Fixed report import - symbolize keys only in 'db_options:' section
Technical Debt
● Dropped Ruby 2.2 support
Platform
Metering Used Hours to chargeback report
Platform
Alert Severity
Platform
Alert Severity
Platform
Projects by Quota Items
API
(Alberto Bellotti)
● Added support for Generic Object subcollection (Jillian T.)
● Creating generic object for a specific generic object definition:
POST /api/generic_object_definitions/:id/generic_objects
● Getting the generic objects for a generic object definition:
GET /api/generic_object_definitions/:id/generic_objects
GET /api/generic_object_definitions/:id/generic_objects/:id
GET /api/generic_object_definitions/:id/generic_objects/:id?associations=vms,services
● Getting the generic objects associated with a service:
GET /api/services/:id/generic_objects
API
● Added security group subcollection (Tzu-Mainn C.)
● For Cloud Tenants:
GET /api/cloud_tenants/:id/security_groups
GET /api/cloud_tenants/:id/security_groups/:id
● For Providers:
GET /api/providers/:id/security_groups
GET /api/providers/:id/security_groups/:id
● For VMs:
GET /api/vms/:id/security_groups
GET /api/vms/:id/security_groups/:id
API
● Added support for Custom Attributes on Services (Bo Y.)
● POST /api/services/:id/custom_attributes
● Adding custom attributes
{
“action” : “add”,
“resources” : [ { “name” : “attr1”, “value” : “value1” }, { “name” : “attr2”, “value” : “value2” } ]
}
● Editing custom attributes
{
“action” : “edit”,
“resources” : [ { “name” : “attr1”, “value” : “updated value1” } ]
}
● Deleting custom attributes
{
“action” : “delete”,
“resources” : [ { “name” : “attr1” }, { “name” : “attr2” } ]
}
● GET /api/services/:id/custom_attributes
● DELETE /api/services/:id/custom_attributes/:id
API
● Added support for Generic Object methods (Jillian T.)
Methods defined in Automate for Generic Object definitions are exposed as custom actions on the
related generic objects.
GET /api/generic_objects/5
{
“href” : “http://localhost:3000/api/generic_objects/5”,
“name” : “Test Generic Object”,
“property_attributes” : { “state” : “enabled”, “num_connections” : 3 },
“actions” : [
{ “name” : “edit”, “method” : “post”, … },
{ “name” : “test_method1”, “method” : “post”, …}
]
}
POST /api/generic_objects/5
{
“action” : “test_method1”,
“parameters” : [ … ]
}
{
“success” : true,
“message” : “Invoked method Test Method1 for Generic Object id: 5”,
“task_id” : “1001”,
“task_href” : “http://localhost:3000/api/tasks/1001”,
“href” : “http://localhost:3000/api/generic_objects/5”
}
API
● Added new add_provider_vms action for Services (Jillian T.)
When vms are created externally, i.e. through Ansible Playbooks, this enhancement
allows us to link a service to the provider resources that were generated for it.
POST /api/services/7
{
“action” : “add_provider_vms”,
“resource” : {
“provider” : { “href” : “http://localhost:3000/api/providers/:id” },
“uid_ems” : [
"420c0d63-5270-443c-61b9-8270a876db16",
"420c7853-af6f-50ce-35ba-4935cfcba4e8"
]
}
}
{
“success” : true,
“message” : “Adding provider vms for Service id: 7”,
“task_id” : “22”,
“task_href” : “http://localhost:3000/api/tasks/22”,
“href” : “http://localhost:3000/api/services/7”
}
API
● Added support for Custom Button Sets (Aparna K.)
○ New primary collection: /api/custom_button_sets
○ Full CRUD capability
POST /api/custom_button_sets
{
"name" : "CustomButtonSet",
"description" : "CustomButtonSet description",
"set_data": {
"button_order" : [ 10000000000013, 10000000000016 ],
"button_icon" : "ff ff-view-expanded",
"button_color" : "#4727ff",
"display" : true,
"applies_to_class" : "GenericObjectDefinition",
"applies_to_id " : "10000000000050"
}
}
GET /api/custom_button_sets
GET /api/custom_button_sets/:id
POST /api/custom_button_sets/:id - action “edit”
PUT /api/custom_button_sets/:id
PATCH /api/custom_button_sets/:id
POST /api/custom_button_sets/:id - action “delete”
DELETE /api/custom_button_sets/:id
POST /api/custom_button_sets - Bulk action “delete”
API
● Removed required filters for event streams (Tim W.)
● In the initial GET implementation for /api/event_streams target_type and timestamp filters were required
● With the default paging of 1000 items we apply on that collection, those filters were not needed but still
generally honored by the API.
○ GET /api/event_streams?filter[]=timestamp>2017-01-03&filter[]=timestamp<2017-01-05
○ GET /api/event_streams?filter[]=target_type=Host
● This gives the API callers more flexibility on the types of queries they could perform.
API
● Added picture support for Generic Object Definitions (Jillian T.)
Pictures depicting Generic Objects can now be added when Generic Object Definitions are created:
POST /api/generic_object_definitions
{
“name” : “LoadBalancer”,
“description” : “LoadBalancer description”,
“properties” : { … },
“picture” : {
“extension” : “png”,
“content” : “base64 content of image …”
}
}
Pictures already added can be referenced above by id or href instead.
API
● Image_href now returned with Pictures (Jillian T.)
- Previously, the href of a picture had to be asked for when querying the picture.
- With this enhancement, the image_href is returned upon getting the picture resources.
GET /api/pictures?expand=resources
GET /api/pictures
GET /api/services/:id?expand=generic_objects&attributes=generic_objects.picture
GET /api/pictures/5
{
"href" : "http://localhost:3000/api/pictures/5",
"id" : "5",
"resource_id" : "8",
"resource_type" : "GenericObjectDefinition",
==> "image_href" : "http://localhost:3000/pictures/5.png",
"extension" : "png"
}
● PRs merged (10)
○ Enhancements 6
○ Bugs 4
● Highlights
○ #523 Cloud volume restore and delete operations.
○ #528 Managing Security Groups for cloud instances.
○ #531 Updated markup around procedure to upload appliance to RHV .
Documentation
(C. Budzilowicz)
Discussion
Sprint 72 Review - November 01
Meeting Start: 10:30am EST

More Related Content

What's hot

Sprint 48 review
Sprint 48 reviewSprint 48 review
Sprint 48 review
ManageIQ
 
Sprint 44 review
Sprint 44 reviewSprint 44 review
Sprint 44 review
ManageIQ
 
Sprint 67
Sprint 67Sprint 67
Sprint 67
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 66
Sprint 66Sprint 66
Sprint 66
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 61
Sprint 61Sprint 61
Sprint 61
ManageIQ
 
Sprint 62
Sprint 62Sprint 62
Sprint 62
ManageIQ
 
Sprint 50 review
Sprint 50 reviewSprint 50 review
Sprint 50 review
ManageIQ
 
Azure - Bronagh Sorota - ManageIQ Design Summit 2016
Azure - Bronagh Sorota - ManageIQ Design Summit 2016Azure - Bronagh Sorota - ManageIQ Design Summit 2016
Azure - Bronagh Sorota - ManageIQ Design Summit 2016
ManageIQ
 
Sprint 65
Sprint 65Sprint 65
Sprint 65
ManageIQ
 
Sprint 78
Sprint 78Sprint 78
Sprint 78
ManageIQ
 
Sprint 38 review
Sprint 38 reviewSprint 38 review
Sprint 38 review
ManageIQ
 
Sprint 74
Sprint 74Sprint 74
Sprint 74
ManageIQ
 
Sprint 42 review
Sprint 42 reviewSprint 42 review
Sprint 42 review
ManageIQ
 
Sprint 40 review
Sprint 40 reviewSprint 40 review
Sprint 40 review
ManageIQ
 
Sprint 116
Sprint 116Sprint 116
Sprint 116
ManageIQ
 
Sprint 77
Sprint 77Sprint 77
Sprint 77
ManageIQ
 
Sprint 16 report
Sprint 16 reportSprint 16 report
Sprint 16 report
ManageIQ
 

What's hot (20)

Sprint 48 review
Sprint 48 reviewSprint 48 review
Sprint 48 review
 
Sprint 44 review
Sprint 44 reviewSprint 44 review
Sprint 44 review
 
Sprint 67
Sprint 67Sprint 67
Sprint 67
 
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 66
Sprint 66Sprint 66
Sprint 66
 
Sprint 51 review
Sprint 51 reviewSprint 51 review
Sprint 51 review
 
Sprint 39 review
Sprint 39 reviewSprint 39 review
Sprint 39 review
 
Sprint 61
Sprint 61Sprint 61
Sprint 61
 
Sprint 62
Sprint 62Sprint 62
Sprint 62
 
Sprint 50 review
Sprint 50 reviewSprint 50 review
Sprint 50 review
 
Azure - Bronagh Sorota - ManageIQ Design Summit 2016
Azure - Bronagh Sorota - ManageIQ Design Summit 2016Azure - Bronagh Sorota - ManageIQ Design Summit 2016
Azure - Bronagh Sorota - ManageIQ Design Summit 2016
 
Sprint 65
Sprint 65Sprint 65
Sprint 65
 
Sprint 78
Sprint 78Sprint 78
Sprint 78
 
Sprint 38 review
Sprint 38 reviewSprint 38 review
Sprint 38 review
 
Sprint 74
Sprint 74Sprint 74
Sprint 74
 
Sprint 42 review
Sprint 42 reviewSprint 42 review
Sprint 42 review
 
Sprint 40 review
Sprint 40 reviewSprint 40 review
Sprint 40 review
 
Sprint 116
Sprint 116Sprint 116
Sprint 116
 
Sprint 77
Sprint 77Sprint 77
Sprint 77
 
Sprint 16 report
Sprint 16 reportSprint 16 report
Sprint 16 report
 

Similar to Sprint 71

Sprint 60
Sprint 60Sprint 60
Sprint 60
ManageIQ
 
Sprint 43 Review
Sprint 43 ReviewSprint 43 Review
Sprint 43 Review
ManageIQ
 
Sprint 52
Sprint 52Sprint 52
Sprint 52
ManageIQ
 
Sprint 63
Sprint 63Sprint 63
Sprint 63
ManageIQ
 
Sprint 59
Sprint 59Sprint 59
Sprint 59
ManageIQ
 
Sprint 54
Sprint 54Sprint 54
Sprint 54
ManageIQ
 
Sprint 53
Sprint 53Sprint 53
Sprint 53
ManageIQ
 
Sprint 64
Sprint 64Sprint 64
Sprint 64
ManageIQ
 
Sprint 58
Sprint 58Sprint 58
Sprint 58
ManageIQ
 
Sprint 73
Sprint 73Sprint 73
Sprint 73
ManageIQ
 
Sprint 80
Sprint 80Sprint 80
Sprint 80
ManageIQ
 
Sprint 56
Sprint 56Sprint 56
Sprint 56
ManageIQ
 
Sprint 88
Sprint 88Sprint 88
Sprint 88
ManageIQ
 
Sprint 123
Sprint 123Sprint 123
Sprint 123
ManageIQ
 
Slack in the Age of Prometheus
Slack in the Age of PrometheusSlack in the Age of Prometheus
Slack in the Age of Prometheus
George Luong
 
Sprint 121
Sprint 121Sprint 121
Sprint 121
ManageIQ
 

Similar to Sprint 71 (16)

Sprint 60
Sprint 60Sprint 60
Sprint 60
 
Sprint 43 Review
Sprint 43 ReviewSprint 43 Review
Sprint 43 Review
 
Sprint 52
Sprint 52Sprint 52
Sprint 52
 
Sprint 63
Sprint 63Sprint 63
Sprint 63
 
Sprint 59
Sprint 59Sprint 59
Sprint 59
 
Sprint 54
Sprint 54Sprint 54
Sprint 54
 
Sprint 53
Sprint 53Sprint 53
Sprint 53
 
Sprint 64
Sprint 64Sprint 64
Sprint 64
 
Sprint 58
Sprint 58Sprint 58
Sprint 58
 
Sprint 73
Sprint 73Sprint 73
Sprint 73
 
Sprint 80
Sprint 80Sprint 80
Sprint 80
 
Sprint 56
Sprint 56Sprint 56
Sprint 56
 
Sprint 88
Sprint 88Sprint 88
Sprint 88
 
Sprint 123
Sprint 123Sprint 123
Sprint 123
 
Slack in the Age of Prometheus
Slack in the Age of PrometheusSlack in the Age of Prometheus
Slack in the Age of Prometheus
 
Sprint 121
Sprint 121Sprint 121
Sprint 121
 

More from 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
 
Sprint 219
Sprint 219Sprint 219
Sprint 219
ManageIQ
 
Sprint 218
Sprint 218Sprint 218
Sprint 218
ManageIQ
 

More from ManageIQ (20)

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
 
Sprint 219
Sprint 219Sprint 219
Sprint 219
 
Sprint 218
Sprint 218Sprint 218
Sprint 218
 

Recently uploaded

Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
lorraineandreiamcidl
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
socradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdfsocradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdf
SOCRadar
 

Recently uploaded (20)

Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
socradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdfsocradar-q1-2024-aviation-industry-report.pdf
socradar-q1-2024-aviation-industry-report.pdf
 

Sprint 71

  • 1. ManageIQ Sprint 71 Review - Sprint End October 16, 2017 October 18, 2017 Meeting Start: 10:30am EST
  • 2. Overview ● Sprint Statistics (Oleg Barenboim) ● Community Update (Carol Chen) ● Classic UI (Dan Clarizio) ● Providers (Bronagh Sorota, Adam Grare, Rich Oliveri) ● Automate (Tina Fitzgerald) ● Platform (Gregg Tanzillo) ● API (Alberto Bellotti) ● Documentation (Chris Budzilowicz) ● Discussion
  • 3. All Repo Stats - Top 10 Top Repositories # Closed ManageIQ/manageiq-ui-classic 109 ManageIQ/integration_tests 105 ManageIQ/manageiq 87 ManageIQ/manageiq-ui-service 35 ManageIQ/manageiq-api 29 ManageIQ/manageiq-schema 12 ManageIQ/manageiq-automation-engine 11 ManageIQ/manageiq-providers-amazon 11 ManageIQ/manageiq_docs 11 ManageIQ/manageiq-gems-pending 9 Total of 537 merged PRs across 87 ManageIQ Repos Pull Requests from: 2017-10-03 00:00:00 UTC to: 2017-10-16 00:00:00 UTC
  • 4. Distribution and Types of Merged PRs across ManageIQ Repositories
  • 5. PRs Merged per Sprint across ManageIQ Repositories
  • 7. Community Update (Carol Chen) ● Last Week in ManageIQ ○ http://manageiq.org/blog/2017/10/yep/ by Drew Bomhof ○ http://manageiq.org/blog/2017/10/how-was-your-last-week/ by Libor Pichler ● Blog Posts ○ "MiqLdap To SSSD Conversion Tool" by Joe VLcek http://manageiq.org/blog/2017/09/miqldap-to-sssd/ ○ "H-release Rearchitecture" by Jason Frey http://manageiq.org/blog/2017/10/h-release-rearchitecture/ ● Events ○ Open Source Summit EU, Oct 23 - 26 in Prague http://events.linuxfoundation.org/events/open-source-summit-europe ○ USENIX LISA, Oct 29 - Nov 3 in San Francisco https://www.usenix.org/conference/lisa17
  • 8. Classic UI (Dan Clarizio) PRs merged - 109 ● UI Repo: Enhancements - 26, Bugs - 37, Technical Debt/Refactoring - 28/9 ● UI Components Repo - 8 Refactoring/Technical Debt: ● Toolbars refactored to pass in send_checked params explicitly when sending transactions from the list views (on-going) ● Moved SubstMixin used in the expression editor to the core repo ● Merged similar Ansible Tower and Foreman provider form controllers ● Replaced ui_lookup calls with gettext calls in many controllers ● Background PNG images in quadicons replaced with SVGs ● Deduplicated/unified tree building code in controllers
  • 9. Classic UI (Dan Clarizio) Enhancements: ● Generic Objects ○ Custom image support for Generic Object classes ○ Tagging support for Generic Object instances ○ Support to delete Generic Object Classes (last CRUD piece) ● New delay based retirement support ● Alerts - Added required field ‘severity’ to editor and list/summary screens ● Tag expression support was added to the Group editor ● Automate ○ Support for embedded methods ○ Support for Playbook type methods ● Physical Servers support added (physical servers team) ○ Refresh & delete ○ Manage Policies, Policy simulation, Tagging ● Infrastructure Provider dashboard converted to Angular & Patternfly components.
  • 10. Classic UI Custom Image support in Generic Object Class editor
  • 11. Classic UI Custom Image support in Generic Object Class editor
  • 13. Classic UI Tag expressions in Group editor
  • 15. Classic UI Playbook type Automate Methods
  • 16. Providers (Bronagh Sorota, Adam Grare, Rich Oliveri)
  • 17. Merged Provider PRs Provider PRs Provider PRs amazon 11 scvmm 4 openstack 9 vmware 4 ovirt 8 kubernetes 3 hawkular 7 lenovo 3 vmware 6 openshift 3 azure 6 ansible_tower 2 nuage 5 google 1
  • 18. Cloud Providers Amazon ● CloudVolumeSnapshot delete operation ● OrchestrationStack event support ● Network router inventory
  • 20. Azure ● Drastic performance improvements to private image gathering ● Azure-armrest 0.9.1 ● Combined with improvements from Sprint 70: ○ Memory consumption reduced by 50% ○ Real time reduced by 25% Cloud Providers cont.
  • 21. Providers RHV/oVirt ● Async requests in the provider inventory refresh ● Integrating OVN management (to manage RHV network provider) Middleware ● Enhancement - when server or domain operation are requested, an event in the timeline is logged (success/failure) ● Fixed handling of downloading attempt of an already removed JDR report ● Fixed - Events don't show on Middleware Provider Timeline
  • 22. Container Providers ● Image Inspector OpenSCAP CVE URL is now globally configurable in the Advanced Settings ○ This allows disconnected cluster to define a locally-hosted copy of the CVE definition to be used for the Container Images SSA ● Following an update from OpenShift the Component Status inventory collection has been removed ems: ems_kubernetes: image_inspector_cve_url: https://my-specific/cve-base-url/
  • 23. Container Providers ● Following up the Projects Quotas addition to reports; a new Out-Of-The-Box example was added:
  • 24. Container Providers ● Group by docker label in chargeback for container images
  • 25. Container Providers ● Prometheus Alerts Collection Manager were added to the Container Providers
  • 26. OpenStack ● Orchestration Stack related updates ○ Updated Infra provider refresher for OSP12 ○ Enhanced orchestration template parameter type support ● Finished model actions for OpenStack Image (Template in MIQ)
  • 27. OpenStack ● Fixed empty timelines on Hosts ● Fixed attach/detach disks automate methods ● Fixed error messages for Cloud Tenant operations ● Fixed Use Floating IP address creation messages
  • 28. Lenovo ● Added support to collect Config Patterns ● Will be used in the future to support provisioning to physical servers
  • 29. SmartState Analysis (Rich Oliveri) Accommodate new Azure features. (Total of 22 PRs across 5 repositories) ○ Added support for Managed Images. ○ Added support for Managed Instances. ○ Verified support for encrypted managed disks. ○ Added support for locked disks - through snapshots.
  • 30. SmartState Analysis (Rich Oliveri) SmartState Analysis for Amazon - Work in progress ○ Added amazon_ssa_support GEM ■ Agent SSA code and communication. ○ PR pending for amazon_agent_coordinator worker. ○ Asynchronous response handler in development. ○ New Agent deployment scheme: ■ Instances based on Atomic OS ■ Code deployed and executed through Docker containers.
  • 31. Automate (Tina Fitzgerald) PRs Merged: 37 15 - Enhancements, 11 - Bugs, 6 - Refactoring, 5 - Technical Debt ● Ansible Playbook Method ○ Can be used as a State Machine or regular method ○ Input parameters as extra vars, substitution enabled ● Service Resource Linking ○ Links VMs to Service via API ● Generic Object ○ Added support for calling Generic Object methods via API
  • 32. Automate (Tina Fitzgerald) ● Automate Workspace ○ Method lifetime ○ Persists through retries ○ Only accessible to Ansible Methods today ● Orchestration Templates ○ OpenStack - Enhanced non-string parameter type support ○ Amazon - Added necessary constraint for text area ● Service Models ○ Exposed hardware disks/volumes
  • 37. Automate (Greg McCullough) Embedded Methods - Logging [09:16] INFO -- : Invoking [inline] method [/Demo/System/Request/InspectMe] with inputs [{}] [09:16] INFO -- : Updated namespace [Shared/Methods/dump_root_objects Demo/Shared] [09:16] INFO -- : Loading embedded method Demo/Shared/Methods/dump_root_objects [09:16] INFO -- : Loading embedded method Demo/Shared/Methods/logging [09:16] INFO -- : <AEMethod [/Demo/System/Request/InspectMe]> Starting [09:17] INFO -- : <AEMethod inspectme> <main> - Inspect is running [09:17] INFO -- : <AEMethod inspectme> Root:<$evm.root> Attributes - Begin [09:17] INFO -- : <AEMethod inspectme> Attribute - message: create [09:17] INFO -- : <AEMethod inspectme> Attribute - miq_server: #<MiqAeMethodService::MiqAeServ... [09:17] INFO -- : <AEMethod inspectme> Attribute - miq_server_id: 14 [09:17] INFO -- : <AEMethod inspectme> Attribute - object_name: Request [09:17] INFO -- : <AEMethod inspectme> Attribute - request: inspectme [09:17] INFO -- : <AEMethod inspectme> Root:<$evm.root> Attributes - End [09:17] INFO -- : <AEMethod [/Demo/System/Request/InspectMe]> Ending [09:17] INFO -- : Method exited with rc=MIQ_OK [09:17] INFO -- : Followed Relationship [miqaedb:/System/Request/inspectme#create]
  • 38. Automate (Greg McCullough) Embedded Methods - Errors Add error into Embedded method: INFO -- : <AEMethod [/Demo/System/Request/InspectMe]> Starting INFO -- : <AEMethod inspectme> <main> - Inspect is running INFO -- : <AEMethod inspectme> Root:<$evm.root> Attributes - Begin ERROR -- : <AEMethod inspectme> The following error occurred during method evaluation: ERROR -- : <AEMethod inspectme> RuntimeError: fake error on line 100] ERROR -- : <AEMethod inspectme> Demo/Shared/Methods/dump_root_objects:5:in `dump_root' ERROR -- : Method STDERR: Demo/Shared/Methods/dump_root_objects:5:in `dump_root': fake error on line 100] (RuntimeError)
  • 39. Automate (Greg McCullough) Embedded Methods - Notes ● Embedded methods support domains lookup at runtime ○ Specifying the full path, including the domain, will prevent it from getting overridden at runtime from a different domain ● No support for nested embedded methods ● We recommend that embedded methods contain classes or a collection of methods. ○ Code will execute in the order it was listed in the Embedded Methods list.
  • 40. Platform (Gregg Tanzillo) PRs Merged: 52 11 - Enh, 13 - Bugs, 14 - Tech Debt, 6 - Refactoring, 8 - Other Enhancements ● Replication - Updated pglogical to version 2.1 ● Restrict PostgreSQL to currently supported versions 9.4, 9.5 ● Added severity to alert definitions (info, warning, error) ● Added Metering Used Hours to chargeback ● New Report: Projects by Quota Items (zakiva)
  • 41. Platform (Gregg Tanzillo) PRs Merged: 73 29 - Enh, 16 - Bugs, 12 - Tech Debt, 4 - Refactoring, 8 - Other Bug Fixes ● RBAC - ○ Add network models to Hosts & Clusters (belongsto) filter ■ CloudNetwork, CloudSubnet, FloatingIp, LoadBalancer, NetworkPort, NetworkRouter, SecurityGroup ○ Fixed missing providers in ‘Optimize > Utilization’ tree ■ Properly scope provider classes (STI) ● Fixed report import - symbolize keys only in 'db_options:' section Technical Debt ● Dropped Ruby 2.2 support
  • 42. Platform Metering Used Hours to chargeback report
  • 46. API (Alberto Bellotti) ● Added support for Generic Object subcollection (Jillian T.) ● Creating generic object for a specific generic object definition: POST /api/generic_object_definitions/:id/generic_objects ● Getting the generic objects for a generic object definition: GET /api/generic_object_definitions/:id/generic_objects GET /api/generic_object_definitions/:id/generic_objects/:id GET /api/generic_object_definitions/:id/generic_objects/:id?associations=vms,services ● Getting the generic objects associated with a service: GET /api/services/:id/generic_objects
  • 47. API ● Added security group subcollection (Tzu-Mainn C.) ● For Cloud Tenants: GET /api/cloud_tenants/:id/security_groups GET /api/cloud_tenants/:id/security_groups/:id ● For Providers: GET /api/providers/:id/security_groups GET /api/providers/:id/security_groups/:id ● For VMs: GET /api/vms/:id/security_groups GET /api/vms/:id/security_groups/:id
  • 48. API ● Added support for Custom Attributes on Services (Bo Y.) ● POST /api/services/:id/custom_attributes ● Adding custom attributes { “action” : “add”, “resources” : [ { “name” : “attr1”, “value” : “value1” }, { “name” : “attr2”, “value” : “value2” } ] } ● Editing custom attributes { “action” : “edit”, “resources” : [ { “name” : “attr1”, “value” : “updated value1” } ] } ● Deleting custom attributes { “action” : “delete”, “resources” : [ { “name” : “attr1” }, { “name” : “attr2” } ] } ● GET /api/services/:id/custom_attributes ● DELETE /api/services/:id/custom_attributes/:id
  • 49. API ● Added support for Generic Object methods (Jillian T.) Methods defined in Automate for Generic Object definitions are exposed as custom actions on the related generic objects. GET /api/generic_objects/5 { “href” : “http://localhost:3000/api/generic_objects/5”, “name” : “Test Generic Object”, “property_attributes” : { “state” : “enabled”, “num_connections” : 3 }, “actions” : [ { “name” : “edit”, “method” : “post”, … }, { “name” : “test_method1”, “method” : “post”, …} ] } POST /api/generic_objects/5 { “action” : “test_method1”, “parameters” : [ … ] } { “success” : true, “message” : “Invoked method Test Method1 for Generic Object id: 5”, “task_id” : “1001”, “task_href” : “http://localhost:3000/api/tasks/1001”, “href” : “http://localhost:3000/api/generic_objects/5” }
  • 50. API ● Added new add_provider_vms action for Services (Jillian T.) When vms are created externally, i.e. through Ansible Playbooks, this enhancement allows us to link a service to the provider resources that were generated for it. POST /api/services/7 { “action” : “add_provider_vms”, “resource” : { “provider” : { “href” : “http://localhost:3000/api/providers/:id” }, “uid_ems” : [ "420c0d63-5270-443c-61b9-8270a876db16", "420c7853-af6f-50ce-35ba-4935cfcba4e8" ] } } { “success” : true, “message” : “Adding provider vms for Service id: 7”, “task_id” : “22”, “task_href” : “http://localhost:3000/api/tasks/22”, “href” : “http://localhost:3000/api/services/7” }
  • 51. API ● Added support for Custom Button Sets (Aparna K.) ○ New primary collection: /api/custom_button_sets ○ Full CRUD capability POST /api/custom_button_sets { "name" : "CustomButtonSet", "description" : "CustomButtonSet description", "set_data": { "button_order" : [ 10000000000013, 10000000000016 ], "button_icon" : "ff ff-view-expanded", "button_color" : "#4727ff", "display" : true, "applies_to_class" : "GenericObjectDefinition", "applies_to_id " : "10000000000050" } } GET /api/custom_button_sets GET /api/custom_button_sets/:id POST /api/custom_button_sets/:id - action “edit” PUT /api/custom_button_sets/:id PATCH /api/custom_button_sets/:id POST /api/custom_button_sets/:id - action “delete” DELETE /api/custom_button_sets/:id POST /api/custom_button_sets - Bulk action “delete”
  • 52. API ● Removed required filters for event streams (Tim W.) ● In the initial GET implementation for /api/event_streams target_type and timestamp filters were required ● With the default paging of 1000 items we apply on that collection, those filters were not needed but still generally honored by the API. ○ GET /api/event_streams?filter[]=timestamp>2017-01-03&filter[]=timestamp<2017-01-05 ○ GET /api/event_streams?filter[]=target_type=Host ● This gives the API callers more flexibility on the types of queries they could perform.
  • 53. API ● Added picture support for Generic Object Definitions (Jillian T.) Pictures depicting Generic Objects can now be added when Generic Object Definitions are created: POST /api/generic_object_definitions { “name” : “LoadBalancer”, “description” : “LoadBalancer description”, “properties” : { … }, “picture” : { “extension” : “png”, “content” : “base64 content of image …” } } Pictures already added can be referenced above by id or href instead.
  • 54. API ● Image_href now returned with Pictures (Jillian T.) - Previously, the href of a picture had to be asked for when querying the picture. - With this enhancement, the image_href is returned upon getting the picture resources. GET /api/pictures?expand=resources GET /api/pictures GET /api/services/:id?expand=generic_objects&attributes=generic_objects.picture GET /api/pictures/5 { "href" : "http://localhost:3000/api/pictures/5", "id" : "5", "resource_id" : "8", "resource_type" : "GenericObjectDefinition", ==> "image_href" : "http://localhost:3000/pictures/5.png", "extension" : "png" }
  • 55. ● PRs merged (10) ○ Enhancements 6 ○ Bugs 4 ● Highlights ○ #523 Cloud volume restore and delete operations. ○ #528 Managing Security Groups for cloud instances. ○ #531 Updated markup around procedure to upload appliance to RHV . Documentation (C. Budzilowicz)
  • 56. Discussion Sprint 72 Review - November 01 Meeting Start: 10:30am EST