| Summary: | rhncfg-client get fails for configuration files that exist on target system as directories | ||
|---|---|---|---|
| Product: | Red Hat Satellite 5 | Reporter: | Stephen Benjamin <stbenjam> |
| Component: | Configuration Management | Assignee: | Tomas Lestach <tlestach> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Red Hat Satellite QA List <satqe-list> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 540 | CC: | cperry, mminar |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | 5.9.27-6-el5sat | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2013-01-30 17:09:24 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Bug Depends On: | |||
| Bug Blocks: | 462714 | ||
This was fixed a while ago as a side-effect of bug 637833 |
Description of problem: A user accidentally created a "configuration file" named /usr/local/sbin. As this matches a standard directory name, Satellite should prohibit this, or at least rhncfg-client should fail gracefully. Version-Release number of selected component (if applicable): rhncfg-client-5.9.27-1.el5sat How reproducible: Always Steps to Reproduce: 1. Create a configuration file that matches a directory already on the system (e.g., /usr/local/sbin) 2. Attempt to deploy the configuration file Actual results: [root@XXXX log]# rhncfg-client get Deploying /var/spool/rsyslog Traceback (most recent call last): File "/usr/bin/rhncfg-client", line 34, in ? sys.exit(Main().main() or 0) File "/usr/share/rhn/config_common/rhn_main.py", line 187, in main handler.run() File "/usr/share/rhn/config_client/rhncfgcli_get.py", line 101, in run dep_trans.rollback() File "/usr/share/rhn/config_common/transactions.py", line 241, in rollback self._chown_chmod_chcon(d, d, val) File "/usr/share/rhn/config_common/transactions.py", line 107, in _chown_chmod_chcon if file_info['filetype'] != 'symlink': KeyError: 'filetype' Expected results: - Deployment of all configuration files shouldn't fail because 1 file is invalid. - It should be clear which configuration file failed. In the example above, the relevant file was /usr/local/bin, but that is not obvious from the output. Only determined the failed file by editing transactions.py to tell me. Additional info: