Bug #12270

hammer activation-key allows bad max-content-hosts value when unlimited-content-hosts is true

Added by Christine Fouant almost 5 years ago. Updated about 2 years ago.

Target version:
Bugzilla link:
Fixed in Releases:
Found in Releases:


Cloned from
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
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])

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:

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.

Associated revisions

Revision 773e9d89 (diff)
Added by Christine Fouant almost 5 years ago

fixes #12270 - validates input data for activation key create, BZ1156536

Revision a895f42b
Added by Adam Price almost 5 years ago

Merge pull request #327 from cfouant/validate-host-max

fixes #12270 - validates input data for activation key create, BZ1156536


#1 Updated by The Foreman Bot almost 5 years ago

  • Status changed from New to Ready For Testing
  • Pull request added
  • Pull request deleted ()

#2 Updated by Christine Fouant almost 5 years ago

  • Status changed from Ready For Testing to Closed
  • % Done changed from 0 to 100

#3 Updated by Eric Helms almost 5 years ago

  • Legacy Backlogs Release (now unused) set to 86
  • Triaged changed from No to Yes

Also available in: Atom PDF