Bug #12270
closedhammer activation-key allows bad max-content-hosts value when unlimited-content-hosts is true
Description
Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1156536
Description of problem:
This command fails, as it should:
hammer activation-key create \
--organization-id X \
--name Y \
--max-content-hosts -5
However, this command succeeds:
hammer activation-key create \
--organization-id X \
--name Y \
--max-content-hosts -5 \
--unlimited-content-hosts true
As demonstrated above, `hammer activation-key` allows an invalid value for the `--max-content-hosts` option when `--unlimited-content-hosts` is true. Some invalid values are correctly disallowed, such as alphanumeric strings. However, any negative number appears to be OK. Here's a more concrete example:
$ hammer activation-key create \
--organization-id 5 \
--name foobar4 \
--max-content-hosts -1 \
--unlimited-content-hosts true
Activation key created
$ hammer activation-key info \
--organization-id 5 \
--name foobar4
name: foobar4
ID: 53
Description:
Lifecycle Environment:
Content View:
Host Collections:
The `max-content-hosts` option is entirely ignored.
>>> attrs = ActivationKey(id=53).read_json()
>>> for attr in ('unlimited_content_hosts', 'max_content_hosts'):
... print(attrs[attr])
...
True
None
Version-Release number of selected component (if applicable):
Tested against a nightly build of Satellite 6 on a machine with the following packages installed:
- apr-util-ldap-1.3.9-3.el6_0.1.x86_64
- candlepin-0.9.32-1.el6.noarch
- candlepin-common-1.0.8-1.el6.noarch
- candlepin-selinux-0.9.32-1.el6.noarch
- candlepin-tomcat6-0.9.32-1.el6.noarch
- elasticsearch-0.90.10-7.el6.noarch
- foreman-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-compute-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-gce-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-libvirt-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-ovirt-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-postgresql-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-proxy-1.7.0-0.develop.201410221520gitccd77aa.el6.noarch
- foreman-release-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- foreman-selinux-1.7.0-0.develop.201410210825gitaab37c6.el6.noarch
- foreman-vmware-1.7.0-0.develop.201410232354git5e8706d.el6.noarch
- katello-2.1.0-1.201410231000gitac15899.el6.noarch
- katello-certs-tools-2.0.1-1.el6.noarch
- katello-default-ca-1.0-1.noarch
- katello-installer-2.1.0-1.201410162242git33b9fc3.el6.noarch
- katello-repos-2.1.1-1.el6.noarch
- katello-server-ca-1.0-1.noarch
- openldap-2.4.23-32.el6_4.1.x86_64
- pulp-docker-plugins-0.2.1-0.2.beta.el6.noarch
- pulp-katello-0.3-3.el6.noarch
- pulp-nodes-common-2.5.0-0.7.beta.el6.noarch
- pulp-nodes-parent-2.5.0-0.7.beta.el6.noarch
- pulp-puppet-plugins-2.5.0-0.7.beta.el6.noarch
- pulp-puppet-tools-2.5.0-0.7.beta.el6.noarch
- pulp-rpm-plugins-2.5.0-0.7.beta.el6.noarch
- pulp-selinux-2.5.0-0.7.beta.el6.noarch
- pulp-server-2.5.0-0.7.beta.el6.noarch
- python-ldap-2.3.10-1.el6.x86_64
- ruby193-rubygem-ldap_fluff-0.3.2-1.el6.noarch
- ruby193-rubygem-net-ldap-0.3.1-2.el6.noarch
- ruby193-rubygem-runcible-1.2.0-1.el6.noarch
How reproducible:
100%
Steps to Reproduce:
See "Description of problem" section at top of post.
Actual results:
An activation key is created.
Expected results:
No activation key is created.
Additional info:
The API exhibits a similar bug, though its behaviour is not identical.
Updated by The Foreman Bot almost 9 years ago
- Status changed from New to Ready For Testing
- Pull request https://github.com/Katello/hammer-cli-katello/pull/327 added
- Pull request deleted (
)
Updated by Christine Fouant almost 9 years ago
- Status changed from Ready For Testing to Closed
- % Done changed from 0 to 100
Applied in changeset hammer-cli-katello|773e9d892f0c60036adf69c45d7d3a40acf6eb28.
Updated by Eric Helms almost 9 years ago
- Translation missing: en.field_release set to 86
- Triaged changed from No to Yes