When running some tasks the logger might not be available when loading configuration.
Code loaded with require is not reloaded in development mode after each request and therefore it's needed to restart the whole server. Using require_dependency instead might lead to memory leaks when some constants are not marked for reload. Since we have `lib` dir already in autoload paths we can let Rails to load and unload the code automatically when following convetions. Therefore modules under `lib/resources` dir were moved to `Resources` module so that Rails knows where to find them. This change should also improve the code readability: e.g. it's clearer where the Candlepin module is defined now.
New generator is called from the spec %build section. I had to move our setup_admin out of bin/katello to src/katello/client/main.py library file. It will possibly make some conflicts, but eventually its a good idea to have such a library function out of main executable.
We are currently relying on katello-configure's puppet manifests to install qpid and mongodb RPMS. See modules/qpid/manifests/install.pp and modules/qpid/manifests/install.pp. We ideally will just add these to the katello-common set of Requires and not be forced to have katello-configure catch this missing dependency. Without this it makes it harder to pre-build systems with the right RPM set and is misleading that you could remove qpid-cpp-server-ssl and nothing would complain. So I am adding those to katello-all package rather than katello-common, because those are dependencies of backend engines which are also installed in the "all" section. After this patch, we should not see any packages to be installed using Puppet: $ grep "yum.*install" /var/log/katello/katello-configure/main.log
Cli uses environment names as input params instead of id, so calls from the cli need access for information on environments based of name of the environment or other search clauses, This commit adds a "search" route to the environments controllers that first finds the environment that matches the search clauses and then checks to see if for each environment if the user can do at least one of read_contents, read_systems, register_systems, update_systems, delete_systems, read_changesets, manage_changesets, promote_changesets with respect to that environment. The cli calls were changed to follow the new route api/organization/<:org_id>/environments/search This commit also contains minor changes to the tasks_controller and useful unit tests.
This change is to load the system_errata.js when loading the system's page. This behavior is consistent w/ how js is loaded for many of the panes. In addition, it addresses a JS error that currently exists when attempting to access the Errata pane.
So I am adding support for plain text passwords encryption (please note this is encryption for passwords we need to keep - obscurity not security). 1) There is a new utility called katello-passwd (see man page or help option) to encrypt a password. 2) Encrypted passwords start with $1$ (1 is for version 1) and it can only be used for database-password setting (we do not have any other plaintext passwords in Katello yet). 3) Katello can also read unencrypted passwords from this field (if it does not start with $1$). 4) I will raise a RFE against Candlepin to do the same for database password. Pulp is fine (no passwords there so far). 5) I modified katello-configure to use the function to encrypt database password during installation. 6) Encryption is done with passphrase stored in /etc/katello/secure directory, the file is deployed with katello-generate-passphrase and this is automatically done by our installer. The file has extra SELinux protection (it's not in the regular etc_t domain).
… export They were removed with headpin merge but cli uses them.