Red Hat Bugzilla – Bug 1028152
Cartridge names including explicit redhat vendor rejected as invalid by broker during app create
Last modified: 2015-05-14 20:56:04 EDT
Description of problem:
Cartridge names specified to the REST API for app creation, cartridge addition, etc. now support "fully qualified" identifiers in a `vendor-name-version` format; it's also assumed that when vendor is not specified, `redhat` will be the implied vendor.
By these rules, it should be possible to specify a cartridge whose vendor is explicitly redhat, e.g.:
`rhc app-create phpapp redhat-php-5.3 ...`
However, the broker rejects this cartridge name as invalid/not found:
`SUCCESS ACTION=ADD_APPLICATION USER_ID=527baffa3b4bc01266000001 LOGINemail@example.com DOMAIN=dmace Unexpected error: CLIENT_ERROR: No cartridge sources found to install.`
Version-Release number of selected component (if applicable):
Attempt to create an application with any cartridge whose vendor is redhat.
Steps to Reproduce:
1. `rhc app-create phpapp redhat-php-5.3 ...`
An rhc error: `There are no cartridges that match 'redhat-php-5.3'.`
A new application using the redhat php-5.3 cartridge.
Ideally, we should bump up the REST API version and change the cartridge structure that we send back in the REST response to include separate fields for name, version, and vendor.
Please also add `cartridge version` to the cartridge elements as part of this in addition to the `software version`, as all four elements are essential to a fully qualified cartridge reference (and on the backend, missing elements are substituted with defaults).
This is an intentional change. We will no longer support the vendor pattern on create. Names are opaque and must be exact.