Create package list for poudriere

From wiki
Revision as of 13:50, 30 May 2019 by imported>Jacob (Created page with "== 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="")' |...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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-pkglist.org

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

# sort -u 12amd64-sjapkg-jacloud-pkglist 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-pkglist.org 12amd64-sjapkg-jacloud-pkglist > 12amd64-sjapkg-jacloud-unique-pkglist

And then run that one through poudriere options.

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

Then run the build with the new pkglist.

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