Create package list for poudriere
Jump to navigation
Jump to search
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 \ > 121amd64-mypkg-aap-pkglist
Transfer the file to the poudriere server.
On the poudriere server
Save the original file
# cd /usr/local/poudriere/pkglist/ # mv 121amd64-mypkg.pkglist 12amd64-mypkg.pkglst.org
Then merge them with sort -u which removes duplicate lines.
# sort -u 121amd64-mypkg-jacloud.pkglst 121amd64-mypkg.pkglist.org \ > 121amd64-mypkg.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]' 121amd64-mypkg-pkglst.org \
121amd64-mypkg-aap.pkglst > 121amd64-mypkg-aap-unique.pkglst
And then run that one through poudriere options.
# poudriere options -j 121amd64 -p sjapkg -f \
/usr/local/poudriere/pkglist/121amd64-sjapkg-aap-unique.pkglst
Then run the build with the new pkglist.
# poudriere bulk -j 121amd64 -p sjapkg -f \
/usr/local/poudriere/pkglist/121amd64-mypkg.pkglst
Previous Setup poudriere clients Return Update poudriere repository