Issue #23374 has been reported by Paweł Tomulik. ---------------------------------------- Bug #23374: Ports provider is buggy and lacks several crucial features https://projects.puppetlabs.com/issues/23374
* Author: Paweł Tomulik * Status: Unreviewed * Priority: High * Assignee: * Category: * Target version: * Affected Puppet version: * Keywords: freebsd ports package * Branch: ---------------------------------------- Hi, I was trying to use puppet on FreeBSD with more or less success. One of the biggest problem was the `ports` package provider, which appears to be buggy and lacks some important features. I'm not able to describe in depth all the issues I had, so I'll just leave a short list and provide link to description here. Some of the issues with current ports provider: * no way to define *build options* for a package - normally FreeBSD packages are first configured by user with `make config`, then compiled + installed. Current `ports` provider has no way to configure packages. Without this feature it is a little bit useless, * to identify packages it uses internally *portnames* instead of *port origins*, *portnames* are ambiguous and cause lot of problems (two packages with same *portname* may be installed at same time, and puppet is not able to handle them correctly), * it claims it has `upgradeable` feature, but this doesn't work (what worse - it may approach to downgrade in some situations, fortunatelly without luck), * to list installed packages it uses `pkg_info`, which is a part of the "old" *pkg* toolstack. FreeBSD is now transitioning to new *pkgng* tools, * once installed a package, the provider is unable to uninstall it in most cases (dependency problems, when other packages depend on it) - this could be easilly mitigated with `uninstall_options` * output of `puppet resource package` is ususally wrong, * no `install_options` feature, * no `uninstall_options` feature, * finally, there seems to be no tests (neither system, nor unit) for this provider I've reimplemented the provider. Currently it's available as a standalone puppet module for installation, but I would like to propose it to be included in puppet core (PR on the way). Most of the issues I've found are resolved the new implementation. They're described here: https://github.com/ptomulik/puppet-packagex#resolved-issues For trying and testing, the standalone module is available at http://forge.puppetlabs.com/ptomulik/packagex Repo available at github: https://github.com/ptomulik/puppet-packagex The PR I'm preparing is simply the `ptomulik-packagex` module converted by a shell script to fit to puppet source tree. -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://projects.puppetlabs.com/my/account -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-bugs. For more options, visit https://groups.google.com/groups/opt_out.
