SPRINT 140 REVIEW
- Sprint Ending July 6, 2020
July 8, 2020
Meeting Start: 10:30 am EST
2
SPEAKERS
● Overview (Oleg Barenboim)
● UI (Harpreet Kataria)
● Providers (Adam Grare)
● Platform (Joe VLcek)
● API (Alberto Bellotti)
● Developer (Jason Frey)
3
4
* Note that some PRs are double labeled or have no labels. Beginning with Sprint 127, archived and forked repos are
excluded.
Repository Files
Lines of
Code Rating
Total
Issues
Complexity
Issues
Duplication
Issues
Bug Risk
Issues
Style
Issues
Test
Coverage
ManageIQ/manageiq 1721 82970 A 1063 473 292 38 260 NA
ManageIQ/manageiq-schema 865 18228 B 298 72 196 2 28 82.46
ManageIQ/manageiq-api 249 8553 B 218 106 103 7 2 94.06
ManageIQ/manageiq-ui-classic 2841 125151 C 5051 2377 962 204 682 NA
ManageIQ/manageiq-ui-service 409 13193 C 204 180 24 0 0 NA
ManageIQ/manageiq-automation_engine 204 8238 C 177 145 23 2 7 85.39
ManageIQ/manageiq-content 1549 9383 C 192 77 100 5 10 97.74
ManageIQ/manageiq-providers-amazon 124 4619 B 83 52 17 1 13 63.26
ManageIQ/manageiq-providers-ansible_tower 75 1837 A 27 16 9 1 1 82.73
ManageIQ/manageiq-providers-azure 101 3925 C 75 51 15 4 5 74.25
ManageIQ/manageiq-providers-azure_stack 76 1406 A 17 13 0 0 4 NA
ManageIQ/manageiq-providers-foreman 56 820 A 11 7 2 0 2 67.24
ManageIQ/manageiq-providers-google 84 1629 A 14 9 2 0 3 77.23
ManageIQ/manageiq-providers-kubernetes 81 3483 C 49 41 3 1 4 77.33
ManageIQ/manageiq-providers-lenovo 113 3682 A 52 10 38 0 4 90.81
ManageIQ/manageiq-providers-nuage 81 1738 B 21 9 11 0 1 91.64
ManageIQ/manageiq-providers-openshift 63 1296 A 8 4 2 1 1 39.76
ManageIQ/manageiq-providers-openstack 206 10656 C 237 136 85 3 13 73.02
ManageIQ/manageiq-providers-ovirt 126 6652 B 103 71 7 0 25 75.24
ManageIQ/manageiq-providers-redfish 68 1169 C 23 6 16 0 1 71.13
ManageIQ/manageiq-providers-scvmm 67 1683 B 25 14 4 0 7 70.57
ManageIQ/manageiq-providers-vmware 160 7898 C 211 157 26 2 26 66.21
6
PRs (UI, SUI, UI/REACT Components, API ): PRs (UI, SUI, UI/REACT Components): 30 Bugs: 18, Enhancements: 9, Cleanup:
2, others: 1
Bugs
● Don't use the cloud_volume ems.parent_manager (#7133)
● Moved common code to a method to reset tier details when switching Type (#7157)
Enhancements
● Check for container template instantiation support (#7169)
● Settings/Documentation page - help_documentation: use product_documentation_website (#7162)
● Provider forms replaced with the DDF-based React forms
○ Replace the physical infra provider forms with the DDF-based new one (#7091)
○ Replace the old network provider forms with the DDF-based ProviderForm (#7090)
○ Replace old angular config provider form with the new ProviderForm (#7047)
● Enable / disable policy move buttons as needed (#7168)
● Dialog Editor - Add support for local validation of box, tab and field (#443)
UI
(Harpreet Kataria)
7
Enable / disable policy move buttons as needed (#7168)
UI
(Harpreet Kataria)
8
Dialog Editor - Add support for local validation of box, tab and field (#443)
UI
(Harpreet Kataria)
9
Common
● Fix event catchers not heartbeating until the first event is delivered
○ Worker was stuck in “starting” and didn’t enter do_work loop until an event was delivered
○ Prevented workers from being able to shutdown cleanly and had to be force killed
● Move “combined” refresh worker logic to core (#20302)
○ If a provider has child managers they are typically refreshed by the parent manager’s refresh
worker
○ This logic was duplicated in every RefreshWorker::Runner class
PROVIDERS
(Adam Grare)
10
Ansible Tower
● Change the default api_version to v2 (#226)
○ When adding an Ansible Tower provider if the user doesn’t specify an api_version we would add
v1 for them
○ Current versions of Tower don’t have v1 support anymore so users would have to manually add
“/api/v2” to their Tower URL for it to work
Foreman
● Create the Provider record when a Config Manager is created (#62)
○ Allows for use of DDF forms which require the use of the API
PROVIDERS
(Adam Grare)
11
Google
● Enhance the GCE event parser to link up VMs to caught Events (#148)
Kubernetes/OpenShift
● Fix metrics capture for nodes with differently named network interfaces (#386)
○ Previously were looking for network metrics on interfaces named eth*
○ Consistent Network Device Naming conventions also allow for ens*, eno*, and enp*
PROVIDERS
(Adam Grare)
12
Ovirt
● Added collection of guest tools_status (#505)
VMware
● Fix refresh of imported Distributed Virtual Portgroups (#594)
○ These have a key that doesn’t match the ems_ref so VMs weren’t being linked properly
● Don’t put VimStrings in the provision phase_context (#597)
○ API was failing due to not having VMwareWebService/VimTypes required when asking for
vm.miq_provision attribute
PROVIDERS
(Adam Grare)
13
42 PRs merged
Enhancements:
● Catch decoding parsing error manageiq-messaging/50
● Add memory and cpu limits on deployments manageiq/20193
● Add a flag to gate worker resource constraints manageiq-pods/532
● Add OIDC support for the Self-Service UI manageiq-pods/559
● Allow orchestrator to be updated during reconcile manageiq-pods/569
● Add reconcile functions to Kafka and Zookeeper manageiq-pods/566
● Add an override for the worker images deployed by the orchestrator manageiq-pods/558
Bugs:
● Double the initial delay and timeout for worker container liveness probes manageiq/20323
● Remove the miq_workers table from the reindex list manageiq/20305
● Add additional python3 module path for Centos8 support manageiq/20322
● Fix issue where the square brackets are being created as directories in docker manageiq/20312
● Fixed Settings hierarchy on Global region manageiq/20299
● Ensure ems workers are killed by their server/orchestrator pod manageiq/20290
PLATFORM
(Joe VLcek)
14
42 PRs merged
Build Improvements:
● Generate rpm manifest manageiq-pods/563
● Add rpm manifest script to manageiq-system rpm manageiq-rpm_build/73
● Bust CDN cache after updating files manageiq-rpm_build/71
● Add ServiceUI to npm manifest manageiq-rpm_build/70
● Only cleanup repo files listed under directories in the config manageiq-rpm_build/69
● Add a script to generate rpm manifest manageiq-appliance/289
● Create rpm manifest manageiq-appliance-build/431
● Remove pdf-writer demo directory manageiq-rpm_build/74
● Add droplet_kit dependency manageiq-rpm_build/72
PLATFORM
(Joe VLcek)
15
● Expose tag description in chargeback assignments (Libor P.) #859
GET /api/chargebacks/1?attributes=assigned_to
{
"href" : "http://localhost:3000/api/chargebacks/1",
"id" : "1",
"guid" : "b47a0ef0-4335-11df-aba8-001d09066d98",
"description" : "Default",
"rate_type" : "Compute",
"created_on" : "2019-08-07T16:48:04Z",
"updated_on" : "2020-06-25T09:54:52Z",
"default" : true,
"assigned_to" : [
{
"tag" : {
"href" : "http://localhost:3000/api/tags/279",
"name" : "10240",
"description" : "10GB",
"category" : "quota_warn_memory",
"assignment_prefix" : "vm"
}
}
]
}
API
(Alberto Bellotti)
16
Developer
● Systemd based workers on appliances was not working
○ Removed for jansa, but now enabled for master/kasparov
● manageiq.org is now using the manageiq-documentation, markdown based, master branch
17
Questions? Discussion?
Sprint 141 Review - July 22
Meeting Start: 10:30 am EST
THANK YOU
manageiq.org github.com/ManageIQ
twitter.com/ManageIQ gitter.im/ManageIQ/manageiq
facebook.com/manageiq talk.manageiq.org
youtube.com/user/ManageIQVideolinkedin.com/company/manageiq

Sprint 140

  • 1.
    SPRINT 140 REVIEW -Sprint Ending July 6, 2020 July 8, 2020 Meeting Start: 10:30 am EST
  • 2.
    2 SPEAKERS ● Overview (OlegBarenboim) ● UI (Harpreet Kataria) ● Providers (Adam Grare) ● Platform (Joe VLcek) ● API (Alberto Bellotti) ● Developer (Jason Frey)
  • 3.
  • 4.
    4 * Note thatsome PRs are double labeled or have no labels. Beginning with Sprint 127, archived and forked repos are excluded.
  • 5.
    Repository Files Lines of CodeRating Total Issues Complexity Issues Duplication Issues Bug Risk Issues Style Issues Test Coverage ManageIQ/manageiq 1721 82970 A 1063 473 292 38 260 NA ManageIQ/manageiq-schema 865 18228 B 298 72 196 2 28 82.46 ManageIQ/manageiq-api 249 8553 B 218 106 103 7 2 94.06 ManageIQ/manageiq-ui-classic 2841 125151 C 5051 2377 962 204 682 NA ManageIQ/manageiq-ui-service 409 13193 C 204 180 24 0 0 NA ManageIQ/manageiq-automation_engine 204 8238 C 177 145 23 2 7 85.39 ManageIQ/manageiq-content 1549 9383 C 192 77 100 5 10 97.74 ManageIQ/manageiq-providers-amazon 124 4619 B 83 52 17 1 13 63.26 ManageIQ/manageiq-providers-ansible_tower 75 1837 A 27 16 9 1 1 82.73 ManageIQ/manageiq-providers-azure 101 3925 C 75 51 15 4 5 74.25 ManageIQ/manageiq-providers-azure_stack 76 1406 A 17 13 0 0 4 NA ManageIQ/manageiq-providers-foreman 56 820 A 11 7 2 0 2 67.24 ManageIQ/manageiq-providers-google 84 1629 A 14 9 2 0 3 77.23 ManageIQ/manageiq-providers-kubernetes 81 3483 C 49 41 3 1 4 77.33 ManageIQ/manageiq-providers-lenovo 113 3682 A 52 10 38 0 4 90.81 ManageIQ/manageiq-providers-nuage 81 1738 B 21 9 11 0 1 91.64 ManageIQ/manageiq-providers-openshift 63 1296 A 8 4 2 1 1 39.76 ManageIQ/manageiq-providers-openstack 206 10656 C 237 136 85 3 13 73.02 ManageIQ/manageiq-providers-ovirt 126 6652 B 103 71 7 0 25 75.24 ManageIQ/manageiq-providers-redfish 68 1169 C 23 6 16 0 1 71.13 ManageIQ/manageiq-providers-scvmm 67 1683 B 25 14 4 0 7 70.57 ManageIQ/manageiq-providers-vmware 160 7898 C 211 157 26 2 26 66.21
  • 6.
    6 PRs (UI, SUI,UI/REACT Components, API ): PRs (UI, SUI, UI/REACT Components): 30 Bugs: 18, Enhancements: 9, Cleanup: 2, others: 1 Bugs ● Don't use the cloud_volume ems.parent_manager (#7133) ● Moved common code to a method to reset tier details when switching Type (#7157) Enhancements ● Check for container template instantiation support (#7169) ● Settings/Documentation page - help_documentation: use product_documentation_website (#7162) ● Provider forms replaced with the DDF-based React forms ○ Replace the physical infra provider forms with the DDF-based new one (#7091) ○ Replace the old network provider forms with the DDF-based ProviderForm (#7090) ○ Replace old angular config provider form with the new ProviderForm (#7047) ● Enable / disable policy move buttons as needed (#7168) ● Dialog Editor - Add support for local validation of box, tab and field (#443) UI (Harpreet Kataria)
  • 7.
    7 Enable / disablepolicy move buttons as needed (#7168) UI (Harpreet Kataria)
  • 8.
    8 Dialog Editor -Add support for local validation of box, tab and field (#443) UI (Harpreet Kataria)
  • 9.
    9 Common ● Fix eventcatchers not heartbeating until the first event is delivered ○ Worker was stuck in “starting” and didn’t enter do_work loop until an event was delivered ○ Prevented workers from being able to shutdown cleanly and had to be force killed ● Move “combined” refresh worker logic to core (#20302) ○ If a provider has child managers they are typically refreshed by the parent manager’s refresh worker ○ This logic was duplicated in every RefreshWorker::Runner class PROVIDERS (Adam Grare)
  • 10.
    10 Ansible Tower ● Changethe default api_version to v2 (#226) ○ When adding an Ansible Tower provider if the user doesn’t specify an api_version we would add v1 for them ○ Current versions of Tower don’t have v1 support anymore so users would have to manually add “/api/v2” to their Tower URL for it to work Foreman ● Create the Provider record when a Config Manager is created (#62) ○ Allows for use of DDF forms which require the use of the API PROVIDERS (Adam Grare)
  • 11.
    11 Google ● Enhance theGCE event parser to link up VMs to caught Events (#148) Kubernetes/OpenShift ● Fix metrics capture for nodes with differently named network interfaces (#386) ○ Previously were looking for network metrics on interfaces named eth* ○ Consistent Network Device Naming conventions also allow for ens*, eno*, and enp* PROVIDERS (Adam Grare)
  • 12.
    12 Ovirt ● Added collectionof guest tools_status (#505) VMware ● Fix refresh of imported Distributed Virtual Portgroups (#594) ○ These have a key that doesn’t match the ems_ref so VMs weren’t being linked properly ● Don’t put VimStrings in the provision phase_context (#597) ○ API was failing due to not having VMwareWebService/VimTypes required when asking for vm.miq_provision attribute PROVIDERS (Adam Grare)
  • 13.
    13 42 PRs merged Enhancements: ●Catch decoding parsing error manageiq-messaging/50 ● Add memory and cpu limits on deployments manageiq/20193 ● Add a flag to gate worker resource constraints manageiq-pods/532 ● Add OIDC support for the Self-Service UI manageiq-pods/559 ● Allow orchestrator to be updated during reconcile manageiq-pods/569 ● Add reconcile functions to Kafka and Zookeeper manageiq-pods/566 ● Add an override for the worker images deployed by the orchestrator manageiq-pods/558 Bugs: ● Double the initial delay and timeout for worker container liveness probes manageiq/20323 ● Remove the miq_workers table from the reindex list manageiq/20305 ● Add additional python3 module path for Centos8 support manageiq/20322 ● Fix issue where the square brackets are being created as directories in docker manageiq/20312 ● Fixed Settings hierarchy on Global region manageiq/20299 ● Ensure ems workers are killed by their server/orchestrator pod manageiq/20290 PLATFORM (Joe VLcek)
  • 14.
    14 42 PRs merged BuildImprovements: ● Generate rpm manifest manageiq-pods/563 ● Add rpm manifest script to manageiq-system rpm manageiq-rpm_build/73 ● Bust CDN cache after updating files manageiq-rpm_build/71 ● Add ServiceUI to npm manifest manageiq-rpm_build/70 ● Only cleanup repo files listed under directories in the config manageiq-rpm_build/69 ● Add a script to generate rpm manifest manageiq-appliance/289 ● Create rpm manifest manageiq-appliance-build/431 ● Remove pdf-writer demo directory manageiq-rpm_build/74 ● Add droplet_kit dependency manageiq-rpm_build/72 PLATFORM (Joe VLcek)
  • 15.
    15 ● Expose tagdescription in chargeback assignments (Libor P.) #859 GET /api/chargebacks/1?attributes=assigned_to { "href" : "http://localhost:3000/api/chargebacks/1", "id" : "1", "guid" : "b47a0ef0-4335-11df-aba8-001d09066d98", "description" : "Default", "rate_type" : "Compute", "created_on" : "2019-08-07T16:48:04Z", "updated_on" : "2020-06-25T09:54:52Z", "default" : true, "assigned_to" : [ { "tag" : { "href" : "http://localhost:3000/api/tags/279", "name" : "10240", "description" : "10GB", "category" : "quota_warn_memory", "assignment_prefix" : "vm" } } ] } API (Alberto Bellotti)
  • 16.
    16 Developer ● Systemd basedworkers on appliances was not working ○ Removed for jansa, but now enabled for master/kasparov ● manageiq.org is now using the manageiq-documentation, markdown based, master branch
  • 17.
    17 Questions? Discussion? Sprint 141Review - July 22 Meeting Start: 10:30 am EST
  • 18.
    THANK YOU manageiq.org github.com/ManageIQ twitter.com/ManageIQgitter.im/ManageIQ/manageiq facebook.com/manageiq talk.manageiq.org youtube.com/user/ManageIQVideolinkedin.com/company/manageiq