Overview
This is a Git jail that can be started with pot
but it can also be deployed via nomad
.
The git user home directory is in /var/db/git
where also a directory .ssh
for authorized key access resides.
It is suggested that this directory is mounted from outside the jail when it is run as a nomad
task so that it is persistent (see example below).
Since some fusefs
filesystems (e.g. s3fs
) make setting up correct permissions for mounts impossible at the moment due to bugs, sshd
is run with StrictModes no
in /etc/ssh/sshd_config
.
Git is started as blocking task when the jail is started (see git-nomad+4.sh
).
The image also is slimmed (see git-nomad+3.sh
)
For more details about nomad
images, see about potluck.
Nomad Job Description Example
It is suggested to mount the jail directory /var/db/git
from outside as this contains the git database and the .ssh/authorized_keys
file for access:
You can also copy-in an SSH public key to /root/publickey
exactly and it will be automatically added to the git user .ssh/authorized_keys
file. This will overwrite the file each time, so add all keys to the copy-in file.
job "examplegit" {
datacenters = ["datacenter"]
type = "service"
group "group1" {
count = 1
task "www1" {
driver = "pot"
service {
tags = ["git"]
name = "git-example-service"
port = "ssh"
check {
type = "tcp"
name = "tcp"
interval = "60s"
timeout = "30s"
}
}
config {
image = "https://potluck.honeyguide.net/git-nomad"
pot = "git-nomad-amd64-14_1"
tag = "1.20.1"
command = "/usr/local/bin/cook"
args = ["-n","gitnomad"]
copy = [
"/path/to/id_rsa.pub:/root/publickey"
]
mount = [
"/mnt/s3/web/git:/var/db/git"
]
port_map = {
ssh = "22"
}
}
resources {
cpu = 200
memory = 64
network {
mbits = 10
port "ssh" {}
}
}
}
}
}
Getting Started
- Image Readme
- How To Use The Ready-Made Image
- Alternatively: Create a Jail With This Flavour Yourself
- Version History
- Manual Image Download Links
- Jenkins Pot Creation Logs
How To Use The Ready-Made Image
FreeBSD 14.1:
pot import -p git-nomad-amd64-14_1 -t 1.20.1 -U https://potluck.honeyguide.net/git-nomad
With Signify Verification:
fetch https://potluck.honeyguide.net/potluck.pub; pot import -p git-nomad-amd64-14_1 -t 1.20.1 -C potluck.pub -U https://potluck.honeyguide.net/git-nomad
If you don’t want to use the default pot
bridged network configuration but instead need an individual network setup (e.g. assign a host IP address), after importing it you can simply clone the jail like that (em0 is the host network adapter in this example):
pot clone -P git-nomad-amd64-14_1 -p my-cloned-jail -N alias -i "em0|10.10.10.10"
Note: Some images might require specific network configuration, double check the Overview-chapter at the top.
Alternatively: Create a Jail With This Flavour Yourself
1. Create Flavour Files
Save all files and directories from https://github.com/hny-gd/potluck/tree/master/git-nomad to /usr/local/etc/pot/flavours/
2. Create Jail From Flavour
Run
pot create -b <FreeBSD Version> -p <jailname> -t single -N public-bridge -f fbsd-update
with your FreeBSD version (e.g. 14.1) and the name your jail should get.
Note: Some images might require specific network configuration, double check the Overview-chapter at the top.
Version History
1.20
- Version bump for new base image
1.19
- Version bump for new base image 14.1
- Extra steps to trim image size
1.18
- Version bump for new base image
1.17
- Version bump for new base image
1.15
- Version bump for new base image
1.14
- Version bump for new base image
1.13
- Version bump for new base image
- Include automatic copy-in pubkey to git user authorized_keys
- Overwrite existing authorized_keys with copied-in publickey
- Update versions in sample nomad file in README
1.12
- Version bump for base image
- FBSD14 base image
1.11
- Version bump for new base image
1.10
- Version bump for new base image
1.9
- Version bump for new base image
1.8
- Version bump for new base image
1.7
- Version bump for new base image
1.6
- Version bump for new base image
1.5
- Version bump for new base image
1.4
- Version bump for new base image
- Signified
1.3
- Version bump for new base image
1.2
- Version bump for new base image
1.1
- Version bump for new base image
- New changelog format
1.0.10
- Version bump for rebuild to fix missing images on potluck site
- Updated job file in README for 13.1 and latest version this image
1.0.9
- Version bump for p3 rebuild
- Add checklist
1.0.8
- Add getopts for NODENAME
- make NODENAME optional
1.0.7
- typo with ssh instead of sshd
1.0.6
- Version bump for rebuild on new image, new cook script
1.0.5
- Version bump for FreeBSD-13.1 image
1.0.4
- Rebuild for FreeBSD 12_3 and 13 & pot 13
1.0.3
- Rebuild for FreeBSD 13 & new packages
1.0.2
- Apply epair0b patch from https://raw.githubusercontent.com/grembo/potman/master/flavours/example/example.sh
1.0.1
- Trigger build of FreeBSD 12.2 image & rebuild FreeBSD 11.4 image to update packages
1.0
- Initial commit
These images were built on Wed Oct 30 20:34:47 UTC 2024
Manual Image Download Links
git-nomad-amd64-14_1_1.20.1.xz (
)
git-nomad-amd64-14_1_1.20.1.xz.skein (
)
git-nomad-amd64-14_1_1.20.1.xz.skein.sig (
)
git-nomad-amd64-14_1_1.20.1.xz.meta (
)
Jenkins Pot Creation Logs
git-nomad-amd64-14_1_1.20.1:
git-nomad/git-nomad:
set-attribute -A persistent -V OFF
set-attribute -A no-rc-script -V ON
copy-in -s /usr/local/etc/pot/flavours/git-nomad.d/local -d /root/.pot_local
git-nomad/git-nomad.sh:
#!/bin/sh
# Based on POTLUCK TEMPLATE v3.0
# Altered by Michael Gmelin
#
# EDIT THE FOLLOWING FOR NEW FLAVOUR:
# 1. RUNS_IN_NOMAD - true or false
# 2. If RUNS_IN_NOMAD is false, can delete the <flavour>+4 file, else
# make sure pot create command doesn't include it
# 3. Create a matching <flavour> file with this <flavour>.sh file that
# contains the copy-in commands for the config files from <flavour>.d/
# Remember that the package directories don't exist yet, so likely copy
# to /root
# 4. Adjust package installation between BEGIN & END PACKAGE SETUP
# 5. Adjust jail configuration script generation between BEGIN & END COOK
# Configure the config files that have been copied in where necessary
# Set this to true if this jail flavour is to be created as a nomad
# (i.e. blocking) jail.
# You can then query it in the cook script generation below and the script
# is installed appropriately at the end of this script
RUNS_IN_NOMAD=true
# set the cook log path/filename
COOKLOG=/var/log/cook.log
# check if cooklog exists, create it if not
if [ ! -e $COOKLOG ]
then
echo "Creating $COOKLOG" | tee -a $COOKLOG
else
echo "WARNING $COOKLOG already exists" | tee -a $COOKLOG
fi
date >> $COOKLOG
# -------------------- COMMON ---------------
STEPCOUNT=0
step() {
STEPCOUNT=$(("$STEPCOUNT" + 1))
STEP="$*"
echo "Step $STEPCOUNT: $STEP" | tee -a $COOKLOG
}
exit_ok() {
trap - EXIT
exit 0
}
FAILED=" failed"
exit_error() {
STEP="$*"
FAILED=""
exit 1
}
set -e
trap 'echo ERROR: $STEP$FAILED | (>&2 tee -a $COOKLOG)' EXIT
# -------------- BEGIN PACKAGE SETUP -------------
step "Bootstrap package repo"
mkdir -p /usr/local/etc/pkg/repos
# only modify repo if not already done in base image
# shellcheck disable=SC2016
test -e /usr/local/etc/pkg/repos/FreeBSD.conf || \
echo 'FreeBSD: { url: "pkg+http://pkg.FreeBSD.org/${ABI}/quarterly" }' \
>/usr/local/etc/pkg/repos/FreeBSD.conf
ASSUME_ALWAYS_YES=yes pkg bootstrap
step "Touch /etc/rc.conf"
touch /etc/rc.conf
# this is important, otherwise running /etc/rc from cook will
# overwrite the IP address set in tinirc
step "Remove ifconfig_epair0b from config"
# shellcheck disable=SC2015
sysrc -cq ifconfig_epair0b && sysrc -x ifconfig_epair0b || true
step "Disable sendmail"
service sendmail onedisable || true
step "Create /usr/local/etc/rc.d"
mkdir -p /usr/local/etc/rc.d
step "Clean freebsd-update"
rm -rf /var/db/freebsd-update
mkdir -p /var/db/freebsd-update
step "Install package nano"
pkg install -y nano
step "Install package sudo"
pkg install -y sudo
step "Install package git"
pkg install -y git
step "Clean package installation"
pkg clean -ay
# -------------- END PACKAGE SETUP -------------
#
# Now generate the run command script "cook"
# It configures the system on the first run by creating the config file(s)
# On subsequent runs, it only starts sleeps (if nomad-jail) or simply exits
#
# this runs when image boots
# ----------------- BEGIN COOK ------------------
step "Clean cook artifacts"
rm -rf /usr/local/bin/cook /usr/local/share/cook
step "Install pot local"
tar -C /root/.pot_local -cf - . | tar -C /usr/local -xf -
rm -rf /root/.pot_local
step "Set file ownership on cook scripts"
chown -R root:wheel /usr/local/bin/cook /usr/local/share/cook
chmod 755 /usr/local/share/cook/bin/*
# ----------------- END COOK ------------------
# ---------- NO NEED TO EDIT BELOW ------------
step "Make cook script executable"
if [ -e /usr/local/bin/cook ]
then
echo "setting executable bit on /usr/local/bin/cook" | tee -a $COOKLOG
chmod u+x /usr/local/bin/cook
else
exit_error "there is no /usr/local/bin/cook to make executable"
fi
#
# There are two ways of running a pot jail: "Normal", non-blocking mode and
# "Nomad", i.e. blocking mode (the pot start command does not return until
# the jail is stopped).
# For the normal mode, we create a /usr/local/etc/rc.d script that starts
# the "cook" script generated above each time, for the "Nomad" mode, the cook
# script is started by pot (configuration through flavour file), therefore
# we do not need to do anything here.
#
# Create rc.d script for "normal" mode:
step "Create rc.d script to start cook"
echo "creating rc.d script to start cook" | tee -a $COOKLOG
# shellcheck disable=SC2016
echo '#!/bin/sh
#
# PROVIDE: cook
# REQUIRE: LOGIN
# KEYWORD: shutdown
#
. /etc/rc.subr
name="cook"
rcvar="cook_enable"
load_rc_config $name
: ${cook_enable:="NO"}
: ${cook_env:=""}
command="/usr/local/bin/cook"
command_args=""
run_rc_command "$1"
' > /usr/local/etc/rc.d/cook
step "Make rc.d script to start cook executable"
if [ -e /usr/local/etc/rc.d/cook ]
then
echo "Setting executable bit on cook rc file" | tee -a $COOKLOG
chmod u+x /usr/local/etc/rc.d/cook
else
exit_error "/usr/local/etc/rc.d/cook does not exist"
fi
if [ "$RUNS_IN_NOMAD" != "true" ]
then
step "Enable cook service"
# This is a non-nomad (non-blocking) jail, so we need to make sure the script
# gets started when the jail is started:
# Otherwise, /usr/local/bin/cook will be set as start script by the pot
# flavour
echo "enabling cook" | tee -a $COOKLOG
service cook enable
fi
# -------------------- DONE ---------------
exit_ok
git-nomad/git-nomad+1:
git-nomad/git-nomad+1.sh:
git-nomad/git-nomad+2:
git-nomad/git-nomad+2.sh:
git-nomad/git-nomad+3:
git-nomad/git-nomad+3.sh:
#!/bin/sh
dirs="/usr/share/bsdconfig /usr/share/doc /usr/share/dtrace /usr/share/examples /usr/share/man /usr/share/openssl /usr/share/sendmail /usr/share/pc-sysinstall /usr/libexec/bsdinstall /usr/libexec/bsdconfig /rescue /usr/tests /usr/lib32 /usr/lib/clang /usr/include /var/db/freebsd-update /var/db/etcupdate /boot"
usr_bin="c++ c++filt c89 c99 cc CC cpp clang clang-cpp clang-tblgen clang++ gdb gdbtui gdbserver ld ld.bfd ld.lld lldb llvm-objdump llvm-tblgen nm objcopy objdump strings strip"
usr_bin_glob="svnlite yp"
usr_sbin="dtrace"
usr_sbin_glob="bhyve boot yp"
rm -f /usr/lib/*.a
## Remove pkg stuff
rm -rf /var/db/pkg/*
rm -rf /usr/sbin/pkg
rm -rf /usr/local/sbin/pkg
for d in $dirs ; do
rm -rf "$d"
done
(
cd /usr/bin || exit 1
for f in $usr_bin ; do
rm -f "$f"
done
for g in $usr_bin_glob ; do
rm -rf "$g"*
done
)
(
cd /usr/sbin || exit 1
for g in $usr_sbin_glob ; do
rm -rf "$g"*
done
rm -f $usr_sbin
)
git-nomad/git-nomad+4:
set-cmd -c "/usr/local/bin/cook"
git-nomad/git-nomad+4.sh:
=====> Create conf dir (/mnt/srv/pot/jails/git-nomad-amd64-14_1/conf)
=====> Cloning freebsd-potluck-amd64-14_1_0_0_31 with snap
=====> clone zroot/srv/pot/jails/freebsd-potluck-amd64-14_1_0_0_31/m@1730306249 into zroot/srv/pot/jails/git-nomad-amd64-14_1/m
=====> Flavour: fbsd-update
=====> Starting git-nomad-amd64-14_1 pot for the initial bootstrap
=====> mount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
defaultrouter: 10.192.0.1 -> 10.192.0.1
===> Starting the pot git-nomad-amd64-14_1
=====> Pot git-nomad-amd64-14_1 jail params are: allow.set_hostname=false allow.raw_sockets allow.socket_af allow.chflags exec.clean mount.devfs enforce_statfs=2 sysvshm=new sysvsem=new sysvmsg=new children.max=0 devfs_ruleset=4 stop.timeout=10 name=git-nomad-amd64-14_1 host.hostname=git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net osrelease=14.1-RELEASE-p6 path=/mnt/srv/pot/jails/git-nomad-amd64-14_1/m persist vnet vnet.interface=epair0b
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg
32-bit compatibility ldconfig path: /usr/lib32 /usr/lib32
Starting Network: lo0 epair0b.
lo0: flags=1008049<UP,LOOPBACK,RUNNING,MULTICAST,LOWER_UP> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
groups: lo
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
epair0b: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 02:0d:7a:c2:ba:0b
inet 10.192.0.3 netmask 0xffc00000 broadcast 10.255.255.255
groups: epair
media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add net default: gateway 10.192.0.1
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Clearing /tmp (X related).
Updating /var/run/os-release done.
Creating and/or trimming log files.
Updating motd:.
Starting syslogd.
Starting sendmail_submit.
Starting cron.
Wed Oct 30 20:33:02 UTC 2024
/usr/local/etc/pot/flavours/fbsd-update.sh -> /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp/fbsd-update.sh
=====> Executing fbsd-update script on git-nomad-amd64-14_1
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching public key from update1.freebsd.org... done.
Fetching metadata signature for 14.1-RELEASE from update1.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files... done.
No updates needed to update system to 14.1-RELEASE-p6.
No updates are available to install.
=====> Stop the pot git-nomad-amd64-14_1
=====> Remove p4672297fd3a37 epair network interfaces
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/dev
=====> Flavour: git-nomad
=====> Executing git-nomad pot commands on git-nomad-amd64-14_1
=====> mount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
=====> Source /usr/local/etc/pot/flavours/git-nomad.d/local copied in the pot git-nomad-amd64-14_1
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
=====> /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/dev is already unmounted
=====> Starting git-nomad-amd64-14_1 pot for the initial bootstrap
=====> Setting pot git-nomad-amd64-14_1 temporarily to persistent
=====> mount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
===> Starting the pot git-nomad-amd64-14_1
=====> Pot git-nomad-amd64-14_1 jail params are: allow.set_hostname=false allow.raw_sockets allow.socket_af allow.chflags exec.clean mount.devfs enforce_statfs=2 sysvshm=new sysvsem=new sysvmsg=new children.max=0 devfs_ruleset=4 stop.timeout=10 name=git-nomad-amd64-14_1 host.hostname=git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net osrelease=14.1-RELEASE-p6 path=/mnt/srv/pot/jails/git-nomad-amd64-14_1/m persist vnet vnet.interface=epair0b
add net default: gateway 10.192.0.1
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg
32-bit compatibility ldconfig path: /usr/lib32 /usr/lib32
Starting Network: lo0 epair0b.
lo0: flags=1008049<UP,LOOPBACK,RUNNING,MULTICAST,LOWER_UP> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x6
groups: lo
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
epair0b: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 02:19:9d:22:61:0b
inet 10.192.0.3 netmask 0xffc00000 broadcast 10.255.255.255
groups: epair
media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add net default: gateway 10.192.0.1
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Clearing /tmp (X related).
Updating /var/run/os-release done.
Creating and/or trimming log files.
Updating motd:.
Starting syslogd.
Starting sendmail_submit.
Starting cron.
Wed Oct 30 20:33:36 UTC 2024
/usr/local/etc/pot/flavours/git-nomad.sh -> /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp/git-nomad.sh
=====> Executing git-nomad script on git-nomad-amd64-14_1
WARNING /var/log/cook.log already exists
Step 1: Bootstrap package repo
pkg already bootstrapped at /usr/local/sbin/pkg
Step 2: Touch /etc/rc.conf
Step 3: Remove ifconfig_epair0b from config
Step 4: Disable sendmail
sendmail disabled in /etc/rc.conf
sendmail_submit disabled in /etc/rc.conf
sendmail_msp_queue disabled in /etc/rc.conf
Step 5: Create /usr/local/etc/rc.d
Step 6: Clean freebsd-update
Step 7: Install package nano
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The most recent versions of packages are already installed
Step 8: Install package sudo
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The most recent versions of packages are already installed
Step 9: Install package git
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 26 package(s) will be affected (of 0 checked):
New packages to be INSTALLED:
expat: 2.6.3
git: 2.46.2
libffi: 3.4.6
mpdecimal: 4.0.0
p5-Authen-SASL: 2.17
p5-CGI: 4.66
p5-Clone: 0.47
p5-Digest-HMAC: 1.04
p5-Encode-Locale: 1.05
p5-Error: 0.17029
p5-GSSAPI: 0.28_2
p5-HTML-Parser: 3.83
p5-HTML-Tagset: 3.24
p5-HTTP-Date: 6.06
p5-HTTP-Message: 6.46
p5-IO-HTML: 1.004
p5-IO-Socket-IP: 0.42
p5-IO-Socket-SSL: 2.089
p5-LWP-MediaTypes: 6.04
p5-Mozilla-CA: 20240924
p5-Net-SSLeay: 1.94
p5-TimeDate: 2.33,1
p5-URI: 5.29
pcre2: 10.43
perl5: 5.36.3_2
python311: 3.11.10
Number of packages to be installed: 26
The process will require 311 MiB more space.
52 MiB to be downloaded.
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [1/26] Fetching p5-Net-SSLeay-1.94.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [2/26] Fetching p5-IO-Socket-SSL-2.089.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [3/26] Fetching p5-HTTP-Date-6.06.pkg: .. done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [4/26] Fetching mpdecimal-4.0.0.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [5/26] Fetching p5-GSSAPI-0.28_2.pkg: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [6/26] Fetching p5-IO-Socket-IP-0.42.pkg: ...... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [7/26] Fetching p5-URI-5.29.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [8/26] Fetching p5-CGI-4.66.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [9/26] Fetching p5-Encode-Locale-1.05.pkg: .. done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [10/26] Fetching perl5-5.36.3_2.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [11/26] Fetching p5-HTML-Parser-3.83.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [12/26] Fetching p5-Mozilla-CA-20240924.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [13/26] Fetching p5-LWP-MediaTypes-6.04.pkg: .... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [14/26] Fetching pcre2-10.43.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [15/26] Fetching libffi-3.4.6.pkg: ......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [16/26] Fetching p5-TimeDate-2.33,1.pkg: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [17/26] Fetching p5-IO-HTML-1.004.pkg: ... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [18/26] Fetching p5-Clone-0.47.pkg: .. done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [19/26] Fetching p5-Digest-HMAC-1.04.pkg: .. done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [20/26] Fetching p5-Error-0.17029.pkg: ..... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [21/26] Fetching p5-HTML-Tagset-3.24.pkg: .. done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [22/26] Fetching expat-2.6.3.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [23/26] Fetching p5-HTTP-Message-6.46.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [24/26] Fetching git-2.46.2.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [25/26] Fetching python311-3.11.10.pkg: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [26/26] Fetching p5-Authen-SASL-2.17.pkg: ........ done
Checking integrity... done (0 conflicting)
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [1/26] Installing perl5-5.36.3_2...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [1/26] Extracting perl5-5.36.3_2: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [2/26] Installing p5-TimeDate-2.33,1...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [2/26] Extracting p5-TimeDate-2.33,1: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [3/26] Installing p5-HTTP-Date-6.06...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [3/26] Extracting p5-HTTP-Date-6.06: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [4/26] Installing p5-URI-5.29...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [4/26] Extracting p5-URI-5.29: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [5/26] Installing p5-Encode-Locale-1.05...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [5/26] Extracting p5-Encode-Locale-1.05: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [6/26] Installing p5-LWP-MediaTypes-6.04...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [6/26] Extracting p5-LWP-MediaTypes-6.04: ........ done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [7/26] Installing p5-IO-HTML-1.004...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [7/26] Extracting p5-IO-HTML-1.004: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [8/26] Installing p5-Clone-0.47...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [8/26] Extracting p5-Clone-0.47: ......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [9/26] Installing p5-HTML-Tagset-3.24...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [9/26] Extracting p5-HTML-Tagset-3.24: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [10/26] Installing p5-HTTP-Message-6.46...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [10/26] Extracting p5-HTTP-Message-6.46: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [11/26] Installing p5-Net-SSLeay-1.94...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [11/26] Extracting p5-Net-SSLeay-1.94: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [12/26] Installing mpdecimal-4.0.0...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [12/26] Extracting mpdecimal-4.0.0: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [13/26] Installing p5-GSSAPI-0.28_2...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [13/26] Extracting p5-GSSAPI-0.28_2: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [14/26] Installing p5-IO-Socket-IP-0.42...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [14/26] Extracting p5-IO-Socket-IP-0.42: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [15/26] Installing p5-HTML-Parser-3.83...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [15/26] Extracting p5-HTML-Parser-3.83: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [16/26] Installing p5-Mozilla-CA-20240924...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [16/26] Extracting p5-Mozilla-CA-20240924: ....... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [17/26] Installing libffi-3.4.6...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [17/26] Extracting libffi-3.4.6: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [18/26] Installing p5-Digest-HMAC-1.04...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [18/26] Extracting p5-Digest-HMAC-1.04: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [19/26] Installing p5-IO-Socket-SSL-2.089...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [19/26] Extracting p5-IO-Socket-SSL-2.089: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [20/26] Installing p5-CGI-4.66...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [20/26] Extracting p5-CGI-4.66: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [21/26] Installing pcre2-10.43...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [21/26] Extracting pcre2-10.43: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [22/26] Installing p5-Error-0.17029...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [22/26] Extracting p5-Error-0.17029: ......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [23/26] Installing expat-2.6.3...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [23/26] Extracting expat-2.6.3: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [24/26] Installing python311-3.11.10...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [24/26] Extracting python311-3.11.10: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [25/26] Installing p5-Authen-SASL-2.17...
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [25/26] Extracting p5-Authen-SASL-2.17: .......... done
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [26/26] Installing git-2.46.2...
===> Creating groups
Creating group 'git_daemon' with gid '964'
===> Creating users
Creating user 'git_daemon' with uid '964'
[git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net] [26/26] Extracting git-2.46.2: .......... done
=====
Message from python311-3.11.10:
--
Note that some standard Python modules are provided as separate ports
as they require additional dependencies. They are available as:
py311-gdbm databases/py-gdbm@py311
py311-sqlite3 databases/py-sqlite3@py311
py311-tkinter x11-toolkits/py-tkinter@py311
=====
Message from git-2.46.2:
--
If you installed the GITWEB option please follow these instructions:
In the directory /usr/local/share/examples/git/gitweb you can find all files to
make gitweb work as a public repository on the web.
All you have to do to make gitweb work is:
1) Please be sure you're able to execute CGI scripts in
/usr/local/share/examples/git/gitweb.
2) Set the GITWEB_CONFIG variable in your webserver's config to
/usr/local/etc/git/gitweb.conf. This variable is passed to gitweb.cgi.
3) Restart server.
If you installed the CONTRIB option please note that the scripts are
installed in /usr/local/share/git-core/contrib. Some of them require
other ports to be installed (perl, python, etc), which you may need to
install manually.
Step 10: Clean package installation
The following package files will be deleted:
/var/cache/pkg/p5-IO-HTML-1.004~a539c58029.pkg
/var/cache/pkg/p5-Clone-0.47~cad3f7989e.pkg
/var/cache/pkg/p5-HTML-Parser-3.83~fa3b3b1b61.pkg
/var/cache/pkg/p5-Encode-Locale-1.05.pkg
/var/cache/pkg/p5-Error-0.17029~c923861c02.pkg
/var/cache/pkg/p5-Authen-SASL-2.17~af2afaff37.pkg
/var/cache/pkg/p5-IO-Socket-SSL-2.089.pkg
/var/cache/pkg/p5-URI-5.29~074c5f23fc.pkg
/var/cache/pkg/libffi-3.4.6~fd98d45274.pkg
/var/cache/pkg/p5-HTTP-Date-6.06.pkg
/var/cache/pkg/p5-LWP-MediaTypes-6.04~47b3db9973.pkg
/var/cache/pkg/p5-CGI-4.66~084bb275a0.pkg
/var/cache/pkg/p5-Encode-Locale-1.05~3f7565bf20.pkg
/var/cache/pkg/python311-3.11.10~cb79fb66a1.pkg
/var/cache/pkg/p5-TimeDate-2.33,1~ce190153ac.pkg
/var/cache/pkg/perl5-5.36.3_2.pkg
/var/cache/pkg/pcre2-10.43.pkg
/var/cache/pkg/expat-2.6.3.pkg
/var/cache/pkg/p5-GSSAPI-0.28_2~04e612b6d4.pkg
/var/cache/pkg/p5-Digest-HMAC-1.04~285eeb147e.pkg
/var/cache/pkg/p5-Digest-HMAC-1.04.pkg
/var/cache/pkg/p5-HTML-Tagset-3.24.pkg
/var/cache/pkg/p5-URI-5.29.pkg
/var/cache/pkg/p5-Clone-0.47.pkg
/var/cache/pkg/p5-GSSAPI-0.28_2.pkg
/var/cache/pkg/p5-CGI-4.66.pkg
/var/cache/pkg/p5-LWP-MediaTypes-6.04.pkg
/var/cache/pkg/p5-Mozilla-CA-20240924~0614f537b0.pkg
/var/cache/pkg/expat-2.6.3~2f163c1791.pkg
/var/cache/pkg/p5-Mozilla-CA-20240924.pkg
/var/cache/pkg/p5-HTML-Parser-3.83.pkg
/var/cache/pkg/pcre2-10.43~3eed9a902f.pkg
/var/cache/pkg/p5-Error-0.17029.pkg
/var/cache/pkg/p5-Net-SSLeay-1.94~6b8b88eca3.pkg
/var/cache/pkg/python311-3.11.10.pkg
/var/cache/pkg/p5-HTML-Tagset-3.24~6762d6d688.pkg
/var/cache/pkg/p5-IO-Socket-IP-0.42.pkg
/var/cache/pkg/git-2.46.2.pkg
/var/cache/pkg/p5-Authen-SASL-2.17.pkg
/var/cache/pkg/mpdecimal-4.0.0.pkg
/var/cache/pkg/p5-HTTP-Message-6.46.pkg
/var/cache/pkg/p5-IO-Socket-IP-0.42~56201b14d7.pkg
/var/cache/pkg/p5-HTTP-Message-6.46~64d002c238.pkg
/var/cache/pkg/git-2.46.2~8c3f7a9ce9.pkg
/var/cache/pkg/p5-HTTP-Date-6.06~5143a63acc.pkg
/var/cache/pkg/p5-IO-HTML-1.004.pkg
/var/cache/pkg/p5-Net-SSLeay-1.94.pkg
/var/cache/pkg/libffi-3.4.6.pkg
/var/cache/pkg/perl5-5.36.3_2~ad89108fee.pkg
/var/cache/pkg/p5-TimeDate-2.33,1.pkg
/var/cache/pkg/mpdecimal-4.0.0~bea21de105.pkg
/var/cache/pkg/p5-IO-Socket-SSL-2.089~b07c2d87b0.pkg
The cleanup will free 52 MiB
Deleting files: .......... done
Step 11: Clean cook artifacts
Step 12: Install pot local
Step 13: Set file ownership on cook scripts
Step 14: Make cook script executable
setting executable bit on /usr/local/bin/cook
Step 15: Create rc.d script to start cook
creating rc.d script to start cook
Step 16: Make rc.d script to start cook executable
Setting executable bit on cook rc file
=====> Stop the pot git-nomad-amd64-14_1
=====> Remove p46722981f3a37 epair network interfaces
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/dev
=====> Reverting pot git-nomad-amd64-14_1 to non-persistent
=====> Flavour: git-nomad+1
=====> Executing git-nomad+1 pot commands on git-nomad-amd64-14_1
=====> No shell script available for the flavour git-nomad+1
=====> Flavour: git-nomad+2
=====> Executing git-nomad+2 pot commands on git-nomad-amd64-14_1
=====> No shell script available for the flavour git-nomad+2
=====> Flavour: git-nomad+3
=====> Executing git-nomad+3 pot commands on git-nomad-amd64-14_1
=====> Starting git-nomad-amd64-14_1 pot for the initial bootstrap
=====> Setting pot git-nomad-amd64-14_1 temporarily to persistent
=====> mount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
===> Starting the pot git-nomad-amd64-14_1
=====> Pot git-nomad-amd64-14_1 jail params are: allow.set_hostname=false allow.raw_sockets allow.socket_af allow.chflags exec.clean mount.devfs enforce_statfs=2 sysvshm=new sysvsem=new sysvmsg=new children.max=0 devfs_ruleset=4 stop.timeout=10 name=git-nomad-amd64-14_1 host.hostname=git-nomad-amd64-14_1.vsf00002.cpt.za.honeyguide.net osrelease=14.1-RELEASE-p6 path=/mnt/srv/pot/jails/git-nomad-amd64-14_1/m persist vnet vnet.interface=epair0b
add net default: gateway 10.192.0.1
ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg /usr/local/lib/perl5/5.36/mach/CORE
32-bit compatibility ldconfig path: /usr/lib32 /usr/lib32
Starting Network: lo0 epair0b.
lo0: flags=1008049<UP,LOOPBACK,RUNNING,MULTICAST,LOWER_UP> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet 127.0.0.1 netmask 0xff000000
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7
groups: lo
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
epair0b: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
options=8<VLAN_MTU>
ether 02:34:ad:9c:88:0b
inet 10.192.0.3 netmask 0xffc00000 broadcast 10.255.255.255
groups: epair
media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
status: active
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
add host 127.0.0.1: gateway lo0 fib 0: route already in table
add net default: gateway 10.192.0.1 fib 0: route already in table
add host ::1: gateway lo0 fib 0: route already in table
add net fe80::: gateway ::1
add net ff02::: gateway ::1
add net ::ffff:0.0.0.0: gateway ::1
add net ::0.0.0.0: gateway ::1
Clearing /tmp (X related).
Creating and/or trimming log files.
Updating motd:.
Updating /var/run/os-release done.
Starting syslogd.
Starting sendmail_outbound.
Starting cron.
Wed Oct 30 20:34:01 UTC 2024
/usr/local/etc/pot/flavours/git-nomad+3.sh -> /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp/git-nomad+3.sh
=====> Executing git-nomad+3 script on git-nomad-amd64-14_1
=====> Stop the pot git-nomad-amd64-14_1
=====> Remove p4672298393a37 epair network interfaces
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/tmp
=====> unmount /mnt/srv/pot/jails/git-nomad-amd64-14_1/m/dev
=====> Reverting pot git-nomad-amd64-14_1 to non-persistent
=====> Flavour: git-nomad+4
=====> Executing git-nomad+4 pot commands on git-nomad-amd64-14_1
=====> No shell script available for the flavour git-nomad+4
===> exporting git-nomad-amd64-14_1 @ 1730320444 to /tmp/git-nomad-amd64-14_1_1.20.1.xz