puppetlabs / puppetlabs-package

A Puppet Task module, for package.
Apache License 2.0
9 stars 25 forks source link

Package task output is misleading when using yum #236

Closed cliveweir closed 3 years ago

cliveweir commented 3 years ago

Describe the Bug

The package task produces misleading output when using yum and the optional "version" parameter is passed, some examples:

❯ bolt task run package -t 'fiendish-sister.delivery.puppetlabs.net' --params '{"action":"install", "name":"vim-enhanced", "version":"2:8.0.1763-15.el8"}'

Started on fiendish-sister.delivery.puppetlabs.net...
Finished on fiendish-sister.delivery.puppetlabs.net:
  {
    "status": "uninstalled",
    "version": ""
  }
Successful on 1 target: fiendish-sister.delivery.puppetlabs.net
Ran on 1 target in 17.75 sec

^^^ The vim-enhanced package was not installed before running this task, it was installed successfully after the task was ran. Output says "uninstalled"

❯ bolt task run package -t 'fiendish-sister.delivery.puppetlabs.net' --params '{"action":"upgrade", "name":"sed", "version":"4.5-2.el8"}'

Started on fiendish-sister.delivery.puppetlabs.net...
Finished on fiendish-sister.delivery.puppetlabs.net:
  package  is not installed
Successful on 1 target: fiendish-sister.delivery.puppetlabs.net
Ran on 1 target in 13.61 sec

^^^ sed was upgraded from 4.5.1 to 4.5.2 but output says "package is not installed"

Expected Behavior

Compare output when the optional "version" parameter is not passed:

❯ bolt task run package -t 'fiendish-sister.delivery.puppetlabs.net' --params '{"action":"upgrade", "name":"make"}'

Started on fiendish-sister.delivery.puppetlabs.net...
Finished on fiendish-sister.delivery.puppetlabs.net:
  {
    "old_version": "4.2.1-9.el8",
    "version": "4.2.1-10.el8"
  }
Successful on 1 target: fiendish-sister.delivery.puppetlabs.net
Ran on 1 target in 13.47 sec

❯ bolt task run package -t 'fiendish-sister.delivery.puppetlabs.net' --params '{"action":"install", "name":"vim-enhanced"}'

Started on fiendish-sister.delivery.puppetlabs.net...
Finished on fiendish-sister.delivery.puppetlabs.net:
  {
    "status": "installed",
    "version": "8.0.1763-15.el8"
  }
Successful on 1 target: fiendish-sister.delivery.puppetlabs.net
Ran on 1 target in 17.99 sec

Steps to Reproduce

See above examples, only happens when the "version" parameter is passed to the package task and yum is the package manager.

Environment

cliveweir commented 3 years ago

I'm working on a fix