Bug 1731112
| Summary: | Discovered hosts stuck when attribute set is missing | ||
|---|---|---|---|
| Product: | Red Hat Satellite | Reporter: | Jitendra Yejare <jyejare> |
| Component: | Discovery Plugin | Assignee: | Lukas Zapletal <lzap> |
| Status: | CLOSED ERRATA | QA Contact: | Jitendra Yejare <jyejare> |
| Severity: | urgent | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.6.0 | CC: | egolov, lzap, rabajaj |
| Target Milestone: | 6.6.0 | Keywords: | Regression, Triaged |
| Target Release: | Unused | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | tfm-rubygem-foreman_discovery-15.0.1-1 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2019-10-22 12:47:55 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1730397 | ||
Upstream version bump pending: https://github.com/theforeman/foreman-packaging/pull/3951 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2019:3172 |
Description of problem: When the discovery process is canceled for any reason, the discovery_attribute_set related table is not properly saved because database transactions are not used. Unfortunately, rails validator does not allow to save the record anymore, therefore, all subsequent discovery updates fail with 422 "Validation failed: Discovery attribute set can't be blank". The initial discovery upload fails with 422 :ActiveRecord::RecordNotSaved: Failed to save the new associated discovery_attribute_set Version-Release number of selected component (if applicable): Satellite 6.6 snap 11 How reproducible: Always Steps to Reproduce: 1. Attempt to PXE boot the host to be discovered by satellite. Follow steps for provisioning from https://github.com/SatelliteQE/robottelo/blob/master/tests/foreman/cli/test_discoveredhost.py#L407 (Test : test_positive_provision_pxe_host_with_bios_syslinux) Or, 1. We can POST the facts to satellite overs facts url - https://satellite.com/api/v2/discovered_hosts/facts (Follow steps from - https://github.com/SatelliteQE/robottelo/blob/master/tests/foreman/api/test_discoveredhost.py#L100 ( Test - test_positive_upload_facts ) Actual results: 1. The discovered host stucks when attribute stuck is missing 2. Throws error - 'Validation failed: Discovery attribute set can't be blank' Expected results: Discovered Host is successfully discovered. Additional info: