Create package list for poudriere: Difference between revisions

From wiki
Jump to navigation Jump to search
imported>Jacob
No edit summary
imported>Jacob
No edit summary
Line 26: Line 26:
     /usr/local/poudriere/pkglist/12amd64-sjapkg.pkglst
     /usr/local/poudriere/pkglist/12amd64-sjapkg.pkglst


<hr><p style="text align:left;">
<hr>
<p style="text align:left;">
Previous [[Setup poudriere clients]]
Previous [[Setup poudriere clients]]
<span style="float:right;">
<span style="float:right;">

Revision as of 21:40, 11 January 2020


Previous Setup poudriere clients Next Update poudriere repository


On the client

The commando below extracts a the info from the pkg database into the format required for the poudriere commands

# pkg info --all -E -o | awk '!($1="")' | sed -e 's/^[ \t]*//' | sort \
   > 12amd64-sjapkg-jacloud-pkglist

Transfer the file to the poudriere server.

On the poudriere server

Save the original file

# cd /usr/local/poudriere/pkglist/
# mv 12amd64-sjapkg.pkglist 12amd64-sjapkg.pkglst.org

Then merge them with sort -u which removes duplicate lines.

# sort -u 12amd64-sjapkg-jacloud.pkglst 12amd64-sjapkg.pkglist.org \
  > 12amd64-sjapkg.pkglist

If you need to run poudriere options, it is best to get the unique lines in the new file and run those through poudriere options. As poudriere options would go through all lines which takes a lot of time.

# awk 'FNR==NR {a[$0]++; next} !a[$0]' 12amd64-sjapkg-pkglst.org \
  12amd64-sjapkg-jacloud.pkglst > 12amd64-sjapkg-jacloud-unique.pkglst

And then run that one through poudriere options.

# poudriere options -j 12amd64 -p sjapkg -f \
    /usr/local/poudriere/pkglist/12amd64-sjapkg-jacloud-unique.pkglst

Then run the build with the new pkglist.

# poudriere bulk -j 12amd64 -p sjapkg -f  \
    /usr/local/poudriere/pkglist/12amd64-sjapkg.pkglst

Previous Setup poudriere clients Return Update poudriere repository

Up Poudriere setup