…-create Bug 1232921 https://bugzilla.redhat.com/show_bug.cgi?id=1232921 When creating an application with an environment variable, report an error if the environment variable is not provided with the proper syntax. Previously, incorrect environment variables were ignored and the application creation continued.
Modify app show --gears (1) to list all cartridges in the gear group for a given gear and (2) to indicate cartridges that expose endpoints on the gear by highlighting those cartridges' names in green. The REST API does not provide an interface to determine which cartridges are running on a gear; rather, we can only determine the gear group that is associated with a gear and the endpoints that cartridges on that gear are exposing. On the one hand, the gear group associated with a given gear may include cartridges that are not actually on that particular gear, and so if we list the cartridges in the gear group, we may list cartridges that are not actually on the gear. On the other hand, a cartridge may be on a gear but not be exposing any endpoints (e.g., the cron cartridge), and so if we list only the cartridges that are exposing endpoints on the gear, we may fail to list some cartridges that are in fact on the gear. Prior to commit d858bae, we chose the first option of listing all cartridges in the gear group, including false positives. Commit d858bae changed app show --gears to implement the second option of listing cartridges that were exposing endpoints, which caused false negatives, as well as duplicate entries for a cartridge that were exposing multiple endpoints. With this commit, a cartridge may be listed for a gear even if it is not actually on that gear, but the green highlight or absence thereof should make it clear in the case of a cartridge that normally exposes endpoints whether that cartridge really is present on a gear or whether it is merely associated with the gear through the gear group but is not actually present on the particular gear. This commit addresses bug 1125926 and bug 1130028.
As noted in https://bugzilla.redhat.com/show_bug.cgi?id=1187806#c11, the `always_auth` option wasn't being properly parsed as a boolean. This change fixes that by storing the parsed value temporarily.
On systems where x509 client cert authentication is needed for every REST API URL, the API requests from `RHC::Rest::Api#initialize` will fail since they don't include the authentication credentials. This change adds the "`always_auth`" config option which, when set to "`true`" forces auth for all REST API calls. The setting defaults to "`false`", yielding the original behavior. Enterprise bug 1187806 https://bugzilla.redhat.com/show_bug.cgi?id=1187806