15. Appliance Core - Replication
(G. Tanzillo)
Work on pglogical replication continues
● New MiqPglogical class
○ Provides generic functionality for remote and global regions
● New PglogicalSubscription model
○ Provides global region functionality as an ActiveRecord model
● Configuration UI in progress for next sprint
● Hardening for next sprint
19. Appliance Core - Tenancy
Splitting MiqGroup...
● … into user groups and entitlements in progress
● New model created for entitlements
● Will enable sharing entitlements across tenants
● Will provide more flexibility for defining groups in LDAP
20. Appliance Core - Appliance Console
Database setup
● Added sub-menu under Configure Database
● Simplified database and multi-appliance configuration
● Replaced "Setup Database Region" with an explicit "Reset Configured
Database"
21. Appliance Core - Authentication
(A. Bellotti)
Enhancements:
● Appliance Console External Auth updated to also work with 6.x IPA Servers
● SAML Authentication (verified with KeyCloak 1.8)
○ Appliance build now includes SAML apache module
○ Apache template config file provided
○ Web Admin UI Enhancement
■ SAML Configuration options
■ Enhanced Login Screen
23. Appliance Core - Authentication
Upcoming:
● manageiq_docs update for SAML configuration
● Appliance Console enhancement to update External Auth options
● REST API Authentication SAML/ECP
24. REST API (A. Bellotti)
● Enhanced filtering to use MiqExpression
With this enhancement the REST API leverages MiqExpression to handle its
filtering, allowing requests to be able to filter on physical, as well as virtual
attributes, including attributes of first-level associations.
GET /api/vms?attributes=name,vendor,hardware
&filter[]=vendor=vmware
&filter[]=hardware.memory_mb>=8192
25. REST API
● Support refresh_dialog_fields on /api/service_dialogs resources
Similar to the support of refresh_dialog_fields on service_templates,
we needed to add that capability for any dialog that may be defined
on custom buttons.
POST /api/service_dialogs/:id
{
“action” : “refresh_dialog_fields”,
“dialog_fields” : {
“my_field1” : “current value 1”,
“my_field2” : “current value 2”,
…
}
“fields” : [ “my_field1” ]
}
26. REST API
● Showing hrefs for collections in authorization details in entrypoint
Enhanced API to include Role identifiers for collections and augmented the
authorization hash in the entrypoint to include that correlation:
GET /api?attributes=authorization
...
"authorization": {
"product_features": {
...
"vm": {
"name": "VM Access Rules",
"description": "Access Rules for Virtual Machines",
"href": "http://localhost:3000/api/vms",
...
}
27. User Interface (D. Clarizio)
● PRs merged (91)
○ SSUI (7)
○ Bugs (37)
○ Enhancements (32)
○ Refactoring/Technical Debt (20)
● New functionality
○ VM - Devices and Network Adapters
○ Cloud - Key Pairs and Object Stores added
○ More Bootstrap switches
○ C3 Charts (jqPlot replacement)
○ SSUI - Support for Custom Buttons that use Dialogs (Demo)
● Containers
○ New Container Builds tab
○ Chargeback
○ Bug fixes and minor enhancements
41. SSUI - Custom Buttons that use Dialogs
Demo (E. Clarizio)
42. SmartState (R. Oliveri)
● SCVMM
○ Support for network-mounted HyperV virtual disks
○ Performance improvements (HyperDisk caching)
● Azure
○ Azure-armrest: added offset/length blob read
support.
○ Added AzureBlobDisk module for MiqDisk.
○ Implemented MiqAzureVm subclass of MiqVm.
○ Needs to be integrated into the SSA path.
43. SmartState (R. Oliveri)
● Testing
○ Added TestEnvHelper class for gems/pending.
■ Support for global and per-test parameters.
■ Private data filtering.
■ Cassette recording support - directory structure
based on test location.
■ Re-recording facilitated through environment
variable settings - switch between public and
private data.
44. Automate (G. McCullough)
● Automate state-machine fields to contain methods
○ Previously
■ State fields only contained relationships
■ Methods need to be in separate class
■ Users worked around this limitation by using the
on_entry column to reference a method in the
current class
● Issue: on_entry does not honor state retry
● New Syntax: METHOD::<method_name>
○ Benefits
■ State-machine instances and methods can be
grouped together in the same class
46. Services
Back-end changes:
● Service Order (Cart) created for each Service Request
based on current user and tenant.
○ Next: “Add to Cart” ordering from Self-service UI
● VMware add/remove disk methods for reconfigure
○ UI work in progress
47. Ansible Tower
● Modeling for AnsibleTowerJob
● Support for launching JobTemplates with a
limit. (Target specific system)
● In progress
○ Running JobTemplates from an Automate instance
○ Support for Ansible Tower as a Service Type
○ Linking Ansible Tower hosts to inventory from other
providers