Skip to content

Pantavisor Configuration

Note

This reference page presents the newly unified configuration key syntax. To get to the deprecated but still supported previous format, you will have to go here.

Summary

Note

The key syntax is the same for all configuration levels.

Note

All keys are case insensitive.

This table contains the currently supported list of configuration keys.

Key Value Default Description
PH_CREDS_HOST IP or hostname 192.168.53.1 set Pantacor Hub address
PH_CREDS_ID string empty set Pantacor Hub device ID
PH_CREDS_PORT port 12365 set port for communication with Pantacor Hub
PH_CREDS_PROXY_HOST IP or hostname empty set Pantacor Hub proxy address
PH_CREDS_PROXY_NOPROXYCONNECT 0 or 1 0 disable proxy communication with Pantacor Hub
PH_CREDS_PROXY_PORT port 3218 set port for proxy communication with Pantacor Hub
PH_CREDS_PRN string empty set Pantacor Hub device PRN
PH_CREDS_SECRET string empty set Pantacor Hub credentials secret
PH_CREDS_TYPE builtin builtin set Pantacor Hub credentials type
PH_FACTORY_AUTOTOK token empty set factory auto token for communication with Pantacor Hub
PH_METADATA_DEVMETA_INTERVAL time (in seconds) 10 set push interval for device metadata to Pantacor Hub
PH_METADATA_USRMETA_INTERVAL time (in seconds) 10 set refresh interval for user metadata from Pantacor Hub
PH_UPDATER_INTERVAL time (in seconds) 60 set time between Pantacor Hub update requests
PH_UPDATER_NETWORK_TIMEOUT time (in seconds) 120 set time before rollback if device cannot communicate with Pantacor Hub
PV_BOOTLOADER_FITCONFIG string empty set FIT configuration name
PV_BOOTLOADER_MTD_ENV string empty set MTD name for bootloader env
PV_BOOTLOADER_MTD_ONLY 0 or 1 0 enable MTD for bootloader env
PV_BOOTLOADER_TYPE uboot, uboot-pvk, grub or rpiab uboot set bootloader type
PV_CACHE_DEVMETADIR path /storage/cache/devmeta set persistent device metadata dir
PV_CACHE_USRMETADIR path /storage/cache/meta set persistent user metadata dir
PV_CONTROL_REMOTE 0 or 1 1 enable communication with Pantacor Hub
PV_CONTROL_REMOTE_ALWAYS 0 or 1 0 keep communication with Pantacor Hub even when a local revision is running
PV_DEBUG_SHELL 0 or 1 1 enable debug shell console
PV_DEBUG_SHELL_AUTOLOGIN 0 or 1 0 always prompt debug shell console without having to press any key
PV_DEBUG_SSH 0 or 1 1 enable debug ssh server
PV_DEBUG_SSH_AUTHORIZED_KEYS string empty set name of the [debug ssh server]((inspect-device.md#ssh) public key file
PV_DISK_EXPORTSDIR path /exports set exports directory
PV_DISK_VOLDIR path /volumes set volumes directory
PV_DISK_WRITABLEDIR path /writable set writable directory
PV_DROPBEAR_CACHE_DIR path /storage/cache/dropbear set debug ssh server cache directory
PV_LIBTHTTP_CERTSDIR path /certs set certificates directory for libthttp
PV_LIBTHTTP_LOG_LEVEL 0 (FATAL), 1 (ERROR), 2 (WARN), 3 (INFO), 4 (DEBUG) or 5 (ALL) 3 set libthttp log verbosity level
PV_LOG_CAPTURE 0 or 1 1 activate Log Server
PV_LOG_CAPTURE_DMESG 0 or 1 0 pump dmesg into Log Server
PV_LOG_BUF_NITEMS size (in KB) 128 set in-memory logs buffer size
PV_LOG_DIR path /storage/logs/ set logs directory
PV_LOG_FILETREE_TIMESTAMP_FORMAT golang:constant or strftime:format empty set timestamp format for filetree Log Server output
PV_LOG_LEVEL 0 (FATAL), 1 (ERROR), 2 (WARN), 3 (INFO), 4 (DEBUG) or 5 (ALL) 0 set Log Server verbosity level
PV_LOG_LOGGERS 0 or 1 1 enable container loggers
PV_LOG_MAXSIZE size (in B) 2097152 (2 MB) set max size of a Log Server stored log file before compression
PV_LOG_PUSH 0 or 1 1 enable pushing stored logs into Pantacor Hub
PV_LOG_SERVER_OUTPUTS comma-sepated list of: filetree, nullsink, singlefile, stdout, stdout_direct, stdout.containers and/or stdout.pantavisor filetree set output format of Log Server
PV_LOG_SINGLEFILE_TIMESTAMP_FORMAT golang:constant or strftime:format empty set timestamp format for singlefile Log Server output
PV_LOG_STDOUT_TIMESTAMP_FORMAT golang:constant or strftime:format empty set timestamp format for stdout Log Server output
PV_LXC_LOG_LEVEL 0 (TRACE), 1 (DEBUG), 2 (INFO), 3 (NOTICE), 4 (WARN), 5 (ERROR), 6 (CRITICAL), 7 (ALERT) or 8 (FATAL) 2 set lxc library log verbosity level
PV_NET_BRADDRESS4 IP or hostname 10.0.3.1 set container network bridge address
PV_NET_BRDEV string lxcbr0 set container network bridge name
PV_NET_BRMASK4 IP or hostname 255.255.255.0 set container bridge mask address
PV_OEM_NAME string empty set OEM configuration file path and the expected subject CN name for the OEM root certificate validation
PV_POLICY string without / character empty set configuration policy and OEM file name
PV_REVISION_RETRIES number of retries 10 set number of updates retries before rollback
PV_SECUREBOOT_CHECKSUM 0 or 1 1 enable artifact checksum validation
PV_SECUREBOOT_HANDLERS 0 or 1 1 enable the use of script handlers for checksum validation
PV_SECUREBOOT_MODE disabled, audit, lenient or strict lenient set secureboot severity level
PV_SECUREBOOT_OEM_TRUSTORE string ca-oem-certificates set OEM trustore name to be used by secureboot
PV_SECUREBOOT_TRUSTSTORE string ca-certificates set default truststore name to used by secureboot
PV_STORAGE_DEVICE LABEL=XXXX, UUID=XXXX or string N/A (mandatory) set storage device with a partition label, UUID or /dev name
PV_STORAGE_FSTYPE ext4, ubifs or jffs2 N/A (mandatory) set storage file system type
PV_STORAGE_GC_KEEP_FACTORY 0 or 1 0 avoid deletion of revision 0 artifacts by the garbage collector
PV_STORAGE_GC_RESERVED percentage 5 the garbage collector will try to always keep this percentage of disk free
PV_STORAGE_GC_THRESHOLD_DEFERTIME time (in seconds) 600 time the garbage collector threshold will be deferred after a new object has been put from the control socket objects endpoint
PV_STORAGE_GC_THRESHOLD percentage 0 the garbage collector will be triggered if there is less than this percentage of disk free
PV_STORAGE_LOGTEMPSIZE size (with k, m g or % suffix) empty set logs to be stored on memory
PV_STORAGE_MNTPOINT path N/A (mandatory) set storage mount point
PV_STORAGE_MNTTYPE ext4 empty set storage mount point file system
PV_STORAGE_WAIT time (in seconds) 5 set wait time for storage device to be available
PV_SYSCTL_KERNEL_CORE_PATTERN core pattern string|/lib/pv/pvcrash --skip set sysctl kernel core_pattern
PV_SYSCTL_* sysctl.conf format N/A (mandatory) set sysctl /proc/sys hierarchy
PV_SYSTEM_APPARMOR_PROFILES comma-separated list of AppArmor profile names empty list of AppArmor profiles to be loaded during device initialisation
PV_SYSTEM_CONFDIR path /configs set config directory
PV_SYSTEM_DRIVERS_LOAD_EARLY_AUTO 0 or 1 0 load all drivers automatically during device initialisation
PV_SYSTEM_ETCDIR path /etc set etc directory
PV_SYSTEM_INIT_MODE embedded, standalone or appengine embedded set init mode
PV_SYSTEM_LIBDIR path /lib set lib directory
PV_SYSTEM_MEDIADIR path /media set media directory
PV_SYSTEM_MOUNT_SECURITYFS 0 or 1 0 mount /sys/kernel/security during device initialisation
PV_SYSTEM_RUNDIR path /pv set run directory
PV_SYSTEM_USRDIR path /usr set urs directory
PV_UPDATER_COMMIT_DELAY time (in seconds) 25 set testing time after an update
PV_UPDATER_GOALS_TIMEOUT time (in seconds) 120 set time to wait for a container to reach its status goal
PV_UPDATER_USE_TMP_OBJECTS 0 or 1 0 download objects in an on-disk temporary location. If disabled, objects will be stored in memory while downloading
PV_WDT_MODE disabled, shutdown, startup or always shutdown set watchdog mode
PV_WDT_TIMEOUT time (in seconds) 15 set watchdog timeout

Levels

This table shows the configuration levels that are allowed for each configuration key.

Key pv.conf ph.conf env Policy OEM User meta Command
PH_CREDS_HOST
PH_CREDS_ID
PH_CREDS_PORT
PH_CREDS_PROXY_HOST
PH_CREDS_PROXY_NOPROXYCONNECT
PH_CREDS_PROXY_PORT
PH_CREDS_PRN
PH_CREDS_SECRET
PH_CREDS_TYPE
PH_FACTORY_AUTOTOK
PH_METADATA_DEVMETA_INTERVAL
PH_METADATA_USRMETA_INTERVAL
PH_UPDATER_INTERVAL
PH_UPDATER_NETWORK_TIMEOUT
PV_BOOTLOADER_FITCONFIG
PV_BOOTLOADER_MTD_ENV
PV_BOOTLOADER_MTD_ONLY
PV_BOOTLOADER_TYPE
PV_CACHE_DEVMETADIR
PV_CACHE_USRMETADIR
PV_CONTROL_REMOTE
PV_CONTROL_REMOTE_ALWAYS
PV_DEBUG_SHELL
PV_DEBUG_SHELL_AUTOLOGIN
PV_DEBUG_SSH
PV_DEBUG_SSH_AUTHORIZED_KEYS
PV_DISK_EXPORTSDIR
PV_DISK_VOLDIR
PV_DISK_WRITABLEDIR
PV_DROPBEAR_CACHE_DIR
PV_LIBTHTTP_CERTSDIR
PV_LIBTHTTP_LOG_LEVEL
PV_LOG_CAPTURE
PV_LOG_CAPTURE_DMESG
PV_LOG_BUF_NITEMS
PV_LOG_DIR
PV_LOG_FILETREE_TIMESTAMP_FORMAT
PV_LOG_LEVEL
PV_LOG_LOGGERS
PV_LOG_MAXSIZE
PV_LOG_PUSH
PV_LOG_SERVER_OUTPUTS
PV_LOG_SINGLEFILE_TIMESTAMP_FORMAT
PV_LOG_STDOUT_TIMESTAMP_FORMAT
PV_LXC_LOG_LEVEL
PV_NET_BRADDRESS4
PV_NET_BRDEV
PV_NET_BRMASK4
PV_OEM_NAME
PV_POLICY
PV_REVISION_RETRIES
PV_SECUREBOOT_CHECKSUM
PV_SECUREBOOT_HANDLERS
PV_SECUREBOOT_MODE
PV_SECUREBOOT_TRUSTSTORE
PV_STORAGE_DEVICE
PV_STORAGE_FSTYPE
PV_STORAGE_GC_KEEP_FACTORY
PV_STORAGE_GC_RESERVED
PV_STORAGE_GC_THRESHOLD_DEFERTIME
PV_STORAGE_GC_THRESHOLD
PV_STORAGE_LOGTEMPSIZE
PV_STORAGE_MNTPOINT
PV_STORAGE_MNTTYPE
PV_STORAGE_WAIT
PV_SYSTEM_APPARMOR_PROFILES
PV_SYSTEM_CONFDIR
PV_SYSTEM_DRIVERS_LOAD_EARLY_AUTO
PV_SYSTEM_ETCDIR
PV_SYSTEM_INIT_MODE
PV_SYSTEM_LIBDIR
PV_SYSTEM_MEDIADIR
PV_SYSTEM_MOUNT_SECURITYFS
PV_SYSTEM_RUNDIR
PV_SYSTEM_USRDIR
PV_UPDATER_COMMIT_DELAY
PV_UPDATER_GOALS_TIMEOUT
PV_UPDATER_USE_TMP_OBJECTS
PV_WDT_MODE
PV_WDT_TIMEOUT