Page MenuHomeDevCentral

Automate Poudriere deployment
Open, NormalPublic

Description

Currently, the devserver role only install poudriere, and let us do the (one shot) configuration manually.

There are several workflows for Poudriere, as it can be used:

  • to test ports (what we want)
  • to serve a signed repository
  • to build packages in bulk for other servers

References:

Event Timeline

I've tested poudriered but bump on {"type":"error","message":"Expecting a string for the arguments"} with testport

Configuration:

1# -------------------------------------------------------------
2# Poudriere configuration :: daemon
3# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
4# Project: Nasqueron
5# License: Trivial work, not eligible to copyright
6# Source file: roles/devserver/poudriere/files/poudriered.conf
7# -------------------------------------------------------------
8#
9# <auto-generated>
10# This file is managed by our rOPS SaltStack repository.
11#
12# Changes to this file may cause incorrect behavior
13# and will be lost if the state is redeployed.
14# </auto-generated>
15
16socket "/var/run/poudriered.sock"
17pidfile "/var/run/poudriered.pid"
18cachedir /usr/local/poudriere/cache
19logs /usr/local/poudriere/logs
20
21command ports {
22 argument "-l" {
23 group "*"
24 }
25
26 argument "-c" {
27 group wheel
28 }
29
30 argument "-d" {
31 group wheel
32 }
33
34 group nasquenautes
35}
36
37command "*" {
38 group ops
39}
40
41operation quit {
42 group ops
43}
44
45operation testport {
46 group nasquenautes
47}
48
49operation queue {
50 group nasquenautes
51}
52
53operation "reload" {
54 group ops
55}

Poudriere seems stable for ports development.

Next step is to mix ports from FreeBSD ports tree and rPORTS to provide Poudriere a merged ports tree to be able to build packages for https://packages.nasqueron.org/freebsd

We can follow the portshaker section from https://zewaren.net/poudriere.html to see how to configure portshaker.