aboutsummaryrefslogtreecommitdiff
path: root/src/property
Commit message (Collapse)AuthorAge
...
* add LXC properties, :LXC{,-UNPRIV-ATTACH} connections, WITH-HOMEDIRSean Whitton2021-11-08
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add CAPABILITY-P and grovel for some Linux capability constantsSean Whitton2021-11-04
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* :SETUID: pass target uid to POSIX-LOGIN-ENVIRONMENT for correct PATHSean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* rename FIREWALLD:ZONE-DIRECT-RULE -> FIREWALLD:DIRECT-RULESean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add APT:BACKPORTS-INSTALLED{,-MINIMALLY}Sean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* FIREWALLD:ZONE: note idea to use hostattrs to gather zone settingsSean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* FIREWALLD:HAS-ZONE: reload after adding zoneSean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add SYSTEMD:{DAEMON-RELOADED,RELOADED,RESTARTED}Sean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* firewall-cmd: --reload less often & respect SERVICE:NO-SERVICES-PSean Whitton2021-11-01
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SYSTEMD:LINGERING-ENABLED :CHECK: handle non-zero exit from loginctlSean Whitton2021-10-29
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* CONSFIGURATOR.PROPERTY.SYSTEMD: respect :NO-SERVICES connattrSean Whitton2021-10-29
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add & propagate :NO-SERVICES connattr and respect in LIBVIRT:STARTEDSean Whitton2021-10-29
| | | | | | | | | | | | | | | | | This change was prompted by the realisation that RECONNECTS nullifies any enclosing SERVICE:WITHOUT-STARTING-SERVICES because *HOST* during RECONNECTS is a distinct HOST value, computed at hostattrs time, which can't be affected by an enclosing combinator that works by temporarily pushing hostattrs at :APPLY time. So, for example, if we chroot and subsequently establish a :SETUID connection, properties might try to start services as the non-root user and there is no way for them to know they shouldn't. We can avoid this problem by using a connattr instead because we have a mechanism for propagating connattrs to subsequently established connections. And as in most cases the reason for not starting services is solely due to the way in which we're connecting to the host, a connattr is more appropriate. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* basic systemctl(1) properties: add USER argument for --userSean Whitton2021-10-28
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* IMAGE-DUMPED: also abort if shlibs not readableSean Whitton2021-10-28
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* IMAGE-DUMPED: support skipping when same build of SBCL unavailableSean Whitton2021-10-28
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* LIBVIRT:KVM-BOOTS-CHROOT-FOR: ADDITIONAL-PROPERTIES usage exampleSean Whitton2021-10-23
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* rename :XDG-CACHE-HOME connattr to :XDG_CACHE_HOMESean Whitton2021-10-23
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* replace some functions with a new :CONSFIGURATOR-CACHE connattrSean Whitton2021-10-23
| | | | | | This simplifies the API. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add wrappers of some system functions to manipulate POSIX.1e ACLsSean Whitton2021-10-23
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* install system deps by searching for package managers on PATHSean Whitton2021-10-23
| | | | | | | | | | | | | | | | With this change we handle the situation in which we don't know the OS of a host on which we need to install system packages more cleanly than before. Also rely on the new PACKAGE:INSTALLED to install the OS bootstrapper in INSTALLER:CLEANLY-INSTALLED-ONCE. This allows us to simplify usage of the property by replacing the ORIGINAL-OS argument with ORIGINAL-OS-ARCHITECTURE. Making this change does mean that we now have two ways to specify the different names a package has on different OSs: (i) something like OS:ETYPECASE where each branch applies a property which invokes an OS-specific package manager; and (ii) the plists supplied to PACKAGE:INSTALLED. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* factor out REMOTE-EXECUTABLE-FINDSean Whitton2021-10-23
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* USER:{HAS-ACCOUNT-WITH-UID,%HAS-UID-GID}: tweak docstringsSean Whitton2021-09-29
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add USER:HAS-LOCKED-PASSWORDDavid Bremner2021-09-29
| | | | | | | This is useful when access is provided by other means (e.g. ssh keypairs) or as part of locking a user out completely. Signed-off-by: David Bremner <david@tethera.net>
* add USER:HAS-ACCOUNT-WITH-UIDDavid Bremner2021-09-29
| | | | | | | | | | | | The anticipated use case is where both uid and gid are to be set; making GID an optional keyword argument just allows a shorthand for the case of matching gid and uid. The limitation to a Debian-like OS is because of the assumption of a primary group per user. Refactor PASSWD-ENTRY to support a new function GROUP-ENTRY that does the same thing, but with the group database instead of the passwd database. Signed-off-by: David Bremner <david@tethera.net>
* add SYSTEMD:LINGERING-ENABLEDSean Whitton2021-09-18
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add FILE:LACKS-LINES-MATCHINGSean Whitton2021-09-12
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SBUILD:BUILT: add periodically rebuilding the schroot to exampleSean Whitton2021-09-12
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add dep on Anaphora and use APROG1, ALET & AAND in various placesSean Whitton2021-09-08
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* cache XDG_CACHE_HOME as a connattrSean Whitton2021-08-31
| | | | | | This should provide a performance improvement. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* rework PUSHNEW-HOSTATTRS to use EQUAL not EQL & add PUSHNEW-HOSTATTRSean Whitton2021-08-31
| | | | | | | | | | | | | | | Previously, PUSHNEW-HOSTATTRS always used EQL to determine whether a hostattr was already pushed, which would give the wrong answer for many common cases. Now default to using EQUAL, and provide a way for the caller to specify the test function. PUSHNEW-HOSTATTRS now takes a list of hostattrs as a single parameter, rather than using &REST, in order to make room for the new :TEST keyword parameter. To mitigate the inconvenience of no longer using &REST, add PUSHNEW-HOSTATTR. Also fix some parameter and function names in docstrings. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* LIBVIRT:KVM-BOOTS-CHROOT-FOR: on DEBIANLIKE, install initramfs-toolsSean Whitton2021-08-22
| | | | | | | Avoids the subsequent attempt to edit /etc/initramfs-tools/modules failing simply because the directory /etc/initramfs-tools does not exist. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* MOUNT:UNMOUNTED-BELOW-AND-REMOVED: don't unmount DIR itselfSean Whitton2021-08-22
| | | | | | | | | | | If DIR is itself a mount point then previously we would never delete its contents because the unmounting is done first. This meant that when MOUNT:UNMOUNTED-BELOW-AND-REMOVED was used to remove the root filesystem of a container or virtual machine, for example, then whether the contents of the root filesystem was actually deleted depended upon whether DIR happened to be a mount point. This change ensures that the deletion is always done. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* MOUNT:UNMOUNTED-BELOW: add :AND-AT argumentSean Whitton2021-08-22
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* make LIBVIRT:KVM-BOOTS-CHROOT{,-FOR} unapplicableSean Whitton2021-08-22
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SSHD:NO-PASSWORDS: update configuration value for PermitRootLoginSean Whitton2021-08-16
| | | | | | "without-password" is a deprecated alias for "prohibit-password". Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* call STRING-UPCASE when converting keywords to environment variablesSean Whitton2021-07-24
| | | | | | | In case the keyword was read with the reader configured not to upcase the names of symbols. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* POSTFIX:MAPPED-FILE: block capitalise parameter name in docstringSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* fix comments about -c argument to su(1)Sean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* INSTALLER:CLEANLY-INSTALLED-ONCE: reset some connattrsSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add CRON:USER-CRONTABSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* add IMAGE-DUMPED and CRON:RUNS-CONSFIGURATORSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* CHROOT:DEPLOYS-THESE: accept a string for HOST parameterSean Whitton2021-07-24
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* UNWIND-PROTECT-IN-PARENT -> UNWIND-PROTECTSean Whitton2021-07-24
| | | | | | No longer needed thanks to f4e9170e73cb4bcfa7328422b4ff4f72d1339dd0. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SBUILD:BUILT: default to the buildd debootstrap variantSean Whitton2021-07-16
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* firewalld rich rules: fix escapingSean Whitton2021-07-16
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SSH:HAS-USER-KEY: fix application of FILE:SECRET-UPLOADEDSean Whitton2021-07-16
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* SSH:HAS-USER-KEY: require specification of destination pathSean Whitton2021-07-16
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* FILE:HOST-DATA-UPLOADED: use DEFPROPLISTSean Whitton2021-07-15
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* GIT:SNAPSHOT-EXTRACTED: when root, don't preserve file ownershipSean Whitton2021-07-13
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
* APT:RECONFIGURED: pass a string not a list as command inputSean Whitton2021-07-13
| | | | Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>