Bug #1658

Gentoo package re-write

Added by James Turnbull over 3 years ago. Updated 9 months ago.

Status:Code Insufficient Start date:10/18/2008
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:Gentoo
Target version:-
Affected Puppet version:0.24.4 Branch:
Keywords:Gentoo package provider eix equery
Votes: 0

Description

A rewrite of the Gentoo provider to not use eix.

gentoo_package_provider.patch (6.8 kB) James Turnbull, 02/26/2009 09:25 pm

History

Updated by James Turnbull over 3 years ago

  • Assignee set to James Turnbull

Updated by James Turnbull over 3 years ago

Code is at: http://github.com/jamtur01/puppet/tree/gentoo_provider

Updated by Ramon Alteren over 3 years ago

I’ll see if I can get some time to test this, cause frankly eix is a pita to deal with.

I’d love to see this go in 0.25

Updated by Luke Kanies over 3 years ago

This will only make it into 0.25 if it’s tested to be correct.

What’s the design decision to make here? Is the code ready?

Updated by James Turnbull over 3 years ago

  • Status changed from Needs Decision to In Topic Branch Pending Review

Updated by RijilV - about 3 years ago

So this doesn’t work for me.

Prep:

emerge -C colordiff

puppet code:

package { “colordiff”: category => “app-misc” }

yields:

debug: Puppet::Type::Package::ProviderPortage: Executing ‘/usr/bin/equery -C l app-misc/colordiff’ err: //Node[boaz.nexus]/colordiff/Package[colordiff]: Failed to retrieve current state of resource: No package found with the specified name [app-misc/colordiff]

With those options to equery it only looks at installed applications, you also need -p (portage tree) and -o (any overlays). I modified the patch but still don’t see it installing my package:

debug: Puppet::Type::Package::ProviderPortage: Executing ‘/usr/bin/equery -C l -o -p colordiff’ debug: Puppet::Type::Package::ProviderPortage: Executing ‘/usr/bin/emerge —nodeps -p app-misc/colordiff’

I’m not sure what else needs to be done to get that working.

Also, my ruby version complained about the two equry lines (17 and 93), it wanted more ()’s for equery.

Updated by Luke Kanies about 3 years ago

  • Status changed from In Topic Branch Pending Review to Code Insufficient
  • Target version changed from 0.25.0 to 4

Sounds like this isn’t ready yet.

Also, seems like we should maybe have multiple package types for gentoo, rather than just sticking to just one.

We could do an eix type and something else, so people can pick, rather than forcing it down to one form. We’ve got apt and aptitude, after all.

Updated by Alexey Lapitsky about 3 years ago

I think eix should stay as option at least, equery cause a huge performance hit.

lex@note / $ time equery list  app-misc/colordiff
[ Searching for package 'colordiff' in 'app-misc' among: ]
 * installed packages
[I--] [  ] app-misc/colordiff-1.0.7 (0)

real    0m2.326s
user    0m2.172s
sys     0m0.112s
lex@note / $ time eix  app-misc/colordiff
[I] app-misc/colordiff
     Available versions:  1.0.7 ~1.0.8a
     Installed versions:  1.0.7(14:14:00 02.03.2009)
     Homepage:            http://colordiff.sourceforge.net/
     Description:         Colorizes output of diff


real    0m0.155s
user    0m0.080s
sys     0m0.004s

You can see more difference on servers with high disk I/O load when porage tree is not cached.

Updated by James Turnbull about 1 year ago

  • Assignee deleted (James Turnbull)

Updated by James Turnbull 9 months ago

  • Target version deleted (4)

Also available in: Atom PDF